Bug 279996 - Crash while running face detection
Summary: Crash while running face detection
Alias: None
Product: digikam
Classification: Applications
Component: Faces-Detection (show other bugs)
Version: 2.5.0
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
Depends on:
Reported: 2011-08-13 00:04 UTC by Enrico
Modified: 2017-07-26 17:59 UTC (History)
7 users (show)

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

New crash information added by DrKonqi (24.32 KB, text/plain)
2012-01-29 12:24 UTC, John Stumbles
Backtrace crash digikam 2.5.0 (20.79 KB, application/octet-stream)
2012-01-29 12:51 UTC, Enrico
New crash information added by DrKonqi (30.18 KB, text/plain)
2013-11-27 11:58 UTC, Vincent Henninot

Note You need to log in before you can comment on or make changes to this bug.
Description Enrico 2011-08-13 00:04:55 UTC
Version:           2.1.0 (using KDE 4.7.0) 
OS:                Linux

Running face detection results in a crash nearly every time. Tested with current git at b52126a820bbaabe7e63a7da4a6f404af48ff07e

I found some similar bug reports, but all closed "fixed".

Reproducible: Sometimes

Steps to Reproduce:
Press "Scan collection for faces" and "Start"

Actual Results:  
At some point digikam crashes with a pure virtual function call.

Crash at /home/rikky/sourcecode/digikam/libs/threadimageio/loadingcache.cpp:247

it.value()->notifyNewLoadingProcess(process, description);

Expected Results:  
Face detection should not crash

QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in use, all queries will cease to work.

(digikam:18718): GStreamer-CRITICAL **: gst_debug_add_log_function: assertion `func != NULL' failed
digikam(18718)/KIPI (general) Plugin_DebianScreenshots::setup: virtual void Plugin_DebianScreenshots::setup(QWidget*) 
Cascade directory located as : /usr/share/apps/libkface/haarcascades
Cascade directory located as : /usr/share/apps/libkface/haarcascades
KCrash: Application 'digikam' crashing...
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
Unable to start Dr. Konqi


#0  0x00007fffee9a3745 in raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007fffee9a4bc6 in abort () at abort.c:92
#2  0x00007fffef23029d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6
#3  0x00007fffef22e4b6 in ?? () from /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6
#4  0x00007fffef22e4e3 in std::terminate() () from /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6
#5  0x00007fffef22ee3f in __cxa_pure_virtual () from /usr/lib/gcc/x86_64-pc-linux-gnu/4.5.2/libstdc++.so.6
#6  0x00007ffff4a66786 in Digikam::LoadingCache::notifyNewLoadingProcess (this=0xd15be0, process=0x5216b18, description=...) at /home/rikky/sourcecode/digikam/libs/threadimageio/loadingcache.cpp:247
#7  0x00007ffff4a7268a in Digikam::PreviewLoadingTask::execute (this=0x5216950) at /home/rikky/sourcecode/digikam/libs/threadimageio/previewtask.cpp:172
#8  0x00007ffff4a5cd26 in Digikam::LoadSaveThread::run (this=0xdc1020) at /home/rikky/sourcecode/digikam/libs/threadimageio/loadsavethread.cpp:118
#9  0x00007ffff4a92fde in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x2ec3310) at /home/rikky/sourcecode/digikam/libs/threads/dynamicthread.cpp:328
#10 0x00007fffefc75f50 in ?? () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00007fffefc80fc5 in ?? () from /usr/lib64/qt4/libQtCore.so.4
#12 0x00007fffef9f0d4c in start_thread (arg=0x7fffc95cf700) at pthread_create.c:301
#13 0x00007fffeea42c1d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115
Comment 1 Marcel Wiesweg 2011-08-26 16:28:14 UTC
There were indeed similar bugs, and they were fixed (people could reproduce the crash, and after applying a patch it did no longer crash).

Now you have these crashes again, and not many other people. Is there anything special? Does it crash when scanning a specific image? The filenames are usually printed on the console. Are empty files involved, or files which cannot be loaded?

Comment 2 Marcel Wiesweg 2011-09-25 13:50:39 UTC

If possible, try with current git to ensure you have all fixes applied.
Comment 3 caulier.gilles 2011-11-03 12:42:30 UTC
digiKam 2.2.0 is out since few weeks. Crash still valid with this version ?

Gilles Caulier
Comment 4 caulier.gilles 2011-12-14 13:41:58 UTC

Can you reproduce the crash using digiKam 2.4 ?

Gilles Caulier
Comment 5 John Stumbles 2012-01-29 12:24:11 UTC
Created attachment 68297 [details]
New crash information added by DrKonqi

digikam (2.1.1) on KDE Platform 4.7.4 (4.7.4) using Qt 4.7.4

- What I was doing when the application crashed:

Started digikam from console: got message
QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in use, all queries will cease to work.
(I always get this when starting digikam)
scanned for faces on large collection of images (probably about 2-3000)
At some point (seems to be different each time) dk crashes with

pure virtual method called
terminate called without an active exception
KCrash: Application 'digikam' crashing...
KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit
No itemShortInfo could be retrieved from the database for image "20060730_165211_img_8422.jpg" 

I had this crash symptom occurring on a different collection of images and after several runs it eventually processed the collection without crashing. (And I re-ran the scan on the same collection to be more sure that it wasn't a fluke.)

-- Backtrace (Reduced):
#14 0xb6b4725f in Digikam::LoadingCache::notifyNewLoadingProcess (this=0x87d7370, process=0x8c9d768, description=...) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/loadingcache.cpp:247
#15 0xb6b5360f in Digikam::PreviewLoadingTask::execute (this=0x8c9d610) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/previewtask.cpp:172
#16 0xb6b3a4e8 in Digikam::LoadSaveThread::run (this=0xa0aa820) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/loadsavethread.cpp:118
#17 0xb6b858ee in Digikam::DynamicThread::DynamicThreadPriv::run (this=0xa0aa8c0) at /build/buildd/digikam-2.1.1/core/libs/threads/dynamicthread.cpp:328
#18 0xb4cae651 in QThreadPoolThread::run (this=0xa291278) at concurrent/qthreadpool.cpp:106
Comment 6 Enrico 2012-01-29 12:51:33 UTC
Created attachment 68298 [details]
Backtrace crash digikam 2.5.0
Comment 7 caulier.gilles 2012-01-29 13:10:26 UTC

This your backtrace :

Thread 1 (Thread 0x7f11601647e0 (LWP 18233)):
[KCrash Handler]
#6  QVariant::~QVariant (this=0xffffffffffffffff, __in_chrg=<optimized out>) at kernel/qvariant.cpp:1407
#7  0x00007f115d413029 in node_destruct (n=0x7f1130c3c3a8, this=<optimized out>) at /usr/include/qt4/QtCore/qlist.h:375
#8  QList<QVariant>::erase (this=0xd7f918, afirst=..., alast=...) at /usr/include/qt4/QtCore/qlist.h:792
#9  0x00007f115d41082c in Digikam::ImageModel::removeRowPairs (this=0xd735d0, toRemove=...) at /var/tmp/portage/media-gfx/digikam-2.5.0/work/digikam-2.5.0/core/libs/models/imagemodel.cpp:901
#10 0x00007f115d4121ca in Digikam::ImageModel::finishIncrementalRefresh (this=0xd735d0) at /var/tmp/portage/media-gfx/digikam-2.5.0/work/digikam-2.5.0/core/libs/models/imagemodel.cpp:720
#11 0x00000000005576e5 in Digikam::ImageAlbumModel::slotResult (this=0xd735d0, job=<optimized out>) at /var/tmp/portage/media-gfx/digikam-2.5.0/work/digikam-2.5.0/core/libs/models/imagealbummodel.cpp:307
#12 0x0000000000558cbe in Digikam::ImageAlbumModel::qt_metacall (this=0xd735d0, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff5ac6f430) at /var/tmp/portage/media-gfx/digikam-2.5.0/work/digikam-2.5.0_build/digikam/imagealbummodel.moc:117
#13 0x00007f115ac0522f in QMetaObject::activate (sender=0x4857480, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fff5ac6f430) at kernel/qobject.cpp:3278
#14 0x00007f115b065fa2 in KJob::result (this=<optimized out>, _t1=0x4857480) at /var/tmp/portage/kde-base/kdelibs-4.7.4-r11/work/kdelibs-4.7.4_build/kdecore/kjob.moc:194
#15 0x00007f115b065fe0 in KJob::emitResult (this=0x4857480) at /var/tmp/portage/kde-base/kdelibs-4.7.4-r11/work/kdelibs-4.7.4/kdecore/jobs/kjob.cpp:312
#16 0x00007f115ca7a01d in KIO::SimpleJob::slotFinished (this=0x4857480) at /var/tmp/portage/kde-base/kdelibs-4.7.4-r11/work/kdelibs-4.7.4/kio/kio/job.cpp:494
#17 0x00007f115ca7dff2 in KIO::TransferJob::slotFinished (this=0x4857480) at /var/tmp/portage/kde-base/kdelibs-4.7.4-r11/work/kdelibs-4.7.4/kio/kio/job.cpp:1081
#18 0x00007f115ca83df1 in KIO::TransferJob::qt_metacall (this=0x4857480, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fff5ac6f870) at /var/tmp/portage/kde-base/kdelibs-4.7.4-r11/work/kdelibs-4.7.4_build/kio/jobclasses.moc:369

I already seen this trace in bugzilla. I thin it's a duplicate.

Gilles Caulier
Comment 8 caulier.gilles 2012-01-29 13:12:35 UTC

*** This bug has been marked as a duplicate of bug 278049 ***
Comment 9 Marcel Wiesweg 2012-02-19 15:23:17 UTC
Backtrace of John Stumbles is a duplicate of the marked bug. The original crash report by Enrico is unrelated.
Comment 10 Marcel Wiesweg 2012-02-19 15:24:48 UTC
*** Bug 293418 has been marked as a duplicate of this bug. ***
Comment 11 caulier.gilles 2012-06-22 08:49:24 UTC
Official digiKam 2.6.0 release is out since few days now :


Please, check if this entry still valid, or update report accordingly.

Thanks in advance.

Gilles Caulier
Comment 12 caulier.gilles 2012-06-24 20:52:15 UTC
*** Bug 302437 has been marked as a duplicate of this bug. ***
Comment 13 caulier.gilles 2012-10-31 11:10:42 UTC
*** Bug 309306 has been marked as a duplicate of this bug. ***
Comment 14 Vincent Henninot 2013-11-27 11:58:55 UTC
Created attachment 83790 [details]
New crash information added by DrKonqi

digikam (3.4.0) on KDE Platform 4.11.2 using Qt 4.8.4

- What I was doing when the application crashed:  Manuel Face recognition scan

I was doing nothing in ubuntu except digikam face recognition

-- Backtrace (Reduced):
#8  0xb49bfaff in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#9  0xb49c3083 in __GI_abort () at abort.c:90
#14 0xb695893f in Digikam::LoadingCache::notifyNewLoadingProcess (this=0xa7bac88, process=process@entry=0x107f0ff4, description=...) at /build/buildd/digikam-3.4.0/core/libs/threadimageio/loadingcache.cpp:247
#15 0xb6962e56 in Digikam::PreviewLoadingTask::execute (this=0x107f0e90) at /build/buildd/digikam-3.4.0/core/libs/threadimageio/previewtask.cpp:173
#16 0xb6950758 in Digikam::LoadSaveThread::run (this=0xbd90270) at /build/buildd/digikam-3.4.0/core/libs/threadimageio/loadsavethread.cpp:136
Comment 15 Marcel Wiesweg 2013-12-25 12:44:32 UTC
Git commit 98a3ddb180e320c5ae3fe501788c38d6c8ae4908 by Marcel Wiesweg.
Committed on 25/12/2013 at 12:23.
Pushed by mwiesweg into branch 'master'.

Fix infamous big face scanning crash: Re-sending a package in the ImageFilterModel discarded the extraValues,
resulting in a mismatch in the size of infos and extraValues lists in ImageModel
Related: bug 262596, bug 278049

M  +17   -12   libs/models/imagefiltermodel.cpp
M  +1    -2    libs/models/imagefiltermodelpriv.h
M  +2    -0    libs/models/imagemodel.cpp