Summary: | amarok crashes, InnoDB vs MyISAM | ||
---|---|---|---|
Product: | [Applications] amarok | Reporter: | Juha Tuomala <tuju> |
Component: | general | Assignee: | Amarok Developers <amarok-bugs-dist> |
Status: | RESOLVED DOWNSTREAM | ||
Severity: | crash | CC: | edward.hades, kde, kevin.kofler, rdieter, rik.andreassen, s.illes79 |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Fedora RPMs | ||
OS: | Unspecified | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
Juha Tuomala
2009-03-13 23:09:09 UTC
This is very repeatable. running on nfs4 $HOME. > InnoDB: The log sequence number in ibdata files does not match
> InnoDB: the log sequence number in the ib_logfiles!
> 090313 23:54:31 InnoDB: Database was not shut down normally!
Amarok's embedded mysql database does _not_ support the InnoDB backend, only MyISAM. The cause of this is most likely an incorrectly compiled mysql package, so please ask your distribution.
Ack, thanks for the information. A related question is that I was using a lot the kde3 version with postgresql server (actual hw server running pgsql). - How can i get that data into new kde4 amarok? - Will the pgsql support be re-added into upcoming releases? Postgresql support would be highly appreciated. *** Bug 187142 has been marked as a duplicate of this bug. *** I check the downstream issue(s), but curious, does amarok have any buildtime or runtime checks for MyISAM functionality? (If not, why not)? http://amarok.kde.org/blog/archives/812-MySQL-in-Amarok-2-The-Reality.html > So from the beginning of A2 development we knew we wanted just one database. > So this leaves us with -- as you guessed -- MySQL. Grrrrrr. Amarok does not specify any storage engine for the database tables, so it gets whatever is the default in that particular MySQL build. You have to explicitly request ENGINE = MYISAM during the CREATE TABLE if you aren't willing to support anything else, see: http://dev.mysql.com/doc/refman/5.0/en/myisam-storage-engine.html (But even that will do absolutely nothing to fix the problem for all those users who already got their tables created with InnoDB.) Reopening, not a downstream issue. nod, looks like some additional mysql config love (or further explanation or justification) is required. Existing databases need to be converted using: ALTER TABLE foo ENGINE = MYISAM; See: http://dev.mysql.com/doc/refman/5.0/en/alter-table.html adjusting summary to match issue at hand (InnoDB vs MyISAM table types) Just a side note, after talking with both #postgresql and #amarok folks, it looks like there will never be pgsql support anymore in amarok. They are not willing to maintain the db abstraction layer inside the amarok anymore. :-/ About PostgreSQL no longer being supported and not being planned to be supported, that's old news! Can we please focus on the actual bug? (In reply to comment #13) > About PostgreSQL no longer being supported and not being planned to be > supported, that's old news! Can we please focus on the actual bug? In my world, there wouldn't be this Amarok bug. My focus is in Juk already. *** Bug 191110 has been marked as a duplicate of this bug. *** (In reply to comment #9) > nod, looks like some additional mysql config love (or further explanation or > justification) is required. To reduce memory consumption, startup time, and disk usage, MySQL Embedded can be told to disable the BerkDB and InnoDB storage engines: cat <<EOF > ~/.kde/share/apps/amarok/my.cnf [amarokserver] skip-bdb skip-innodb default-storage-engine=MyISAM EOF InnoDB is better for high concurrency access, but a single user using an embedded MySQL database really has no need for it. Interesting, my reading of MySqlEmbeddedCollection.cpp is that it indeed does use MYISAM everwhere, including options: --default-table-type=MYISAM --defaultstorage-engine=MYISAM and testing on my f11 box does create MYISAM tables by default, which was not the case for f10. Looks to be a downstream issue after all (and/or mysql-5.0.x is just fsck'd) |