Bug 225333

Summary: InnoDB: Unable to lock ./ibdata1, error: 11 when starting Akonadi
Product: [Frameworks and Libraries] Akonadi Reporter: Andrea Scarpino <scarpino>
Component: serverAssignee: Volker Krause <vkrause>
Status: RESOLVED DOWNSTREAM    
Severity: normal CC: alexxy, arekm, bero, budinero, daniel, fabo, ivanich, kdepim-bugs, shadow.walker, woebbeking
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Arch Linux   
OS: Unspecified   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: with mysql 5.1.43
with mysql 5.1.42
mysql configuration file

Description Andrea Scarpino 2010-02-03 00:45:49 UTC
Version:            (using KDE 4.4.0)
Installed from:    Archlinux Packages

Hi here,
akonadi does not start with mysql 5.1.43 but it works with mysql 5.1.42.

akonadiconsole Server Test output attached
Comment 1 Andrea Scarpino 2010-02-03 00:46:40 UTC
Created attachment 40484 [details]
with mysql 5.1.43

akonadiconsole server test with mysql 5.1.43
Comment 2 Andrea Scarpino 2010-02-03 00:48:48 UTC
Created attachment 40485 [details]
with mysql 5.1.42

akonadiconsole server test with mysql 5.1.42
Comment 3 Christoph Feck 2010-02-03 03:17:03 UTC
Just to ask the obvious: Did you stop and restart the mysql server between package updates?
Comment 4 Andrea Scarpino 2010-02-03 03:48:19 UTC
yes, I killed all mysqld processes before start akonadi server
Comment 5 Arkadiusz Miskiewicz 2010-02-05 14:13:43 UTC
Here mysql 5.1.43, too and akonadiserver dies this way:

$ akonadiserver start
search paths:  ("/home/users/arekm/.vpython/bin", "/sbin", "/usr/sbin", "/usr/local/sbin", "/home/users/arekm/bin", "/usr/lib64/qt4/bin", "/usr/local/bin", "/usr/bin", "/bin", "/usr/games", "/usr/X11R6/bin", "/home/users/arekm/bin", "/usr/sbin", "/usr/local/sbin", "/usr/local/libexec", "/usr/libexec", "/opt/mysql/libexec", "/opt/local/lib/mysql5/bin")                                                                                                                      
Database "akonadi" opened using driver "QMYSQL"                                                                                                              
DbInitializer::run()                                                                                                                                         
checking table  "SchemaVersionTable"                                                                                                                         
checking table  "ResourceTable"                                                                                                                              
checking table  "CollectionTable"                                                                                                                            
checking table  "MimeTypeTable"                                                                                                                              
checking table  "PimItemTable"                                                                                                                               
checking table  "FlagTable"                                                                                                                                  
checking table  "PartTable"                                                                                                                                  
checking table  "CollectionAttributeTable"                                                                                                                   
checking relation  "PimItemFlagRelation"
checking relation  "CollectionMimeTypeRelation"
checking relation  "CollectionPimItemRelation"
DbInitializer::run() done
skipping update 2
skipping update 3
skipping update 4
skipping update 8
skipping update 10
skipping update 12
skipping update 13
skipping update 14
Character set 'latin1' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file
Nepomuk QueryServer interface not available!
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
DataStore::unhideAllPimItems()
Character set 'latin1' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file
Database error: Cannot open database.
Last driver error: "QMYSQL: Unable to connect"
Last database error: "Can't initialize character set latin1 (path: /usr/share/mysql/charsets/)"
Database error: Cannot open database.
Last driver error: "QMYSQL: Unable to connect"
Last database error: "Can't initialize character set latin1 (path: /usr/share/mysql/charsets/)"
Unable to connect to dbus service:  ""
"[
0: akonadiserver(_Z11akBacktracev+0x39) [0x40ad19]
1: akonadiserver() [0x40b262]
2: /lib64/libc.so.6(+0x32520) [0x7fbd34dd1520]
3: /lib64/libc.so.6(gsignal+0x35) [0x7fbd34dd14a5]
4: /lib64/libc.so.6(abort+0x180) [0x7fbd34dd2970]
5: /usr/lib64/libQtCore.so.4(_Z17qt_message_output9QtMsgTypePKc+0x74) [0x7fbd35f7d7c4]
6: akonadiserver(_ZN15FileDebugStream9writeDataEPKcx+0xa8) [0x40c328]
7: /usr/lib64/libQtCore.so.4(_ZN9QIODevice5writeEPKcx+0x77) [0x7fbd3600c197]
8: /usr/lib64/libQtCore.so.4(+0x10b529) [0x7fbd3601d529]
9: /usr/lib64/libQtCore.so.4(_ZN11QTextStreamD1Ev+0x39) [0x7fbd3601e729]
10: akonadiserver(main+0x542) [0x406022]
11: /lib64/libc.so.6(__libc_start_main+0xfd) [0x7fbd34dbdc2d]
12: akonadiserver() [0x4059e9]
]
"

but /usr/share/mysql/charsets/Index.xml contains latin1 definition:
<charset name="latin1">
  <family>Western</family>
  <description>cp1252 West European</description>
  <alias>csisolatin1</alias>
  <alias>iso-8859-1</alias>
  <alias>iso-ir-100</alias>
  <alias>iso_8859-1</alias>
  <alias>iso_8859-1:1987</alias>
  <alias>l1</alias>
  <alias>latin1</alias>
  <collation name="latin1_german1_ci"	id="5"	order="German Duden"/>
  <collation name="latin1_swedish_ci"	id="8"	order="Finnish, Swedish">
    <flag>primary</flag>
    <flag>compiled</flag>
  </collation>
  <collation name="latin1_danish_ci"	id="15"	order="Danish"/>
  <collation name="latin1_german2_ci"	id="31"	order="German Phonebook"	flag="compiled"/>
  <collation name="latin1_spanish_ci"	id="94"	order="Spanish"/>
  <collation name="latin1_bin"		id="47"	order="Binary">
    <flag>binary</flag>
    <flag>compiled</flag>
  </collation>
  <collation name="latin1_general_ci"	id="48">
    <order>Dutch</order>
    <order>English</order>
    <order>French</order>
    <order>German Duden</order>
    <order>Italian</order>
    <order>Latin</order>
    <order>Portuguese</order>
    <order>Spanish</order>
  </collation>
  <collation name="latin1_general_cs"	id="49">
    <order>Dutch</order>
    <order>English</order>
    <order>French</order>
    <order>German Duden</order>
    <order>Italian</order>
    <order>Latin</order>
    <order>Portuguese</order>
    <order>Spanish</order>
  </collation>
</charset>
Comment 6 Christophe Marin 2010-02-05 16:45:37 UTC
*** Bug 225632 has been marked as a duplicate of this bug. ***
Comment 7 Bernhard Rosenkraenzer 2010-02-05 16:51:31 UTC
Not sure 225632 and 225333 are actually the same -- they do have a lot in common (same InnoDB errors), but some things are different (e.g. in 225632, all D-Bus tests fail, here it's only 1; 225632 doesn't produce any errors about charsets, ...)
Comment 8 Andrea Scarpino 2010-02-09 13:47:54 UTC
I know akonadi 1.3.1 fixes only dbus, anyway still present with akonadi 1.3.1
Comment 9 Christophe Marin 2010-02-11 23:43:13 UTC
Comment #5 is unrelated and probably caused by a custom MySQL config file for Akonadi. 

Andrea, can you attach your mysql.conf (in $HOME/.local/share/akonadi)
Comment 10 Andrea Scarpino 2010-02-12 00:37:57 UTC
Created attachment 40703 [details]
mysql configuration file

here. thank you
Comment 11 Andrea Scarpino 2010-02-12 01:01:37 UTC
I stopped akonadi, updated mysql to .43, removed ~/.local/share/akonadi but still akonadi does not start
Comment 12 Christophe Marin 2010-02-12 16:57:03 UTC
@Arkadiusz

Please have a look at http://forum.kde.org/viewtopic.php?p=147126#p147126
Comment 13 Arkadiusz Miskiewicz 2010-02-12 17:36:36 UTC
akonadi started to work here (no idea what actually fixed it since I did some kde/soprano packages upgrade + rming databases in meantime).

aconadi log is still full of:
Database error: Cannot open database.
  Last driver error: "QMYSQL: Unable to connect"
  Last database error: "Can't initialize character set latin1 (path: /usr/share/mysql/charsets/)"
Database error: Cannot open database.
  Last driver error: "QMYSQL: Unable to connect"
  Last database error: "Can't initialize character set latin1 (path: /usr/share/mysql/charsets/)"

and this doesn't look mysql fine since sql queries that involve character conversion work fine in my mysql.
Comment 14 Facundo Aguilera 2010-02-14 02:44:35 UTC
I'm having the same error:
...
Database error: Cannot open database.
  Last driver error: "QMYSQL: Unable to connect"
  Last database error: "Can't initialize character set latin1 (path:
/usr/share/mysql/charsets/)"
...

Akonadi starts, but is unusable for korganizar and kmail (empty folder list in resources config, when there are some akonadi calendar sources) 

It's not a bad MySQL config. I purged and reinstalled it and removed all akonadi config files from ~. 
Comment #12 works for me, downgrading to .41 in debian solves the problem, but with .43 is not working.

@Arkadiusz
Can you check if you can add some akonadi resource to korganizer?
Comment 15 Andrea Scarpino 2010-02-19 17:55:57 UTC
updated to mysql 5.1.44 and akonadi still does not start :(
Comment 16 Christophe Marin 2010-02-20 16:07:30 UTC
Changing the title. Someone saw this error even with mysql < 5.1.43
Comment 17 Andrea Scarpino 2010-02-26 19:44:53 UTC
seems to be a mysql bug.
Akonadi works after applied Staale Smedseng's patch (http://bugs.mysql.com/bug.php?id=45058)
Comment 18 Daniel Eklöf 2010-02-26 20:28:45 UTC
(In reply to comment #17)
> seems to be a mysql bug.
> Akonadi works after applied Staale Smedseng's patch
> (http://bugs.mysql.com/bug.php?id=45058)

I've briefly tested the patch. Works for me too.
Comment 19 Andrea Scarpino 2010-04-26 12:50:50 UTC
Nice, patch is no more needed with MySQL 5.1.46
Comment 20 Daniel Eklöf 2010-04-26 13:22:41 UTC
(In reply to comment #19)
> Nice, patch is no more needed with MySQL 5.1.46

I can confirm that.