SUMMARY When I scroll through a large set of photos in an album, I'm starting to see a spinning pinwheel which takes between 30s to 2min to resolve. This problem just started about 2-3 days ago. Recently, I've been using with the face detect/recognize and XMP imbedding on my photo library. There are not active jobs running when I see this problem. STEPS TO REPRODUCE 1. Open a large album (200+ photos) 2. Scroll through photos thumbnails with previews 3. At some point, the spinning pinwheel will freeze the UI OBSERVED RESULT The amount of time the spinning pinwheel is stuck varies. It's usually around 30s or so. My DB and photos are on SSD. Activity Monitor shows that digiKam process is at 99% EXPECTED RESULT There's some bottleneck but I'm not sure how to troubleshoot or run maintenance to reduce the frequency. Perhaps, I need to run compaction or turn up some sync process. Suggestions for best practices would be appreciated. SOFTWARE/OS VERSIONS Windows: macOS: Mac OS X 10.15.7 (19H114) Linux/KDE Plasma: Build date: Dec 27 2020 (target: Debug) Rev.: 111faf00ce07b9b53d631a70293007bfe3c2fa23 KDE Plasma Version: KDE Frameworks Version: 5.77.0 Qt Version: 5.15.2 ADDITIONAL INFORMATION digikam version 7.2.0-beta2 Images: BMP: 6 GIF: 60 JPG: 145122 PNG: 55 PSD: 43 RAW-NEF: 277 RAW-ORF: 225 TIFF: 30 total: 145818 : Videos: 3GP: 33 AVI: 647 MOV: 2913 MP4: 143 MPEG: 21 MTS: 35 VOB: 3 WMV: 9 total: 3804 : Audio: WAV: 9 total: 9 : Total Items: 149631 Albums: 2716 Tags: 224 : Database backend: QSQLITE Database Path: /Users/john/Pictures/photos/metadata/ Database locale: UTF-8 digikam version 7.2.0-beta2 CPU cores: 4 Eigen: 3.3.8 Exiv2: 0.27.3 Exiv2 supports XMP metadata: Yes HEIF encoding support: Yes ImageMagick codecs: 6.9.11 KF5: 5.77.0 LensFun: 0.3.95-0 LibCImg: 130 LibJPEG: 90 LibJasper: 2.0.14 LibLCMS: 2100 LibLqr support: No LibPGF: 7.19.03 LibPNG: 1.6.37 LibRaw: 0.20.0 LibTIFF: 4.1.0 Marble: 0.27.20 Parallelized demosaicing: No Qt: 5.15.2 Qt WebEngine support: Yes Rajce support: Yes VKontakte support: No AkonadiContact support: No Baloo support: No Calendar support: Yes DBus support: No Database backend: QSQLITE HTML Gallery support: Yes LibAVCodec: 58.91.100 LibAVFormat: 58.45.100 LibAVUtil: 56.51.100 LibGphoto2: 2.5.26 LibOpenCV: 4.4.0 LibQtAV: 1.13.0 Media player support: Yes Panorama support: Yes
Database is mysql internal or sqlite ? Gilles Caulier
We have the same problem with bug 431951 I think. We have no explanation and we cannot reproduce it. Please try the current release candidate from here: https://files.kde.org/digikam/ Maik
I'm currently running SQLLite but I was wondering if there is a metadata threshold for migrating to MySQL. I'm downloading the new RC to test.
I installed the latest RC and the spinning pinwheel still happens but it seems less frequently. I can recreate it by scrolling through a large album (100+ photos) with the preview turned on. It's now only about 10-15 seconds which is similar to the experience in bug 431951. My sqlite db is running on SSD and the photo library is on an attached SSD via USB3.3. I tried to run under lldb to see if there was any logging but I'm not sure how to dump the traces at the time when the pinswheeling it happens to see what is creating the problem.
Hi, lldb is a debuger to get a backtrace from crash or place breakpoint somewhere. To be able to use it, you need the PKG version a with "debug" prefix. It's more heavy as it include all debug symbols. https://files.kde.org/digikam/ But in first you just need to get a console backtrace to see if a dysfunctions appear in the program without to crash executable. The contribute web page explain all details to process from a macOS terminal: https://www.digikam.org/contribute/ Gilles Caulier
Git commit c7bda4772d7731404ff0337000dabcbff253102b by Maik Qualmann. Committed on 19/02/2021 at 17:58. Pushed by mqualmann into branch 'master'. calculate QDateTime outside of the DB lock Related: bug 431951 M +4 -36 core/libs/database/coredb/coredb.cpp M +2 -3 core/libs/database/coredb/coredb.h M +0 -12 core/libs/database/coredb/coredbaccess.cpp M +28 -2 core/libs/database/dbjobs/dbjob.cpp https://invent.kde.org/graphics/digikam/commit/c7bda4772d7731404ff0337000dabcbff253102b