After upgrading to kubuntu 22.04, digikam no longer starts and gets stuck on a message box: Failed to update the database schema from version 13 to version 14. Please read the error messages printed on the console and report this error as a bug at bugs.kde.org. Console: digikam.coredb: Core database: cannot process schema initialization Using a MariaDB on a local NAS - connection checks reports OK STEPS TO REPRODUCE 1. Kubuntu 22.04 2. install digikam snap 3. start on a remote database OBSERVED RESULT Does not start after setting the database EXPECTED RESULT SOFTWARE/OS VERSIONS Windows: macOS: Linux/KDE Plasma: (available in About System) KDE Plasma Version: 5.24.6 KDE Frameworks Version: 5.92.0 Qt Version: 5.15.3 ADDITIONAL INFORMATION
I recommend to try 7.9.0 pre-release which is a maintenance version, not yet published, but including bug fix only : https://files.kde.org/digikam/ The AppImage Linux bundle must work as expected under Kubuntu. Best Gilles Caulier
From V13 to V14 was a simple update, just added a DateTime column to the Albums table. Post the log from the terminal as described here: https://www.digikam.org/contribute/ Maik
(In reply to Maik Qualmann from comment #2) > From V13 to V14 was a simple update, just added a DateTime column to the > Albums table. > Post the log from the terminal as described here: > > https://www.digikam.org/contribute/ > > Maik This is the complete log frans@Beest:~/Downloads$ ./digiKam-7.9.0-20221030T175249-x86-64-debug.appimage -- digiKam Linux AppImage Bundle -- Use 'help' as CLI argument to know all available options for digiKam application. -- Notes: to integrate this bundle to your desktop, use AppImageLauncher. -- to enable all debug messages on the console, use 'export QT_LOGGING_RULES="digikam*=true"'. -- Detected host Linux ubuntu-64-22.4 -- AppImage mounted directory: /tmp/.mount_digiKahcoO52 Check library libudev.so.0 Check library libxcb-dri3.so.0 Check library libcrypto.so.1.1 Check library libssl.so.1.1 Check library libnss3.so Check library libnssutil3.so Check library libsmime3.so Check library libpango-1.0.so.0 Check library libpangocairo-1.0.so.0 Check library libgmodule-2.0.so.0 -- Preloading shared libs: :/tmp/.mount_digiKahcoO52/usr/lib/libavif.so.13:/usr/lib/x86_64-linux-gnu/libxcb-dri3.so.0:/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1:/usr/lib/x86_64-linux-gnu/libssl.so.1.1:/usr/lib/x86_64-linux-gnu/libnss3.so:/usr/lib/x86_64-linux-gnu/libnssutil3.so:/usr/lib/x86_64-linux-gnu/libsmime3.so:/usr/lib/x86_64-linux-gnu/libpango-1.0.so.0:/usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0:/usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 Digikam::DXmlGuiWindow::setupIconTheme: Breeze icons resource file found Digikam::DXmlGuiWindow::setupIconTheme: Breeze-dark icons resource file found Digikam::setupKSycocaDatabaseFile: Set KSycoca to file: "/home/frans/.cache/ksycoca5_en_MHJxbUEetAAm+p0deqzFWbReBGo=" Digikam::unloadQtTranslationFiles: Qt standard translations removed: 6 Digikam::loadStdQtTranslationFiles: Qt standard translations path: "/tmp/.mount_digiKahcoO52/usr/share/digikam/translations" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qt" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtbase" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qt_help" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtdeclarative" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtquickcontrols" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtquickcontrols2" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtmultimedia" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtwebengine" Digikam::loadStdQtTranslationFiles: Loaded Qt standard translations "en_US" from catalog "qtxmlpatterns" Digikam::loadEcmQtTranslationFiles: Loaded Qt ECM translations "en" from catalog "kcoreaddons5_qt" Digikam::loadEcmQtTranslationFiles: Loaded Qt ECM translations "en" from catalog "kwidgetsaddons5_qt" Digikam::ApplicationSettings::setApplicationStyle: Switch to widget style: "breeze" Digikam::ApplicationSettings::setApplicationFont: Switch to application font: QFont(Noto Sans,10,-1,0,50,0,0,0,0,0) Digikam::AlbumWatch::AlbumWatch: AlbumWatch use QFileSystemWatcher Digikam::AlbumManager::setDatabase: Database Parameters: Type: "QMYSQL" DB Core Name: "digikam" DB Thumbs Name: "digikam-thumbnails" DB Face Name: "digikam-recognition" DB Similarity Name: "digikam" Connect Options: "" Host Name: "192.168.2.13" Host port: 3307 Internal Server: false Internal Server Path: "" Internal Server Admin Cmd: "" Internal Server Serv Cmd: "" Internal Server Init Cmd: "" Username: "Frans" Password: "XXXXXXXXXXXX" Digikam::DbEngineConfigSettingsLoader::readConfig: Loading SQL code from config file "/tmp/.mount_digiKahcoO52/usr/share/digikam/database/dbconfig.xml" Digikam::DbEngineConfigSettingsLoader::readConfig: Checking XML version ID => expected: 3 found: 3 Digikam::CoreDbSchemaUpdater::update: Core database: running schema update Digikam::CoreDbSchemaUpdater::startUpdates: Core database: have a structure version 13 Digikam::CoreDbSchemaUpdater::makeUpdates: Core database: makeUpdates 13 to 15 Digikam::BdEngineBackendPrivate::debugOutputFailedQuery: Failure executing query: "" Bound values: ()Error messages: "QMYSQL: Unable to execute query" "Duplicate column name 'modificationDate'" "1060" 2 Digikam::BdEngineBackend::execDBAction: Error while executing DBAction [ "UpdateSchemaFromV13ToV14" ] Statement [ "ALTER TABLE Albums ADD modificationDate DATETIME;" ] Digikam::CoreDbSchemaUpdater::performUpdateToVersion: Core database: schema update to V 14 failed! Digikam::CoreDbAccess::checkReadyForUse: Core database: cannot process schema initialization How to proceed on Unable to exequte query ?
Well, the "modificationDate" column we want to add already exists. Possible cause, you have tried a beta version of digiKam or the first start of the "new" digiKam version failed and the version number of the database was not updated. Well, this update was done a year ago in the then current digiKam version, we can't really fix it here on digiKam site. It could also be due to the Kubuntu Snap package using a sandbox. This also makes it difficult for us to exchange/modify a file so that we can finish the update. Can you run a SQL command on your NAS if I give you the commands? Maik
Try this in a terminal: mysql -u Frans -h 192.168.2.13 -p (password query) USE digikam; ALTER TABLE Albums DROP COLUMN modificationDate; With "\q" you can exit mysql, try to start digiKam again. Maik
Thank you very much, digikam is again up to par. I think this was indeed caused by an aborted first time run of the snap, perhaps future scripts can check if the a new column is not already present :) Anyway I am a happy bee again, thanks again
For MariaDB, the query whether the column exists already exists for ALTER TABLE. A procedure would have to be written for MySQL (Oracle) that queries the existence of the column via the table schema, which would be a bit more complex. Normally, nothing goes wrong with this simple update. We already know many problems with the Ubuntu Snap package, it's actually useless for digiKam. You should look for an alternative. Either our AppImage or there is a private repository with a current digiKam version. I can't say how well it works though. Maik