Bug 428472 - Digikam doesn't come up as it can't update db schema from 9 to 10
Summary: Digikam doesn't come up as it can't update db schema from 9 to 10
Status: RESOLVED NOT A BUG
Alias: None
Product: digikam
Classification: Applications
Component: Database-Schema (show other bugs)
Version: 6.4.0
Platform: Ubuntu Linux
: NOR normal
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-10-30 13:20 UTC by generischgenug
Modified: 2020-11-02 11:51 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 7.2.0
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description generischgenug 2020-10-30 13:20:39 UTC
SUMMARY
After a fresh installation of Ubuntu 20.04, digikam isn't able to start with the old db.

STEPS TO REPRODUCE
1. Open digikam
2. Error message comes up: "Failed to update the database schema from version 9 to version 10. Please read the error messages printed on the console and report this error as a bug at bugs.kde.org.
3. Start digikam (without any arguments) on the console. Result below.

OBSERVED RESULT
digikam.widgets: Use installed icons
digikam.general: AlbumWatch is disabled
digikam.general: Database Parameters:
   Type:                     "QSQLITE"
   DB Core Name:             "/media/[obfuscated]/digikam4.db"
   DB Thumbs Name:           "/media/[obfuscated]/thumbnails-digikam.db"
   DB Face Name:             "/media/[obfuscated]/recognition.db"
   DB Similarity Name:       "/media/[obfuscated]/similarity.db"
   Connect Options:          ""
   Host Name:                ""
   Host port:                -1
   Internal Server:          false
   Internal Server Path:     ""
   Internal Server Serv Cmd: ""
   Internal Server Init Cmd: ""
   Username:                 ""
   Password:                 ""

digikam.dbengine: Loading SQL code from config file "/usr/share/digikam/database/dbconfig.xml"
digikam.dbengine: Checking XML version ID => expected:  3  found:  3
digikam.coredb: Core database: running schema update
digikam.coredb: Core database: have a structure version  8
digikam.coredb: Core database: makeUpdates  8  to  10
digikam.coredb: Core database: success updating to version  9
digikam.coredb: Core database: success updating to version  9
digikam.dbengine: Failure executing query:
 "" 
Error messages: "Unable to fetch row" "database or disk is full" "13" 1 
Bound values:  ()
digikam.dbengine: Error while executing DBAction [ "UpdateSchemaFromV9ToV10" ] Statement [ "DROP TABLE IF EXISTS ImageHaarMatrix;" ]
digikam.coredb: Core database: schema update to V 10 failed!
digikam.dbengine: Failure executing query:
 "REPLACE INTO Settings VALUES (:a,:bb);" 
Error messages: "Unable to fetch row" "database or disk is full" "13" 1 
Bound values:  (QVariant(QString, "DBVersion"), QVariant(QString, "9"))
digikam.dbengine: Failure executing query:
 "REPLACE INTO Settings VALUES (:a,:bb);" 
Error messages: "Unable to fetch row" "database or disk is full" "13" 1 
Bound values:  (QVariant(QString, "DBVersionRequired"), QVariant(QString, "5"))
digikam.coredb: Core database: cannot process schema initialization

EXPECTED RESULT
Digikam should start without errors.


SOFTWARE/OS VERSIONS
Linux: Ubuntu 20.04.1 LTS

ADDITIONAL INFORMATION
Comment 1 Maik Qualmann 2020-10-30 13:35:31 UTC
Database updates with SQLite are easy and never fail. The problem is external. The error message ""database or disk is full" suggests that there is no more disk space. Please check this first. Otherwise the digikam4.db may be defective.

Maik
Comment 2 generischgenug 2020-11-02 09:55:23 UTC
Hello Maik,

Thanks for your fast response. Actually, I had checked the disk space and found that it wasn't full. But when I now checked again, it was indeed full. So I don't know what I had seen that day.
I've now cleared some of the space on the disk and, voilà, digikam started without any issues.

So you can close this bug.
Thanks and sorry for your time.
Comment 3 Maik Qualmann 2020-11-02 11:51:26 UTC
Thanks for the feedback.

Maik