[Akonadi] [Bug 337040] New: setting lower_case_table_names=1 in /etc/my.cnf prevents akonadi server from starting

Liviu Vasut liviu_vasut at yahoo.com
Fri Jul 4 13:28:57 BST 2014


https://bugs.kde.org/show_bug.cgi?id=337040

            Bug ID: 337040
           Summary: setting lower_case_table_names=1 in /etc/my.cnf
                    prevents akonadi server from starting
    Classification: Unclassified
           Product: Akonadi
           Version: 1.12.1
          Platform: Fedora RPMs
                OS: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: server
          Assignee: kdepim-bugs at kde.org
          Reporter: liviu_vasut at yahoo.com

akonadi won't start when lower_case_table_names is set to 1 in /etc/my.cnf,
using mysql as database storage driver (see below akonadi self test report and
my.cnf content)

Reproducible: Always

Steps to Reproduce:
1. make sure lower_case_table_names is set to 0 in /etc/my.cnf (or missing)
2. set database driver as mysql in Akonadi Configuration
3. do not check "use internal mysql server"
4. configure connection settings
5. start akonadi => akonadi is started OK
6. stop akonadi
7. set lower_case_table_names to 1 in /etc/my.cnf
8. restart mysqld
9. start akonadi => akonadi won't start
Actual Results:  
akonadi does not start

Expected Results:  
akonadi should start normaly

Content of akonadi self test:

Akonadi Server Self-Test Report
===============================

Test 1:  SUCCESS
--------

Database driver found.
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server
configuration and was found on your system.

File content of '/home/li/.config/akonadi/akonadiserverrc':
[%General]
Driver=QMYSQL

[QSQLITE3]
Name=/home/li/.local/share/akonadi/akonadi.db

[Debug]
Tracer=null

[QMYSQL]
StartServer=false
ServerPath=/usr/libexec/mysqld
Name=akonadi
Host=localhost
User=myuser
Password=mypass
Options=

[QPSQL]
StartServer=true
Name=akonadi
Host=
User=
Password=
Port=5432

[SQLITE]
Name=akonadi


Test 2:  SUCCESS
--------

Akonadi is not running as root
Details: Akonadi is not running as a root/administrator user, which is the
recommended setup for a secure system.

Test 3:  SKIP
--------

MySQL server executable not tested.
Details: The current configuration does not require an internal MySQL server.

Test 4:  SKIP
--------

MySQL server error log not tested.
Details: The current configuration does not require an internal MySQL server.

Test 5:  SKIP
--------

MySQL server configuration not tested.
Details: The current configuration does not require an internal MySQL server.

Test 6:  SUCCESS
--------

akonadictl found and usable
Details: The program '/usr/bin/akonadictl' to control the Akonadi server was
found and could be executed successfully.
Result:
Akonadi 1.12.1


Test 7:  ERROR
--------

Akonadi control process not registered at D-Bus.
Details: The Akonadi control process is not registered at D-Bus which typically
means it was not started or encountered a fatal error during startup.

Test 8:  ERROR
--------

Akonadi server process not registered at D-Bus.
Details: The Akonadi server process is not registered at D-Bus which typically
means it was not started or encountered a fatal error during startup.

Test 9:  ERROR
--------

Nepomuk search service not registered at D-Bus.
Details: The Nepomuk search service is not registered at D-Bus which typically
means it was not started or encountered a fatal error during startup.

Test 10:  SKIP
--------

Protocol version check not possible.
Details: Without a connection to the server it is not possible to check if the
protocol version meets the requirements.

Test 11:  SUCCESS
--------

Resource agents found.
Details: At least one resource agent has been found.

Directory listing of '/usr/share/akonadi/agents':
akonadinepomukfeederagent.desktop
akonotesresource.desktop
archivemailagent.desktop
birthdaysresource.desktop
contactsresource.desktop
davgroupwareresource.desktop
facebookresource.desktop
folderarchiveagent.desktop
googlecalendarresource.desktop
googlecontactsresource.desktop
icaldirresource.desktop
icalresource.desktop
imapresource.desktop
invitationsagent.desktop
kabcresource.desktop
kalarmdirresource.desktop
kalarmresource.desktop
kcalresource.desktop
kdeaccountsresource.desktop
kolabproxyresource.desktop
localbookmarksresource.desktop
maildirresource.desktop
maildispatcheragent.desktop
mailfilteragent.desktop
mboxresource.desktop
microblog.desktop
migrationagent.desktop
mixedmaildirresource.desktop
mtdummyresource.desktop
nepomuktagresource.desktop
newmailnotifieragent.desktop
nntpresource.desktop
notesresource.desktop
openxchangeresource.desktop
pop3resource.desktop
sendlateragent.desktop
vcarddirresource.desktop
vcardresource.desktop

Environment variable XDG_DATA_DIRS is set to
'/usr/share/kde-settings/kde-profile/default/share:/usr/local/share:/usr/share'

Test 12:  ERROR
--------

Current Akonadi server error log found.
Details: The Akonadi server reported errors during its current startup. The log
can be found in <a
href='/home/li/.local/share/akonadi/akonadiserver.error'>/home/li/.local/share/akonadi/akonadiserver.error</a>.

File content of '/home/li/.local/share/akonadi/akonadiserver.error':
"
Sql error: Can't write; duplicate key in table 'collectiontable' QMYSQL: Unable
to execute query
Query: CREATE TABLE CollectionTable (id BIGINT NOT NULL AUTO_INCREMENT PRIMARY
KEY, remoteId VARBINARY(255), remoteRevision VARBINARY(255), name
VARBINARY(255) NOT NULL, parentId BIGINT, resourceId BIGINT NOT NULL,
subscribed BOOL NOT NULL DEFAULT true, cachePolicyInherit BOOL NOT NULL DEFAULT
true, cachePolicyCheckInterval INTEGER NOT NULL DEFAULT -1,
cachePolicyCacheTimeout INTEGER NOT NULL DEFAULT -1, cachePolicySyncOnDemand
BOOL NOT NULL DEFAULT false, cachePolicyLocalParts VARBINARY(255), queryString
VARBINARY(32768), queryAttributes VARBINARY(255), queryCollections
VARBINARY(255), isVirtual BOOL DEFAULT false, FOREIGN KEY (parentId) REFERENCES
CollectionTable(id) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY
(resourceId) REFERENCES ResourceTable(id) ON UPDATE CASCADE ON DELETE CASCADE) 
COLLATE=utf8_general_ci DEFAULT CHARSET=utf8" 
Unable to initialize database. 
"[
0: akonadiserver(_Z11akBacktracev+0x4a) [0x465bea]
1: akonadiserver() [0x465e62]
2: /lib64/libc.so.6() [0x320c835cb0]
3: /lib64/libc.so.6(gsignal+0x39) [0x320c835c39]
4: /lib64/libc.so.6(abort+0x148) [0x320c837348]
5: /lib64/libQtCore.so.4(_Z17qt_message_output9QtMsgTypePKc+0x84)
[0x3636c71d04]
6: akonadiserver(_ZN15FileDebugStream9writeDataEPKcx+0xad) [0x467cad]
7: /lib64/libQtCore.so.4(_ZN9QIODevice5writeEPKcx+0xb0) [0x3636d10fb0]
8: /lib64/libQtCore.so.4() [0x3636d20c85]
9: /lib64/libQtCore.so.4(_ZN11QTextStreamD1Ev+0x31) [0x3636d29e51]
10: akonadiserver(_ZN7Akonadi6Server13AkonadiServer4initEv+0x5fb) [0x46b66b]
11: /lib64/libQtCore.so.4(_ZN7QObject5eventEP6QEvent+0x26e) [0x3636d9febe]
12:
/lib64/libQtCore.so.4(_ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x8d)
[0x3636d86ebd]
13:
/lib64/libQtCore.so.4(_ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData+0x205)
[0x3636d8a0d5]
14: /lib64/libQtCore.so.4() [0x3636db62de]
15: /lib64/libglib-2.0.so.0(g_main_context_dispatch+0x166) [0x320e4492a6]
16: /lib64/libglib-2.0.so.0() [0x320e449628]
17: /lib64/libglib-2.0.so.0(g_main_context_iteration+0x2c) [0x320e4496dc]
18:
/lib64/libQtCore.so.4(_ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x7e)
[0x3636db5a5e]
19:
/lib64/libQtCore.so.4(_ZN10QEventLoop13processEventsE6QFlagsINS_17ProcessEventsFlagEE+0x3f)
[0x3636d8595f]
20:
/lib64/libQtCore.so.4(_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0x19d)
[0x3636d85cad]
21: /lib64/libQtCore.so.4(_ZN16QCoreApplication4execEv+0x99) [0x3636d8b399]
22: akonadiserver(main+0x263) [0x460063]
23: /lib64/libc.so.6(__libc_start_main+0xf5) [0x320c821d65]
24: akonadiserver() [0x4609d9]
]
" 


Test 13:  ERROR
--------

Previous Akonadi server error log found.
Details: The Akonadi server reported errors during its previous startup. The
log can be found in <a
href='/home/li/.local/share/akonadi/akonadiserver.error.old'>/home/li/.local/share/akonadi/akonadiserver.error.old</a>.

File content of '/home/li/.local/share/akonadi/akonadiserver.error.old':
"
Sql error: Can't write; duplicate key in table 'collectiontable' QMYSQL: Unable
to execute query
Query: CREATE TABLE CollectionTable (id BIGINT NOT NULL AUTO_INCREMENT PRIMARY
KEY, remoteId VARBINARY(255), remoteRevision VARBINARY(255), name
VARBINARY(255) NOT NULL, parentId BIGINT, resourceId BIGINT NOT NULL,
subscribed BOOL NOT NULL DEFAULT true, cachePolicyInherit BOOL NOT NULL DEFAULT
true, cachePolicyCheckInterval INTEGER NOT NULL DEFAULT -1,
cachePolicyCacheTimeout INTEGER NOT NULL DEFAULT -1, cachePolicySyncOnDemand
BOOL NOT NULL DEFAULT false, cachePolicyLocalParts VARBINARY(255), queryString
VARBINARY(32768), queryAttributes VARBINARY(255), queryCollections
VARBINARY(255), isVirtual BOOL DEFAULT false, FOREIGN KEY (parentId) REFERENCES
CollectionTable(id) ON UPDATE CASCADE ON DELETE CASCADE, FOREIGN KEY
(resourceId) REFERENCES ResourceTable(id) ON UPDATE CASCADE ON DELETE CASCADE) 
COLLATE=utf8_general_ci DEFAULT CHARSET=utf8" 
Unable to initialize database. 
"[
0: akonadiserver(_Z11akBacktracev+0x4a) [0x465bea]
1: akonadiserver() [0x465e62]
2: /lib64/libc.so.6() [0x320c835cb0]
3: /lib64/libc.so.6(gsignal+0x39) [0x320c835c39]
4: /lib64/libc.so.6(abort+0x148) [0x320c837348]
5: /lib64/libQtCore.so.4(_Z17qt_message_output9QtMsgTypePKc+0x84)
[0x3636c71d04]
6: akonadiserver(_ZN15FileDebugStream9writeDataEPKcx+0xad) [0x467cad]
7: /lib64/libQtCore.so.4(_ZN9QIODevice5writeEPKcx+0xb0) [0x3636d10fb0]
8: /lib64/libQtCore.so.4() [0x3636d20c85]
9: /lib64/libQtCore.so.4(_ZN11QTextStreamD1Ev+0x31) [0x3636d29e51]
10: akonadiserver(_ZN7Akonadi6Server13AkonadiServer4initEv+0x5fb) [0x46b66b]
11: /lib64/libQtCore.so.4(_ZN7QObject5eventEP6QEvent+0x26e) [0x3636d9febe]
12:
/lib64/libQtCore.so.4(_ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x8d)
[0x3636d86ebd]
13:
/lib64/libQtCore.so.4(_ZN23QCoreApplicationPrivate16sendPostedEventsEP7QObjectiP11QThreadData+0x205)
[0x3636d8a0d5]
14: /lib64/libQtCore.so.4() [0x3636db62de]
15: /lib64/libglib-2.0.so.0(g_main_context_dispatch+0x166) [0x320e4492a6]
16: /lib64/libglib-2.0.so.0() [0x320e449628]
17: /lib64/libglib-2.0.so.0(g_main_context_iteration+0x2c) [0x320e4496dc]
18:
/lib64/libQtCore.so.4(_ZN20QEventDispatcherGlib13processEventsE6QFlagsIN10QEventLoop17ProcessEventsFlagEE+0x7e)
[0x3636db5a5e]
19:
/lib64/libQtCore.so.4(_ZN10QEventLoop13processEventsE6QFlagsINS_17ProcessEventsFlagEE+0x3f)
[0x3636d8595f]
20:
/lib64/libQtCore.so.4(_ZN10QEventLoop4execE6QFlagsINS_17ProcessEventsFlagEE+0x19d)
[0x3636d85cad]
21: /lib64/libQtCore.so.4(_ZN16QCoreApplication4execEv+0x99) [0x3636d8b399]
22: akonadiserver(main+0x263) [0x460063]
23: /lib64/libc.so.6(__libc_start_main+0xf5) [0x320c821d65]
24: akonadiserver() [0x4609d9]
]
" 


Test 14:  SUCCESS
--------

No current Akonadi control error log found.
Details: The Akonadi control process did not report any errors during its
current startup.

Test 15:  ERROR
--------

Previous Akonadi control error log found.
Details: The Akonadi control process reported errors during its previous
startup. The log can be found in <a
href='/home/li/.local/share/akonadi/akonadi_control.error.old'>/home/li/.local/share/akonadi/akonadi_control.error.old</a>.

File content of '/home/li/.local/share/akonadi/akonadi_control.error.old':
ProcessControl: Application /usr/bin/akonadi_imap_resource stopped unexpectedly
( "Process crashed" ) 

===================
content of /etc/my.cnf

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
max_allowed_packet=16M
lower_case_table_names=1
symbolic-links=0

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
max_allowed_packet=16M

-- 
You are receiving this mail because:
You are the assignee for the bug.



More information about the Kdepim-bugs mailing list