Hi all,
In my huge task of simplification of libraries puzzle, with current 5.0.0-beta implementation, i backported all libkface code in digiKam core, including database. Now digiKam 5.0.0 will not use libkface. I review all database management code, included recognition database, factorized all when it's possible. I tested Sqlite implementation and schema, and all work fine. Now recognition database is managed as thumbnails and core database : same place to store DB files, and same Sqlite engine. As database code is common with other DB engines, this want mean that recognition DB can be managed with Mysql/MariaDB too. So now, i started a tedious task : review all Mysql bugs, that i sorted this summer. The first task is to look into migration files : And i must admit that i'm not an expert with MySql/MariaDB. So i need external expertise and help here. The code from git/master is now fixed to reproduce 4.x mysql support, with same bugs of course. There are 2 solutions to use MySql/MariaDb : internal or external (remote) server. In a first step, i would to start with the first one, which will be more simpler to test and run. But before to continue, i would to know if there is somebody in this room who can help me in this task. Thanks in advance Best Gilles Caulier _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
I use digikam under Windows and mysql as database (in a Linux box). What do you need? Someone to test? Enviado por TypeMail Em 11 de nov de 2015, pelo 08:07, Gilles Caulier <[hidden email]> escrito:
_______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
2015-11-11 12:58 GMT+01:00 Piter Dias <[hidden email]>:
More than testing. The main problem is the first step of migration from sqlite (the initial DB set at first run) to a local mysql (using internal server). Currently the migration stop in the middle due to strange error reported by mysql (Mariadb here) : [gilles@localhost database]$ mysql --version mysql Ver 15.1 Distrib 10.0.21-MariaDB, for Linux (x86_64) using readline 5.1 I suppose some ImmoDb incompatibilities with digiKam sql statements to create indexes (tables are created). [gilles@localhost data]$ digikam digikam.general: AlbumWatch use QFileSystemWatcher digikam.general: DatabaseParameters: [ Type "QMYSQL", Name "digikam" (Thumbnails Name "digikam"); (Face Name "digikam"); ConnectOptions: "UNIX_SOCKET=/home/gilles/.local/share/digikam/db_misc/mysql.socket", Using an Internal Server; Username and Password: "root", ""] digikam.databaseserver: Waiting 10 seconds...stop: [ false ] digikam.database: Loading SQL code from config file "/usr/share/digikam/database/dbconfig.xml" digikam.database: Checking XML version ID: false "3" 3 3 digikam.database: ConnectOptions "UNIX_SOCKET=/home/gilles/.local/share/digikam/db_misc/mysql.socket" digikam.databaseserver: Failed to use database "digikam" digikam.databaseserver: Query error: "Unknown database 'digikam' QMYSQL: Unable to execute query" digikam.databaseserver: Database error: "Can't connect to local MySQL server through socket '/home/gilles/.local/share/digikam/db_misc/mysql.socket' (2 \"No such file or directory\") QMYSQL: Unable to connect" digikam.databaseserver: Trying to create database now... digikam.databaseserver: Database was successfully created digikam.database: Loading SQL code from config file "/usr/share/digikam/database/dbconfig.xml" digikam.database: Checking XML version ID: false "3" 3 3 digikam.database: SchemaUpdater update digikam.database: No database file available digikam.database: Failure executing query: "" Error messages: "QMYSQL: Unable to execute query" "Table 'mysql.proc' doesn't exist" 1146 2 Bound values: () digikam.database: Error while executing DBAction [ "CreateIndices" ] Statement [ "\n DROP PROCEDURE IF EXISTS create_index_if_not_exists;\n " ] digikam.databaseserver: At least service [ "org.kde.digikam.startup-8291" ] is using the database server digikam.databaseserver: Waiting 10 seconds...stop: [ false ] Can you reproduce this problem to a fresh account ? Gilles Caulier _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
I created a new album in the linux box in order to reproduce the error. The internal server gave the same error messages that you got. Then I created the databases in my MySQL server and tried to migrate. It worked like a charm. I don't know what the "Internal Server" is, but for sure it doesn't behave the same way a "regular" MySQL instance behaves. What else could I do to help? piterdias@microserver:~$ digikam -v Qt: 4.8.6 KDE Development Platform: 4.13.3 digiKam: 4.14.0 piterdias@microserver:~$ mysql --version mysql Ver 14.14 Distrib 5.5.46, for debian-linux-gnu (x86_64) using readline 6.3 ------------------------------------------- MIGRATION TO INTERNAL SERVER ------------------------------------------------- digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/digikam (core) Digikam::DatabaseParameters::defaultParameters: ConnectOptions "UNIX_SOCKET=/home/piterdias/.kde/share/apps/digikam/db_misc/mysql.socket" digikam(29920)/digikam (core) Digikam::SchemaUpdater::update: SchemaUpdater update digikam(29920)/digikam (core) Digikam::SchemaUpdater::startUpdates: No database file available digikam(29920)/digikam (core) Digikam::DatabaseCoreBackendPrivate::debugOutputFailedQuery: Failure executing query: "" Error messages: "QMYSQL: Unable to execute query" "Table 'mysql.proc' doesn't exist" 1146 2 Bound values: () digikam(29920)/digikam (core) Digikam::DatabaseCoreBackend::execDBAction: Error while executing DBAction [ "CreateIndices" ] Statement [ " DROP PROCEDURE IF EXISTS create_index_if_not_exists; " ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/kdeui (KNotification) KNotificationManager::notificationClosed: 3 digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::moveTo: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikam(29920)/khtml (caret) DOM::Selection::validate: Selection[ Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) 1 ] 0 digikam(29920)/khtml (caret) DOM::Selection::validate: [character:baseIsStart] true Position( 0x0 "null" : 0 ) Position( 0x0 "null" : 0 ) digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::checkDigikamInstancesRunning: At least service [ "org.kde.digikam-29920" ] is using the database server digikamdatabaseserver(29985)/digikam (database server) Digikam::PollThread::run: Waiting 10 seconds...stop: [ false ] digikam(29920)/kdeui (KNotification) KNotificationManager::close: 4 QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in use, all queries will cease to work. digikam(29920)/digikam (core) Digikam::SchemaUpdater::update: SchemaUpdater update digikam(29920)/digikam (core) Digikam::SchemaUpdater::startUpdates: No database file available digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Trying to copy contents from DB with ActionName: [ "Migrate_Read_AlbumRoots" ] to DB with ActionName [ "Migrate_Write_AlbumRoots" ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Driver doesn't support query size. We try to go to the last row and back to the current. digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Result size: [ 0 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "label" ] value [ QVariant(QString, "") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 0) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "type" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "identifier" ] value [ QVariant(QString, "volumeid:?uuid=59f1850e-dbca-4a1a-b49f-09c3a2ff1db2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "specificPath" ] value [ QVariant(QString, "/home/piterdias/Pictures/digikam/raw") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Trying to copy contents from DB with ActionName: [ "Migrate_Read_Albums" ] to DB with ActionName [ "Migrate_Write_Albums" ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Driver doesn't support query size. We try to go to the last row and back to the current. digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Result size: [ 0 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "albumRoot" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "relativePath" ] value [ QVariant(QString, "/") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "date" ] value [ QVariant(QString, "2015-11-11") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "caption" ] value [ QVariant(QString, "") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "collection" ] value [ QVariant(QString, "") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "icon" ] value [ QVariant(QString, "") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Trying to copy contents from DB with ActionName: [ "Migrate_Read_Images" ] to DB with ActionName [ "Migrate_Write_Images" ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Driver doesn't support query size. We try to go to the last row and back to the current. digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Result size: [ 35 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0735.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T12:57:54") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 25092588) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "bcf5cc8201189856e4dfe4abd0354ae0") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 2) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0736.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T12:58:44") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 27673144) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "c1fefa040f1d0bd7dbe47aa4eb0ed39e") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 3) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0737.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T12:59:04") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 27453799) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "e28612b16aa73000866d4895e2daf77d") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 4) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0738.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T12:59:26") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 26860509) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "ad3f835715d658551d96e6b125045971") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 5) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0739.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T12:59:32") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 26522634) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "58bee19dddd6444ebd6ff99272676c34") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 6) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0740.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:01:54") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 28749494) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "58473d29938d3d9f1d570435faecf8df") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 7) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0741.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:03:04") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 25279919) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "f8f27d422293dacbbcfdf99b8e36e941") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 8) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0742.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:03:50") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 25919351) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "8ea96880cfbca8c5e275ff934f5a256b") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 9) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0743.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:05:10") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 26243290) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "658badd8d58737dd437b7b4dd7876a73") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 10) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0744.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:05:12") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 26201259) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "1cb1226c0a2f8170185ddd4496c91dfd") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 11) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0745.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:05:16") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 25322644) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "26ffdf644e47ad74445ae3ec7c6b7707") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 12) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0746.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:05:36") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 23609467) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "781eb94490d0808f4a051315b1aa5b56") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 13) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0747.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:05:40") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 23374296) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "7459120c7b8a4d2e932600d11f619014") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 14) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0748.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:05:56") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 23997206) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "86cc798b7a83adf95dbbaa8d25d47085") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 15) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0749.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:06:14") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 26638831) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "91e422e62623101f349fb4d5a0406cca") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 16) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0750.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:06:28") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 22772218) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "39ec20f23860d3eb1d8356a4e2d5f788") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 17) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0751.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:06:30") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 23083450) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "84a2e92135b171b4b4fbd8c5845de5de") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 18) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "album" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "name" ] value [ QVariant(QString, "_MG_0752.CR2") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "status" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "category" ] value [ QVariant(qlonglong, 1) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "modificationDate" ] value [ QVariant(QString, "2015-11-07T13:06:42") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "fileSize" ] value [ QVariant(qlonglong, 23611240) ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "uniqueHash" ] value [ QVariant(QString, "2fc3c92d71a7ddb4eff59f3bff2623e7") ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Query isOnValidRow [ true ] isActive [ true ] result size: [ -1 ] digikam(29920)/digikam (core) Digikam::DatabaseCopyManager::copyTable: Column: [ "id" ] value [ QVariant(qlonglong, 19) ] _____________________ Piter Dias From: [hidden email] Date: Wed, 11 Nov 2015 16:59:00 +0100 To: [hidden email] Subject: Re: [Digikam-users] Mysql/MariaDb database expert needs... 2015-11-11 12:58 GMT+01:00 Piter Dias <[hidden email]>:
More than testing. The main problem is the first step of migration from sqlite (the initial DB set at first run) to a local mysql (using internal server). Currently the migration stop in the middle due to strange error reported by mysql (Mariadb here) : [gilles@localhost database]$ mysql --version mysql Ver 15.1 Distrib 10.0.21-MariaDB, for Linux (x86_64) using readline 5.1 I suppose some ImmoDb incompatibilities with digiKam sql statements to create indexes (tables are created). [gilles@localhost data]$ digikam digikam.general: AlbumWatch use QFileSystemWatcher digikam.general: DatabaseParameters: [ Type "QMYSQL", Name "digikam" (Thumbnails Name "digikam"); (Face Name "digikam"); ConnectOptions: "UNIX_SOCKET=/home/gilles/.local/share/digikam/db_misc/mysql.socket", Using an Internal Server; Username and Password: "root", ""] digikam.databaseserver: Waiting 10 seconds...stop: [ false ] digikam.database: Loading SQL code from config file "/usr/share/digikam/database/dbconfig.xml" digikam.database: Checking XML version ID: false "3" 3 3 digikam.database: ConnectOptions "UNIX_SOCKET=/home/gilles/.local/share/digikam/db_misc/mysql.socket" digikam.databaseserver: Failed to use database "digikam" digikam.databaseserver: Query error: "Unknown database 'digikam' QMYSQL: Unable to execute query" digikam.databaseserver: Database error: "Can't connect to local MySQL server through socket '/home/gilles/.local/share/digikam/db_misc/mysql.socket' (2 \"No such file or directory\") QMYSQL: Unable to connect" digikam.databaseserver: Trying to create database now... digikam.databaseserver: Database was successfully created digikam.database: Loading SQL code from config file "/usr/share/digikam/database/dbconfig.xml" digikam.database: Checking XML version ID: false "3" 3 3 digikam.database: SchemaUpdater update digikam.database: No database file available digikam.database: Failure executing query: "" Error messages: "QMYSQL: Unable to execute query" "Table 'mysql.proc' doesn't exist" 1146 2 Bound values: () digikam.database: Error while executing DBAction [ "CreateIndices" ] Statement [ "\n DROP PROCEDURE IF EXISTS create_index_if_not_exists;\n " ] digikam.databaseserver: At least service [ "org.kde.digikam.startup-8291" ] is using the database server digikam.databaseserver: Waiting 10 seconds...stop: [ false ] Can you reproduce this problem to a fresh account ? Gilles Caulier _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
At least, somebody can said me if an internal Mysql solution is suitable or not without to hack the DB installation outside digiKam. I read all bugzilla entries, and to setup Mysql, users need to grant privileges by hand before to configure digiKam with it. This is not possible to do the same with an internal server, since few years ago, Mysql switch DB engine to ImmoDB which require granted privilege to create DB indexes. And this is typically the problem that i can see when i want to create the MySql DB through the internal server. If i look how Amarok do with Mysql, internal server solution do not exist. Only a remote server is avaialble in setup. After all, it's logic. If you want an internal server, Sqlite is already implemented and robust. Mysql must be only dedicated for remote storage. I deducted that Mysql internal server must be removed from digiKam. Gilles Caulier 2015-11-12 10:30 GMT+01:00 Wolfgang Mader <[hidden email]>: On Wednesday 11 November 2015 16:59:00 Gilles Caulier wrote: _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
On 12-11-2015 09:55, Gilles Caulier wrote:
> At least, somebody can said me if an internal Mysql solution is > suitable or not without to hack the DB installation outside digiKam. > > I read all bugzilla entries, and to setup Mysql, users need to grant > privileges by hand before to configure digiKam with it. > > This is not possible to do the same with an internal server, since few > years ago, Mysql switch DB engine to ImmoDB which require granted > privilege to create DB indexes. And this is typically the problem that > i can see when i want to create the MySql DB through the internal server. > > If i look how Amarok do with Mysql, internal server solution do not > exist. Only a remote server is avaialble in setup. > > After all, it's logic. If you want an internal server, Sqlite is > already implemented and robust. Mysql must be only dedicated for > remote storage. > > I deducted that Mysql internal server must be removed from digiKam. > > I'm not an expert on databases or MySQL, but the explanation Gilles gave makes sense to me. I'm using SQlite and to me, it makes sense to only use MySQL as a remote storage. But that's only my opinion... Cheers: Pedro _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
Hi Gilles,
On Thu, Nov 12, 2015 at 10:55 AM, Gilles Caulier <[hidden email]> wrote: > At least, somebody can said me if an internal Mysql solution is suitable or > not without to hack the DB installation outside digiKam. > > I read all bugzilla entries, and to setup Mysql, users need to grant > privileges by hand before to configure digiKam with it. > > This is not possible to do the same with an internal server, since few years > ago, Mysql switch DB engine to ImmoDB which require granted privilege to > create DB indexes. And this is typically the problem that i can see when i > want to create the MySql DB through the internal server. > > If i look how Amarok do with Mysql, internal server solution do not exist. > Only a remote server is avaialble in setup. > an external MySQL server is just an additional option for people who need to share a database across computers. Unfortunately there is little more help I can offer :( Regards, Myriam -- Protect your freedom and join the Fellowship of FSFE: http://www.fsfe.org Please don't send me proprietary file formats, use ISO standard ODF instead (ISO/IEC 26300) _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Pedro Neves
On 11/12/2015 11:18 AM, Pedro Neves wrote:
> I'm not an expert on databases or MySQL, but the explanation Gilles gave > makes sense to me. I'm using SQlite and to me, it makes sense to only > use MySQL as a remote storage. > But that's only my opinion... Hi My experience: mysql is much better because it runs faster than sqlite, especially with huge images stock, > 20 000 or 30 000. In this last case, Sqlite takes hours to rebuild db. -- Maderios _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
2015-11-12 12:43 GMT+01:00 maderios <[hidden email]>: On 11/12/2015 11:18 AM, Pedro Neves wrote: yes, i agree. In fact 2 user cases : databases are local : sqlite : enough for small and medium collections. databases are remote : mysql : for large collections. Note that i use more than 100.000 items in my collections, hosted in a huge SDD (including sqlite databases files), and this work perfectly. Gilles
_______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Hello, For the mysql itself there is no diference if it is internal or external. Just use the network conection. The permissions are the same for the user just need to grant all privilegdes for the user. Digikam could ask for two ways to begin, the first would be to already have the user it needs to connect to the database. The second it could ask for database admin user, in this case, digikam would create its users as it needs. It makes the installating easier for the user, and also more secure for the user digikam, so it will only have the permission it needs. But i mean, i guess this is the easier part.. the hard part woould be the actual use of mysql for storing stuff right? I wish i knew mysql well enouh to help.. I prefere mysql cause it would be possible/easier to use digikam on multiple computers with the same database! Hope this goes forward! Em qui, 12 de nov de 2015 às 10:02, Gilles Caulier <[hidden email]> escreveu:
_______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
2015-11-12 13:58 GMT+01:00 Henrique Santos Fernandes <[hidden email]>:
no. The database creation is different : - Internal : all is done by digiKam as well, thrue digikamdatabaseserver CLI tool. grant all privilegdes cannot processed, because DB is done at run time when digiKam session is open. - remote : the database server need to be prepared before, especially privilegdes stuff. It explained in Amarok setup page for ex (a similar explainations need to be done in digiKam)
yes, but for a internal solution, user do not acces to database, until digiKam try to create it and fail of course due to missing privilegdes As, the privilegdes cannot be granted from users space, but must be done by server admin, the internal solution is a non sense. Sqlite do the stuff as well in this situation. As i said previously, trying to run digiKam with an internal mysql server will generate a lots of problems, a lots of reports, and finaly, only if user is an expert, this will not possible to use this way. So i will drop internal mysql support for 5.0.0
yes. The way to do it il given below : CREATE DATABASE digikamdb;GRANT ALL PRIVILEGES ON digikamdb.* TO 'digikamuser'@'localhost' IDENTIFIED BY 'digikamuserpassword'; FLUSH PRIVILEGES;
GRANT SUPER ON *.* TO 'digikamuser'@'localhost'; FLUSH PRIVILEGES; digikamdb : the digiKam databse name (in case of we use only one mysql database for all tables) digikamuser : the name of user account used by digiKAm to access on mysql digikamuserpassword : the password of the account. Here, the mysql DB is hosted on local machine (localhost). Adjusting the name of the machine permit to use a remote server as well.
The here another pending and very important question : With digiKam 5.0.0, we will have 3 database to manage : 1/ Core DB 2/ Thumbnails DB 3/ Face DB (since libkface is merged in digiKam core) For each digiKam database we can use a specific name. By default i used the name name (digikamdb) here to test, and it work for Core and Thumbnails DB. Face DB don't work and investiguations are under progress... So, the question is : why we have the capability to separate Core, Thumbnails, and Face DB with different name (as for ex digikamcoredb, digkamthumbsdb, and digikamfacedb) ? In my /var/lib/mysql, i can see separated subfolders to host DB ? What's the advantage ? backup facilities ? Performances ? What's must be the default settings : common name or separated name ? All this point are not clear for me (and also for end users as i can see in bugzilla).
Sure, this is another important feature, which introduce other dysfunctions as i can see in bugzilla. We must investigate step by step, first with simple user cases... Gilles Caulier _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
Hi all,
seems I posted from the wrong address the first time... On Thu, Nov 12, 2015 at 10:55 AM, Gilles Caulier <[hidden email]> wrote: > At least, somebody can said me if an internal Mysql solution is suitable or > not without to hack the DB installation outside digiKam. > > I read all bugzilla entries, and to setup Mysql, users need to grant > privileges by hand before to configure digiKam with it. > > This is not possible to do the same with an internal server, since few years > ago, Mysql switch DB engine to ImmoDB which require granted privilege to > create DB indexes. And this is typically the problem that i can see when i > want to create the MySql DB through the internal server. > > If i look how Amarok do with Mysql, internal server solution do not exist. > Only a remote server is avaialble in setup. That is not correct, Amarok uses MySQL embedded by default, setting up an external MySQL server is just an additional option for people who need to share a database across computers. Unfortunately there is little more help I can offer :( Regards, Myriam -- Proud member of the Amarok and KDE Community Protect your freedom and join the Fellowship of FSFE: http://www.fsfe.org Please don't send me proprietary file formats, use ISO standard ODF instead (ISO/IEC 26300) _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
2015-11-12 15:15 GMT+01:00 Myriam Schweingruber <[hidden email]>: Hi all, Ah, it's not SQlite... Interesting... So my question is : how to create DB indexes and triggers with an internal solution. When i look in bugzilla, some users have investigated and see that mysql indexes creation need granted privileges since immodb DB engine is used. And this is true : i reproduced the dysfunction and fixed it. Or perhaps Amarok do not use Indexes and triggers. In this case, DB performances will just down... Or perhaps Amarok do not use immodb engine... Gilles Caulier _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
All right.. i mean, it is easier to develop like this, one solution only
Why do digikam need super?
I think this is purely organization related right? I dont realy see any reason why it should be separated.
Having separated databases, you will have to adjust the user grant permissions for each case as well. Same for backup, now we have to backup 3 databases for backup digikam. As far as i know, there is no performance gain in any situation, but you gain complexity as you will need to create the mutiple users and also, you may be in a situation where you are not sure in wich database this "data" should be. I would vote for a single database, but i am no expert and thougt it was a design choice to have multple databases. One reason to have it not as the same, if you wish to use thumbtail on disk and the rest on mysql, but i guess this will introduce more problens than any real advantages.
_______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
2015-11-12 15:30 GMT+01:00 Henrique Santos Fernandes <[hidden email]>:
I don't know. I just found this solution in a bugzilla entry and it work. Someone like you have posted the same question without a response. Here my knowledge of mysql is limited.
So the question still pending...
in case of you use separated DB name. Else, all is mixed in same dir.
thumbnail on disk will be stored in sqlite DB in this case. No real advantage, and impossible to do currently : all mysql or all sqlite, that all. Gilles Caulier _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
On 12/11/2015 13:51, Gilles Caulier wrote: > > The here another pending and very important question : > > With digiKam 5.0.0, we will have 3 database to manage : > > 1/ Core DB > 2/ Thumbnails DB > 3/ Face DB (since libkface is merged in digiKam core) > > For each digiKam database we can use a specific name. By default i used > the name name (digikamdb) here to test, and it work for Core and > Thumbnails DB. Face DB don't work and investiguations are under progress... > > So, the question is : why we have the capability to separate Core, > Thumbnails, and Face DB with different name (as for ex digikamcoredb, > digkamthumbsdb, and digikamfacedb) ? > > In my /var/lib/mysql, i can see separated subfolders to host DB ? What's > the advantage ? backup facilities ? Performances ? What's must be the > default settings : common name or separated name ? The one advantage of having separate databases is for backup purposes. The thumbnail database in particular can be massive and having it separate makes it easier especially since it is basically throwaway data anyway. The performance of MySQL doesn't really come into it. You can in theory partition different databases into different locations/disks etc. and that might be of interest to some but it would be a pretty special use case. I think that the correct default would be to use a common name for all three but allow separate names if required. Regards Richard > > All this point are not clear for me (and also for end users as i can see > in bugzilla). > > > > I prefere mysql cause it would be possible/easier to use digikam on > multiple computers with the same database! > > > Sure, this is another important feature, which introduce other > dysfunctions as i can see in bugzilla. > > We must investigate step by step, first with simple user cases... > > Gilles Caulier > > > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users > Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
Hello,
> > > Why do digikam need super? > > > I don't know. I just found this solution in a bugzilla entry and it > work. > > > Someone like you have posted the same question without a response. > > > Here my knowledge of mysql is limited. I think digikam need super for this : "to create or alter a stored function, you must have the SUPER privilege, in addition to the CREATE ROUTINE or ALTER ROUTINE privilege that is normally required. (Depending on the DEFINER value in the function definition, SUPER might be required regardless of whether binary logging is enabled. See Section 13.1.12, “CREATE PROCEDURE and CREATE FUNCTION Syntax”.)" http://dev.mysql.com/doc/refman/5.7/en/stored-programs-logging.html In the web, I don't know any CMS, which use MYSQl, that doesn't need at least the knowledge to create a database, its user and right, except when the hosting service do it for its customer. (and no CMS that need SUPER privileges) So, using MYSQL with Digikam needs at least the same knowledge. What is "surprising" and not usual is the super privileges needed, and all I've read on configuring Digikam with MYSQL is about to get this working. I don't know how this is handle with AMAROK (local or remote MYSQL), but a look at it should be done. Greatings, Eric _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Gilles Caulier-4
Hello again,
As I remember, there is another trikky point when installing Digikam and adding collection for another user : had a little local collection first, then modify the collection parameters to get "mysql common collection database". Thanks, Eric Le jeudi 12 novembre 2015 à 15:43 +0100, Gilles Caulier a écrit : > > > 2015-11-12 15:30 GMT+01:00 Henrique Santos Fernandes > <[hidden email]>: > > > As, the privilegdes cannot be granted from users > space, but must be done by server admin, the internal > solution is a non sense. Sqlite do the stuff as well > in this situation. As i said previously, trying to run > digiKam with an internal mysql server will generate a > lots of problems, a lots of reports, and finaly, only > if user is an expert, this will not possible to use > this way. > > > So i will drop internal mysql support for 5.0.0 > > > All right.. i mean, it is easier to develop like this, one > solution only > > > yes. The way to do it il given below : > > > CREATE DATABASE digikamdb;GRANT ALL PRIVILEGES ON > digikamdb.* TO 'digikamuser'@'localhost' IDENTIFIED BY > 'digikamuserpassword'; FLUSH PRIVILEGES; GRANT SUPER > ON *.* TO 'digikamuser'@'localhost'; FLUSH PRIVILEGES; > > > Why do digikam need super? > > > I don't know. I just found this solution in a bugzilla entry and it > work. > > > Someone like you have posted the same question without a response. > > > Here my knowledge of mysql is limited. > > > > > > The here another pending and very important > question : > > > With digiKam 5.0.0, we will have 3 database to > manage : > > > 1/ Core DB > 2/ Thumbnails DB > 3/ Face DB (since libkface is merged in digiKam core) > > > For each digiKam database we can use a specific name. > By default i used the name name (digikamdb) here to > test, and it work for Core and Thumbnails DB. Face DB > don't work and investiguations are under progress... > > > So, the question is : why we have the capability to > separate Core, Thumbnails, and Face DB with different > name (as for ex digikamcoredb, digkamthumbsdb, and > digikamfacedb) ? > > > I think this is purely organization related right? > I dont realy see any reason why it should be separated. > > > So the question still pending... > > > > > In my /var/lib/mysql, i can see separated subfolders > to host DB ? What's the advantage ? backup > facilities ? Performances ? What's must be the default > settings : common name or separated name ? > > > Having separated databases, you will have to adjust the user > grant permissions for each case as well. > Same for backup, now we have to backup 3 databases for backup > digikam. > > > in case of you use separated DB name. Else, all is mixed in same dir. > > > > As far as i know, there is no performance gain in any > situation, but you gain complexity as you will need to create > the mutiple users and also, you may be in a situation where > you are not sure in wich database this "data" should be. > > > I would vote for a single database, but i am no expert and > thougt it was a design choice to have multple databases. > > > One reason to have it not as the same, if you wish to use > thumbtail on disk and the rest on mysql, but i guess this will > introduce more problens than any real advantages. > > > thumbnail on disk will be stored in sqlite DB in this case. No real > advantage, and impossible to do currently : all mysql or all sqlite, > that all. > > > Gilles Caulier > _______________________________________________ > Digikam-users mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-users _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
2015-11-12 17:25 GMT+01:00 eric <[hidden email]>: Hello again, yes, to be able to use directly in first run assistant a remote mysql database is in my TODO list Giles _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
In reply to this post by Richard Mortimer-2
This is true. But still easy to remove or drop the tables related to it. Only "problem" would be the backup size, as it would include the thumbnails.. The performance of MySQL doesn't really come into it. You can in theory I think teh default should be one database also. I guess, having the possibility to separate the databases would introduce much more work right? I am not sure.. not a developer.. i only know some about infrastructure . _______________________________________________ Digikam-users mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-users |
Free forum by Nabble | Edit this page |