Having restarted the KDE PIM suite, I have now the phenomenon that I can no longer access the body of any mail I try to access. The messages in .xsession-error give me many entries like these:
Known subscriber "kmail2" subscribes again
Error during executing query "UPDATE PimItemTable SET atime = :0 WHERE ( collectionId = :1 )" : "Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED. QMYSQL3: Unable to execute statement"
Unable to update item access time
Database "akonadi" opened using driver "QMYSQL"
I now solved the problem for me. My strategy was to recreate the Akonadi database. For that purpose I deleted “~/.local/share/akonadi” and tried to recreate it by using “akonadictl start”. There still was a problem regarding the setting for locking database objects:
Database "akonadi" opened using driver "QMYSQL"
DbInitializer::run()
checking table "SchemaVersionTable"
"INSERT INTO SchemaVersionTable (version) VALUES (20)"
"Unable to add initial data to table 'SchemaVersionTable'.
Query error: 'Cannot execute statement: impossible to write to binary log since BINLOG_FORMAT = STATEMENT and at least one table uses a storage engine limited to row-based logging. InnoDB is limited to row-logging when transaction isolation level is READ COMMITTED or READ UNCOMMITTED. QMYSQL: Unable to execute query'
Query was: INSERT INTO SchemaVersionTable (version) VALUES (20)"
Unable to initialize database.
"
0: akonadiserver(_Z11akBacktracev+0x35) [0x453ba5]
1: akonadiserver() [0x453e6c]
2: /lib64/libc.so.6(+0x34e10) [0x7f91cd1b2e10]
3: /lib64/libc.so.6(gsignal+0x35) [0x7f91cd1b2d95]
4: /lib64/libc.so.6(abort+0x17b) [0x7f91cd1b42ab]
5: /usr/lib64/libQtCore.so.4(_Z17qt_message_output9QtMsgTypePKc+0x74) [0x7f91cec79c84]
6: akonadiserver(_ZN15FileDebugStream9writeDataEPKcx+0x92) [0x456142]
7: /usr/lib64/libQtCore.so.4(_ZN9QIODevice5writeEPKcx+0xaf) [0x7f91ced1482f]
8: /usr/lib64/libQtCore.so.4(+0x11de02) [0x7f91ced1fe02]
9: /usr/lib64/libQtCore.so.4(_ZN11QTextStreamD1Ev+0x39) [0x7f91ced28c99]
10: akonadiserver() [0x45abd8]
11: akonadiserver(_ZN7Akonadi13AkonadiServer8instanceEv+0x35) [0x45bd45]
12: akonadiserver(main+0x1ea) [0x44c0da]
13: /lib64/libc.so.6(__libc_start_main+0xed) [0x7f91cd19f23d]
14: akonadiserver() [0x44c871]
]
"
ProcessControl: Application 'akonadiserver' returned with exit code 255 (Unknown error)
The next thing to try for me was to explicitly adding “binlog_format=mixed” to “~/.config/akonadi/mysql-local.conf” and starting Akonadi after that. Now Kmail2 is working as expected
I wonder why you got that error but others don’t. From what KDE version did you update to 4.8.1 and did you change anything regarding akonadi or mysql before?