[Digikam-devel] [Bug 235928] digikam fails to open database at startup

Bruno Friedmann brunofr at ioda.net
Thu Oct 7 08:40:15 BST 2010


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





--- Comment #73 from Bruno Friedmann <brunofr ioda net>  2010-10-07 09:40:02 ---
Tested today with digikam 1.4.0.4 opensuse 11.3 / mysql-comunity 5.1.46
innodb as default engine
Result = failed during migration 7%

digikam
QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in
use, all queries will cease to work.
Time elapsed: 176 ms
Time elapsed: 2 ms
Model: Time elapsed: 311 ms
TextureColorizer: Time elapsed: 100 ms
Time elapsed: 2 ms
Time elapsed: 2 ms
Model: Time elapsed: 10 ms
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::DatabaseConfigElementLoader::readConfig:
"/usr/share/kde4/apps/digikam/database/dbconfig.xml"
(7726) Digikam::DatabaseParameters::defaultParameters: ConnectOptions 
"UNIX_SOCKET=/home/bruno/.kde4/share/apps/digikam/db_misc/mysql.socket"
(7726) Digikam::DatabaseServer::startMYSQLDatabaseProcess: Failed to use
database "digikam"
(7726) Digikam::DatabaseServer::startMYSQLDatabaseProcess: Query error:
"Unknown database 'digikam' QMYSQL: Unable to execute query"
(7726) Digikam::DatabaseServer::startMYSQLDatabaseProcess: Database error:
"Can't connect to local MySQL server through socket
'/home/bruno/.kde4/share/apps/digikam/db_misc/mysql.socket' (2) QMYSQL: Unable
to connect"
(7726) Digikam::DatabaseServer::startMYSQLDatabaseProcess: Trying to create
database now...
(7726) Digikam::DatabaseServer::startMYSQLDatabaseProcess: Database was
successfully created
QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in
use, all queries will cease to work.
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
QSqlDatabasePrivate::removeDatabase: connection 'MigrationToDatabase182567520'
is still in use, all queries will cease to work.
QSqlQuery::prepare: empty query
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in
use, all queries will cease to work.
QSqlDatabasePrivate::removeDatabase: connection 'MigrationToDatabase182567520'
is still in use, all queries will cease to work.
QSqlQuery::prepare: empty query
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
QSqlDatabasePrivate::removeDatabase: connection 'MigrationToDatabase182567520'
is still in use, all queries will cease to work.
QSqlQuery::prepare: empty query
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in
use, all queries will cease to work.
QSqlDatabasePrivate::removeDatabase: connection 'MigrationToDatabase182567520'
is still in use, all queries will cease to work.
QSqlQuery::prepare: empty query
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]
(7726) Digikam::PollThread::checkDigikamInstancesRunning: At least service [
"org.kde.digikam.KIO-digikamtags-7140" ] is using the database server
(7726) Digikam::PollThread::run: Waiting  10  seconds...stop: [ false ]

Also tried with the non-embeded server 
only the albumroots table is created.

cause : indexes for innodb are too long ... picked from dbconfig.xml

mysql> CREATE TABLE Albums
    ->                             (id INTEGER PRIMARY KEY NOT NULL
AUTO_INCREMENT,
    ->                             albumRoot INTEGER NOT NULL,
    ->                             relativePath LONGTEXT CHARACTER SET utf8 NOT
NULL,
    ->                             date DATE,
    ->                             caption LONGTEXT CHARACTER SET utf8,
    ->                             collection LONGTEXT CHARACTER SET utf8,
    ->                             icon INTEGER,
    ->                             UNIQUE(albumRoot, relativePath(332)));
ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes

with the modified dbconfig.xml
(change all 332 & 333 index length to 254, migration works.)

But going to configuration, and setting digikam to use the migrated database
failed immediately with a table creation error ... 
Why creation tables if they already exist and contain data ... ( checked with
mysql tools )

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the Digikam-devel mailing list