Bug 494528

Summary: Thumbnails disappear with WAL option ON (pCloud lock).
Product: [Applications] digikam Reporter: simpsonus
Component: Database-ThumbsAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED NOT A BUG    
Severity: normal CC: caulier.gilles, metzpinguin
Priority: NOR    
Version: 8.4.0   
Target Milestone: ---   
Platform: macOS (DMG)   
OS: macOS   
Latest Commit: Version Fixed In: 8.5.0
Sentry Crash Report:
Attachments: Digital window with thumbnails empty

Description simpsonus 2024-10-11 12:46:17 UTC
Created attachment 174686 [details]
Digital window with thumbnails empty

SUMMARY
The thumbnails are disappearing  after a few clics on the Albums or Dates panel if the Database is a MySQL database and the WAL option is checked.

STEPS TO REPRODUCE
1. create a MySQL database, activate WAL option
2. add files to the Albums
3. clic on different Albums in the panels
4. after a few clics, the thumbnails are disappearing and they never display again. You have to quit and relaunch Digicam

OBSERVED RESULT
thumbnails are disappearing 

EXPECTED RESULT
thumbnails should not disappear

SOFTWARE/OS VERSIONS
macOS: 14.7

ADDITIONAL INFORMATION
On a MacBook Air M2 with Apple Silicon chip
Comment 1 Maik Qualmann 2024-10-11 13:07:11 UTC
There is no WAL mode for a MySQL database, and you cannot activate it in the GUI.
Create a debug log in the terminal as described here for macOS:

https://www.digikam.org/contribute

But first test the completely revised macOS digikam-8.5.0 bundles:

Intel: https://files.kde.org/digikam/legacy/
M1/2: https://files.kde.org/digikam/

Please report.

Maik
Comment 2 simpsonus 2024-10-11 13:12:07 UTC
really sorry, I meant SQLite and I wrote MySQL
Comment 3 Maik Qualmann 2024-10-11 15:22:01 UTC
@Gilles, can you take a look here? Is it really possible that Apple is preventing the creation of *wal files?

https://stackoverflow.com/questions/53832281/app-sandbox-blocks-creation-of-sqlite-shm-sqlite-wal-files-swift

Maik
Comment 4 caulier.gilles 2024-10-11 16:17:14 UTC
MacBook Pro M1 Somona. I reset all my digiKam config and reconfigure from scratch.

WAL : no problem
Thumbnails : no problem

https://i.imgur.com/2whygs0.png
https://i.imgur.com/uIEGRLJ.png

This can be a prblem with the right given to digiKam by macOS to access to the disk in read/write. I given the access to the Picture dir, where the database is stored :

https://i.imgur.com/sHGYum6.png

Gilles
Comment 5 simpsonus 2024-10-12 21:42:57 UTC
reproduced with 8.5.0 
the rights to pictures is ok for digikam

I reproduce the problem only if I launch digikam with WAL option ON, if I turn it OFF it works, it turn it ON it still works, I quit digikam, I run digikam, the bug comes quick if I use the arrow key in the album Tree

Sonoma 14.7 user is not admin of the Mac 

directory structure : 
~user/Pictures/phototheque/base ->database directory
~user/Pictures/phototheque/photo  -> albums directory

in the terminal I have the error : 

digikam.general: Event is dispatched to OSX desktop notifier
digikam.geoiface: ----
digikam.geoiface: ----
digikam.general: Using  8  CPU core to run threads
digikam.general: Action Thread run 1 new jobs
digikam.dbengine: Failure executing query:
 "SELECT id FROM Albums WHERE albumRoot=:0 AND relativePath=:1;" 
Error messages: "Impossible d'exécuter l'instruction" "disk I/O error" "522" 2 
Bound values:  QList()
digikam.dbengine: Failure executing query:
 "SELECT id FROM Albums WHERE albumRoot=:0 AND relativePath=:1;" 
Error messages: "Nombre de paramètres incorrect" "" "" 2 
Bound values:  QList(QVariant(int, 1), QVariant(QString, "/Anniversaires/Pascal"))
digikam.general: Data From DBJobsThread is null:  true
digikam.general: Cancel Main Thread
digikam.general: One job is done  Digikam::AlbumsJob(0x60000d22e0a0)  time: 0
digikam.general: Finish Main Thread
digikam.geoiface: ----
digikam.geoiface: ----
digikam.geoiface: ----
digikam.general: Using  8  CPU core to run threads
digikam.general: Action Thread run 1 new jobs
digikam.dbengine: Failure executing query:
 "SELECT id FROM Albums WHERE albumRoot=:0 AND relativePath=:1;" 
Error messages: "Impossible d'exécuter l'instruction" "disk I/O error" "522" 2 
Bound values:  QList()
digikam.dbengine: Failure executing query:
 "SELECT id FROM Albums WHERE albumRoot=:0 AND relativePath=:1;" 
Error messages: "Nombre de paramètres incorrect" "" "" 2 
Bound values:  QList(QVariant(int, 1), QVariant(QString, "/Anniversaires/Noces Or Michel et Marie-Rose"))
digikam.general: Data From DBJobsThread is null:  true
digikam.general: Cancel Main Thread
digikam.general: One job is done  Digikam::AlbumsJob(0x60000d24aa60)  time: 15
digikam.general: Finish Main Thread
digikam.geoiface: ----
digikam.geoiface: ----
digikam.geoiface: ----
digikam.general: Using  8  CPU core to run threads
digikam.general: Action Thread run 1 new jobs
digikam.dbengine: Failure executing query:
 "SELECT id FROM Albums WHERE albumRoot=:0 AND relativePath=:1;" 
Error messages: "Impossible d'exécuter l'instruction" "disk I/O error" "522" 2 
Bound values:  QList()
digikam.dbengine: Failure executing query:
 "SELECT id FROM Albums WHERE albumRoot=:0 AND relativePath=:1;" 
Error messages: "Nombre de paramètres incorrect" "" "" 2 
Bound values:  QList(QVariant(int, 1), QVariant(QString, "/Anniversaires/Multiples Villers"))
digikam.general: Data From DBJobsThread is null:  true
digikam.general: Cancel Main Thread
digikam.general: One job is done  Digikam::AlbumsJob(0x60000d247060)  time: 26
digikam.general: Finish Main Thread
digikam.geoiface: ----
digikam.geoiface: ----
digikam.geoiface: ----
Comment 6 Maik Qualmann 2024-10-13 05:13:14 UTC
You have a database read error (522): https://www.sqlite.org/rescode.html#ioerr_short_read

I suspect that digiKam does not have full rights to your database directory: ~user/Pictures/phototheque/base

Maik
Comment 7 simpsonus 2024-10-13 18:14:01 UTC
Digital has access to Photos in System Settings and I also gave "full disk access" to Digikam with no success.
The problem is not present at the start of digikam, it comes (sometimes quickly, sometimes after a few minutes) after navigating in the Album Tree
Comment 8 Maik Qualmann 2024-10-13 18:56:25 UTC
Please try the pre-release digiKam-8.5.0 compiled for Apple silicon to see if the problem can be reproduced:

https://files.kde.org/digikam/

Maik
Comment 9 simpsonus 2024-10-13 19:06:42 UTC
I think I've found the reason of the bug : pCloud application.
If I pause pCloud synchronisation there is no more problem.
I added exceptions to "*-wal" and "*-shm" files in pCloud and it seems to works !
Comment 10 caulier.gilles 2024-10-13 20:00:15 UTC
What's pCloud exactly ?
Comment 11 Maik Qualmann 2024-10-13 20:09:23 UTC
Probably this: https://www.pcloud.com/

Maik
Comment 12 simpsonus 2024-10-14 10:50:18 UTC
yes it's https://www.pcloud.com