Bug 294452

Summary: Digikam crash in "Scan collection for faces"
Product: [Applications] digikam Reporter: Aleš Zelený <zeleny.ales>
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Fedora RPMs   
OS: Linux   
Latest Commit: Version Fixed In: 7.0.0
Sentry Crash Report:

Description Aleš Zelený 2012-02-19 21:38:06 UTC
Application: digikam (2.6.0-beta1)
KDE Platform Version: 4.7.4 (4.7.4)
Qt Version: 4.8.0
Operating System: Linux 3.2.3-2.fc16.i686.PAE i686
Distribution (Platform): Fedora RPMs

-- Information about the crash:
click "Scan collection for faces", Detect and reconize faces, "Scan again and merge results". After a while, digikam crashes.
Same behavior for 2.5.0 installed using YUM as well as 2.6.0.beta1 compiled from source tarball.

The crash can be reproduced some of the time.

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
Using host libthread_db library "/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0xb705a900 (LWP 18949))]

Thread 12 (Thread 0xb4c94b40 (LWP 18951)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc885c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S:172
#2  0x450be638 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0x08208ca6 in Digikam::ScanController::run (this=0xa6bae58) at /data/download/digikam/digikam-2.6.0-beta1/core/digikam/database/scancontroller.cpp:647
#4  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#5  0x43dc4cd3 in start_thread (arg=0xb4c94b40) at pthread_create.c:309
#6  0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 11 (Thread 0xb42ffb40 (LWP 18952)):
#0  0x43de6001 in __GI_clock_gettime (clock_id=1, tp=0xb42fede8) at ../sysdeps/unix/clock_gettime.c:116
#1  0x4511ce06 in ?? () from /usr/lib/libQtCore.so.4
#2  0x45206bf7 in ?? () from /usr/lib/libQtCore.so.4
#3  0x45206f5b in ?? () from /usr/lib/libQtCore.so.4
#4  0x452057a3 in ?? () from /usr/lib/libQtCore.so.4
#5  0x4520583d in ?? () from /usr/lib/libQtCore.so.4
#6  0x43e94c4c in g_main_context_prepare (context=0xb39004e0, priority=0xb42fef48) at gmain.c:2762
#7  0x43e95a08 in g_main_context_iterate (context=0xb39004e0, block=1, dispatch=1, self=0xb3900d70) at gmain.c:3069
#8  0x43e9601f in g_main_context_iteration (context=0xb39004e0, may_block=1) at gmain.c:3152
#9  0x45206317 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#10 0x451d24ee in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#11 0x451d2799 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#12 0x450bab2c in QThread::exec() () from /usr/lib/libQtCore.so.4
#13 0x451af35e in ?? () from /usr/lib/libQtCore.so.4
#14 0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#15 0x43dc4cd3 in start_thread (arg=0xb42ffb40) at pthread_create.c:309
#16 0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 10 (Thread 0xa673cb40 (LWP 18995)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc8c04 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S:238
#2  0x450be5b0 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0x450b084c in ?? () from /usr/lib/libQtCore.so.4
#4  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#5  0x43dc4cd3 in start_thread (arg=0xa673cb40) at pthread_create.c:309
#6  0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 9 (Thread 0xa5f3bb40 (LWP 18996)):
#0  0x45205911 in ?? () from /usr/lib/libQtCore.so.4
#1  0x43e952ec in g_main_context_check (context=0xd14abf0, max_priority=2147483647, fds=0xd1dda88, n_fds=1) at gmain.c:2959
#2  0x43e95cd0 in g_main_context_iterate (context=0xd14abf0, block=1139427344, dispatch=1, self=0xd5d87d0) at gmain.c:3086
#3  0x43e9601f in g_main_context_iteration (context=0xd14abf0, may_block=1) at gmain.c:3152
#4  0x45206317 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x451d24ee in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x451d2799 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0xb75a414e in Digikam::WorkerObjectRunnable::run (this=0xe925c58) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:196
#8  0x450b0773 in ?? () from /usr/lib/libQtCore.so.4
#9  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#10 0x43dc4cd3 in start_thread (arg=0xa5f3bb40) at pthread_create.c:309
#11 0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 8 (Thread 0xa2daab40 (LWP 19001)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc8c04 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S:238
#2  0x450be5b0 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0x450b084c in ?? () from /usr/lib/libQtCore.so.4
#4  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#5  0x43dc4cd3 in start_thread (arg=0xa2daab40) at pthread_create.c:309
#6  0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 7 (Thread 0xac0e0b40 (LWP 19002)):
#0  0x43dc6ca2 in __pthread_mutex_lock (mutex=0xb3902784) at pthread_mutex_lock.c:65
#1  0x43e94acc in g_main_context_prepare (context=0xb3902780, priority=0xac0dff38) at gmain.c:2690
#2  0x43e95a08 in g_main_context_iterate (context=0xb3902780, block=1, dispatch=1, self=0xb39274e0) at gmain.c:3069
#3  0x43e9601f in g_main_context_iteration (context=0xb3902780, may_block=1) at gmain.c:3152
#4  0x45206317 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x451d24ee in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x451d2799 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0xb75a414e in Digikam::WorkerObjectRunnable::run (this=0xeb35678) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:196
#8  0x450b0773 in ?? () from /usr/lib/libQtCore.so.4
#9  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#10 0x43dc4cd3 in start_thread (arg=0xac0e0b40) at pthread_create.c:309
#11 0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 6 (Thread 0xa6f3db40 (LWP 19003)):
#0  0x43de6001 in __GI_clock_gettime (clock_id=1, tp=0xa6f3cdd8) at ../sysdeps/unix/clock_gettime.c:116
#1  0x4511ce06 in ?? () from /usr/lib/libQtCore.so.4
#2  0x45206bf7 in ?? () from /usr/lib/libQtCore.so.4
#3  0x45206f5b in ?? () from /usr/lib/libQtCore.so.4
#4  0x452057a3 in ?? () from /usr/lib/libQtCore.so.4
#5  0x4520583d in ?? () from /usr/lib/libQtCore.so.4
#6  0x43e94c4c in g_main_context_prepare (context=0xb2f02fc0, priority=0xa6f3cf38) at gmain.c:2762
#7  0x43e95a08 in g_main_context_iterate (context=0xb2f02fc0, block=1, dispatch=1, self=0xb2f015a8) at gmain.c:3069
#8  0x43e9601f in g_main_context_iteration (context=0xb2f02fc0, may_block=1) at gmain.c:3152
#9  0x45206317 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#10 0x451d24ee in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#11 0x451d2799 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#12 0xb75a414e in Digikam::WorkerObjectRunnable::run (this=0xd19c988) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:196
#13 0x450b0773 in ?? () from /usr/lib/libQtCore.so.4
#14 0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#15 0x43dc4cd3 in start_thread (arg=0xa6f3db40) at pthread_create.c:309
#16 0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 5 (Thread 0xa31ffb40 (LWP 19004)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc885c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S:172
#2  0x475a9d48 in ?? () from /usr/lib/libtbb.so.2
#3  0x475a9ddc in ?? () from /usr/lib/libtbb.so.2
#4  0x43dc4cd3 in start_thread (arg=0xa31ffb40) at pthread_create.c:309
#5  0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 4 (Thread 0xa25a9b40 (LWP 19005)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc8c04 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S:238
#2  0x450be5b0 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0x450b084c in ?? () from /usr/lib/libQtCore.so.4
#4  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#5  0x43dc4cd3 in start_thread (arg=0xa25a9b40) at pthread_create.c:309
#6  0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 3 (Thread 0x9c21ab40 (LWP 19006)):
[KCrash Handler]
#7  0xb77f3424 in __kernel_vsyscall ()
#8  0x43c3f98f in __GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#9  0x43c412d5 in __GI_abort () at abort.c:91
#10 0x4429d74d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/libstdc++.so.6
#11 0x4429b4c4 in ?? () from /usr/lib/libstdc++.so.6
#12 0x4429b500 in std::terminate() () from /usr/lib/libstdc++.so.6
#13 0x4429c173 in __cxa_pure_virtual () from /usr/lib/libstdc++.so.6
#14 0x475af281 in ?? () from /usr/lib/libtbb.so.2
#15 0x475ad9fb in ?? () from /usr/lib/libtbb.so.2
#16 0x475ae40c in ?? () from /usr/lib/libtbb.so.2
#17 0x47608793 in cvHaarDetectObjectsForROC(void const*, CvHaarClassifierCascade*, CvMemStorage*, std::vector<int, std::allocator<int> >&, std::vector<double, std::allocator<double> >&, double, int, int, CvSize, CvSize, bool) () from /usr/lib/libopencv_objdetect.so.2.3
#18 0x47608e9f in cvHaarDetectObjects () from /usr/lib/libopencv_objdetect.so.2.3
#19 0x483d30fb in libface::FaceDetect::cascadeResult (this=0xdbff568, inputImage=0xb2f10b10, casc=0xe6aba40, params=...) at /data/download/digikam/digikam-2.6.0-beta1/extra/libkface/libface/FaceDetect.cpp:459
#20 0x483d35c8 in libface::FaceDetect::verifyFace (this=0xdbff568, inputImage=0xb2f31450, face=...) at /data/download/digikam/digikam-2.6.0-beta1/extra/libkface/libface/FaceDetect.cpp:585
#21 0x483d42b5 in libface::FaceDetect::detectFaces (this=0xdbff568, inputImage=0xb2f31450, size=...) at /data/download/digikam/digikam-2.6.0-beta1/extra/libkface/libface/FaceDetect.cpp:771
#22 0x483d971d in libface::LibFace::detectFaces (this=0xb3d3ac8, image=0xb2f31450, originalSize=...) at /data/download/digikam/digikam-2.6.0-beta1/extra/libkface/libface/LibFace.cpp:157
#23 0x483c59fe in KFaceIface::Database::detectFaces (this=0x0, image=...) at /data/download/digikam/digikam-2.6.0-beta1/extra/libkface/libkface/database.cpp:189
#24 0x483cbb23 in KFaceIface::FaceDetector::detectFaces (this=0xd5c4c04, image=...) at /data/download/digikam/digikam-2.6.0-beta1/extra/libkface/libkface/facedetector.cpp:107
#25 0x082d6a54 in Digikam::DetectionWorker::process (this=0xd5c4bf8, package=...) at /data/download/digikam/digikam-2.6.0-beta1/core/utilities/facedetection/facepipeline.cpp:467
#26 0x082d6e4c in Digikam::DetectionWorker::qt_static_metacall (_o=0xd5c4bf8, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0xeb63c08) at /data/download/digikam/digikam-2.6.0-beta1/build/core/digikam/facepipeline_p.moc:318
#27 0x451e5752 in QMetaCallEvent::placeMetaCall(QObject*) () from /usr/lib/libQtCore.so.4
#28 0x451ee42b in QObject::event(QEvent*) () from /usr/lib/libQtCore.so.4
#29 0xb75a4ed2 in Digikam::WorkerObject::event (this=0xd5c4bf8, e=0xeb38000) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/workerobject.cpp:160
#30 0x45789134 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#31 0x4578e5d3 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#32 0x466fa972 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#33 0x451d35fe in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#34 0x451d7558 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib/libQtCore.so.4
#35 0x451d788d in QCoreApplication::sendPostedEvents(QObject*, int) () from /usr/lib/libQtCore.so.4
#36 0x45205eb5 in ?? () from /usr/lib/libQtCore.so.4
#37 0x43e9562f in g_main_dispatch (context=0xb2f349d0) at gmain.c:2441
#38 g_main_context_dispatch (context=0xb2f349d0) at gmain.c:3011
#39 0x43e95d70 in g_main_context_iterate (context=0xb2f349d0, block=1139427344, dispatch=1, self=0xb2fa4fd8) at gmain.c:3089
#40 0x43e9601f in g_main_context_iteration (context=0xb2f349d0, may_block=1) at gmain.c:3152
#41 0x452062b8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#42 0x451d24ee in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#43 0x451d2799 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#44 0xb75a414e in Digikam::WorkerObjectRunnable::run (this=0xd4d22e8) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:196
#45 0x450b0773 in ?? () from /usr/lib/libQtCore.so.4
#46 0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#47 0x43dc4cd3 in start_thread (arg=0x9c21ab40) at pthread_create.c:309
#48 0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 2 (Thread 0x9a262b40 (LWP 19007)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc8c04 in pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S:238
#2  0x450be5b0 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0x450b084c in ?? () from /usr/lib/libQtCore.so.4
#4  0x450be0b1 in ?? () from /usr/lib/libQtCore.so.4
#5  0x43dc4cd3 in start_thread (arg=0x9a262b40) at pthread_create.c:309
#6  0x43d0283e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:133

Thread 1 (Thread 0xb705a900 (LWP 18949)):
#0  0xb77f3424 in __kernel_vsyscall ()
#1  0x43dc885c in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S:172
#2  0x450be638 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#3  0x450aff61 in ?? () from /usr/lib/libQtCore.so.4
#4  0x450b19b9 in QThreadPool::~QThreadPool() () from /usr/lib/libQtCore.so.4
#5  0x450b1a23 in QThreadPool::~QThreadPool() () from /usr/lib/libQtCore.so.4
#6  0x451e7502 in QObjectPrivate::deleteChildren() () from /usr/lib/libQtCore.so.4
#7  0x451edc0a in QObject::~QObject() () from /usr/lib/libQtCore.so.4
#8  0xb75a3748 in Digikam::ThreadManager::~ThreadManager (this=0xa858aa8, __in_chrg=<optimized out>) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:257
#9  0xb75a37d9 in ~ThreadManagerCreator (this=0xa858aa8, __in_chrg=<optimized out>) at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:236
#10 destroy () at /data/download/digikam/digikam-2.6.0-beta1/core/libs/threads/threadmanager.cpp:241
#11 0xb73928e9 in KCleanUpGlobalStatic::~KCleanUpGlobalStatic (this=0xb77c9070, __in_chrg=<optimized out>) at /usr/include/kde4/kglobal.h:62
#12 0x43c42ff1 in __run_exit_handlers (status=1, listp=0x43db8384, run_list_atexit=true) at exit.c:78
#13 0x43c4307d in __GI_exit (status=1) at exit.c:100
#14 0x48cad6d0 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#15 0x466f94ca in KApplication::xioErrhandler(_XDisplay*) () from /usr/lib/libkdeui.so.5
#16 0x466f9505 in ?? () from /usr/lib/libkdeui.so.5
#17 0x44059075 in _XIOError () from /usr/lib/libX11.so.6
#18 0x440567cf in _XEventsQueued () from /usr/lib/libX11.so.6
#19 0x440470b8 in XEventsQueued () from /usr/lib/libX11.so.6
#20 0x4583d8e6 in ?? () from /usr/lib/libQtGui.so.4
#21 0x43e952ec in g_main_context_check (context=0xa549c70, max_priority=0, fds=0xb3adda0, n_fds=15) at gmain.c:2959
#22 0x43e95cd0 in g_main_context_iterate (context=0xa549c70, block=1139427344, dispatch=1, self=0xa549eb8) at gmain.c:3086
#23 0x43e9601f in g_main_context_iteration (context=0xa549c70, may_block=1) at gmain.c:3152
#24 0x452062b8 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#25 0x4583da9b in ?? () from /usr/lib/libQtGui.so.4
#26 0x451d24ee in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#27 0x451d2799 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#28 0x451d793b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#29 0x45786f35 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#30 0x080b8010 in main (argc=5, argv=0xbfbab384) at /data/download/digikam/digikam-2.6.0-beta1/core/digikam/main/main.cpp:232

This bug may be a duplicate of or related to bug 286418.

Possible duplicates by query: bug 290818, bug 286418.

Reported using DrKonqi
Comment 1 caulier.gilles 2012-02-19 22:08:15 UTC

*** This bug has been marked as a duplicate of bug 286418 ***
Comment 2 caulier.gilles 2019-12-23 06:22:08 UTC
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