First I cleared for one person the difference of counts in face tags (100) and tags (104) to 104 face tags. Doing this cased to fill the memory to no limit, so i killed digiKam. Then I restarted digikam and tried to find more faces, but the memory filled up again. (I did it all with valgrind this time) Reproducible: Always Steps to Reproduce: 1. ad a face tag or start detecting faces Actual Results: It not possible to us digikam without killing it and restarting the program. sometimes digikam remains in the process table although the window closed with killing. Expected Results: Adding new face tags without filling up the memory, also with the automatic face detection. I think the database can not deal with the difference of the tag of a person and the face tag of a person. Sometimes there is even the same face taged twice in one picture. Valgrind: ==4621== ==4621== 1,712 bytes in 2 blocks are possibly lost in loss record 26,227 of 26,933 ==4621== at 0x4C277AB: malloc (vg_replace_malloc.c:270) ==4621== by 0x1E6388B6: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E614D29: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E61C9B7: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E61C9DC: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E65124D: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E6948D6: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x2B7B216E: ??? (in /usr/lib64/qt4/plugins/sqldrivers/libqsqlite.so) ==4621== by 0x4E468A0: QSqlDatabase::open() (in /usr/lib64/libQtSql.so.4.8.5) ==4621== by 0x783C3B0: Digikam::DatabaseCoreBackendPrivate::open(QSqlDatabase&) (databasecorebackend.cpp:213) ==4621== by 0x783C97C: Digikam::DatabaseCoreBackendPrivate::databaseForThread() (databasecorebackend.cpp:119) ==4621== by 0x783EE82: Digikam::DatabaseCoreBackend::open(Digikam::DatabaseParameters const&) (databasecorebackend.cpp:768) ==4621== ==4621== 1,728 bytes in 18 blocks are possibly lost in loss record 26,230 of 26,933 ==4621== at 0x4C277AB: malloc (vg_replace_malloc.c:270) ==4621== by 0x1E6388B6: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E614D29: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E61C9B7: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E61CAF0: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E61CB6C: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E6219DA: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E641B50: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E641C6B: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E641E1C: sqlite3_create_function_v2 (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E641E64: sqlite3_create_function (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== by 0x1E694BCB: ??? (in /usr/lib64/libsqlite3.so.0.8.6) ==4621== ==4621== 1,728 bytes in 18 blocks are possibly lost in loss record 26,231 of 26,933
*** This bug has been marked as a duplicate of bug 323888 ***
Git commit 6a9fd9891a3ff341dc42fe36158cbf0101d513b6 by Maik Qualmann. Committed on 17/12/2017 at 19:20. Pushed by mqualmann into branch 'master'. delete threads from memory when they are finished Related: bug 375317, bug 375035, bug 321784, bug 325712, bug 328732, bug 330227, bug 344661, bug 345395, bug 350549, bug 381877, bug 338249, bug 329651, bug 329091, bug 387821, bug 381222 M +2 -1 NEWS M +25 -0 libs/database/dbjobs/dbjobsmanager.cpp M +35 -0 libs/iojobs/iojobsmanager.cpp https://commits.kde.org/digikam/6a9fd9891a3ff341dc42fe36158cbf0101d513b6
Following this commit: https://commits.kde.org/digikam/6a9fd9891a3ff341dc42fe36158cbf0101d513b6 ... the approach to fix this problem is under way and new digiKam 5.8.0 pre-release bundles will be compiled tonight to lets a chance to end-users to give a feedback about this fix before the 5.8.0 official release planed before Christmas 2017. The bundles will be available in 2 hours at this url: https://files.kde.org/digikam/ Please do not waste time to test if this file is always valid for next 5.8.0. Thanks in advance Gilles Caulier
Problem is fixed with new 7.0.0-beta1 through this long story from this bug https://bugs.kde.org/show_bug.cgi?id=399923 You can test digiKam 7.0.0-beta1 with bundle available here: https://download.kde.org/unstable/digikam/ Don't hesitate to give us a fresh feedback about his entry. Thanks in advance Gilles Caulier