Bug 289003

Summary: crash when trying to face-scan all images
Product: [Applications] digikam Reporter: simon
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: 2.5.0   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 7.0.0
Sentry Crash Report:

Description simon 2011-12-14 21:48:03 UTC
Application: digikam (2.5.0)
KDE Platform Version: 4.7.4 (4.7.4) (Compiled from sources)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-tuxonice-r1 x86_64
Distribution (Platform): Gentoo Packages

-- Information about the crash:
- What I was doing when the application crashed:

hi,
tried to scan all images in all folders for faces ignoring already scanned ones (which were just a few folders)

The crash can be reproduced every time.

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
[Current thread is 1 (Thread 0x7f92d6e527c0 (LWP 29371))]

Thread 10 (Thread 0x7f92bae18710 (LWP 29372)):
#0  0x00007f92ce3fe3dc in pthread_cond_wait () from /lib64/libpthread.so.0
#1  0x00007f92ce68bceb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x000000000064939b in Digikam::ScanController::run (this=0xeb7210) at /home/user/kde/src/digikam-sc/core/digikam/database/scancontroller.cpp:647
#3  0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#5  0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 9 (Thread 0x7f92ba617710 (LWP 29373)):
#0  0x00007f92c8c3071d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#1  0x0000000000000001 in ?? ()
#2  0x0000000000001000 in ?? ()
#3  0x00007f92c8c347cb in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f92ce7a5666 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#5  0x00007f92ce778b72 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f92ce778f5d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#7  0x00007f92ce6881ad in QThread::exec() () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f92ce758f28 in QInotifyFileSystemWatcherEngine::run() () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#11 0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7f9280ceb710 (LWP 29414)):
#0  0x00007f92ce3fe3dc in pthread_cond_wait () from /lib64/libpthread.so.0
#1  0x00007f92ce68a40b in QMutexPrivate::wait(int) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007f92ce685dc5 in QMutex::lock() () from /usr/lib64/qt4/libQtCore.so.4
#3  0x00007f92d3b7f56e in Digikam::LoadingCache::CacheLock::CacheLock (this=0x7f9280cea390, cache=0xf55e30) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/loadingcache.cpp:499
#4  0x00007f92d3b88e78 in Digikam::PreviewLoadingTask::execute (this=0x5d02f30) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/previewtask.cpp:69
#5  0x00007f92d3b7491f in Digikam::LoadSaveThread::run (this=0x13b8fe0) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/loadsavethread.cpp:118
#6  0x00007f92d3ba9462 in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x12c8910) at /home/user/kde/src/digikam-sc/core/libs/threads/dynamicthread.cpp:328
#7  0x00007f92ce67f9f8 in QThreadPoolThread::run() () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7f92804ea710 (LWP 29415)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007f92804e9a40 in ?? ()
#2  0x00007fff4e35376e in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0x7f927fce9710 (LWP 29416)):
#0  0x00007f92ce6de720 in unixCheckClockType() () from /usr/lib64/qt4/libQtCore.so.4
#1  0x00007f92ce6de769 in qt_gettime() () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007f92ce7a763d in QTimerInfoList::updateCurrentTime() () from /usr/lib64/qt4/libQtCore.so.4
#3  0x00007f92ce7a7665 in QTimerInfoList::timerWait(timeval&) () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f92ce7a584d in timerSourcePrepareHelper(GTimerSource*, int*) () from /usr/lib64/qt4/libQtCore.so.4
#5  0x00007f92ce7a58ed in timerSourcePrepare(_GSource*, int*) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f92c8c33ebf in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#7  0x00007f92c8c3427d in g_main_context_iterate () from /usr/lib64/libglib-2.0.so.0
#8  0x00007f92c8c347cb in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#9  0x00007f92ce7a5666 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f92ce778b72 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00007f92ce778f5d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#12 0x00007f92d3ba583a in Digikam::WorkerObjectRunnable::run (this=0x5d3d9d0) at /home/user/kde/src/digikam-sc/core/libs/threads/threadmanager.cpp:196
#13 0x00007f92ce67f9f8 in QThreadPoolThread::run() () from /usr/lib64/qt4/libQtCore.so.4
#14 0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#15 0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#16 0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f927e120710 (LWP 29417)):
#0  0x00007f92cd43f226 in poll () from /lib64/libc.so.6
#1  0x00007f92c8c34452 in g_main_context_iterate () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f92c8c347cb in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f92ce7a5666 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f92ce778b72 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#5  0x00007f92ce778f5d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f92d3ba583a in Digikam::WorkerObjectRunnable::run (this=0x50c1290) at /home/user/kde/src/digikam-sc/core/libs/threads/threadmanager.cpp:196
#7  0x00007f92ce67f9f8 in QThreadPoolThread::run() () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#9  0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f9271383710 (LWP 29418)):
[KCrash Handler]
#6  0x00007f92cd3a6445 in raise () from /lib64/libc.so.6
#7  0x00007f92cd3a7941 in abort () from /lib64/libc.so.6
#8  0x00007f92cd3e2a3f in __libc_message () from /lib64/libc.so.6
#9  0x00007f92cd3e80f8 in malloc_printerr () from /lib64/libc.so.6
#10 0x00007f92d3986148 in Digikam::DImgPrivate::~DImgPrivate (this=0x5ace490, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/core/libs/dimg/dimg_p.h:87
#11 0x00007f92d3987819 in Digikam::DSharedDataPointer<Digikam::DImgPrivate>::~DSharedDataPointer (this=0x5cf1330, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/core/libs/dimg/dshareddata.h:177
#12 0x00007f92d39780e2 in Digikam::DImg::~DImg (this=0x5cf1330, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/core/libs/dimg/dimg.cpp:175
#13 0x00007f92d3b81fc1 in QCache<QString, Digikam::DImg>::unlink(QCache<QString, Digikam::DImg>::Node&) () from /home/user/kde/lib64/libdigikamcore.so.2
#14 0x00007f92d3b81c78 in QCache<QString, Digikam::DImg>::trim(int) () from /home/user/kde/lib64/libdigikamcore.so.2
#15 0x00007f92d3b803d0 in QCache<QString, Digikam::DImg>::insert (this=0xf07430, akey=..., aobject=0x5b4eab0, acost=7680000) at /usr/include/qt4/QtCore/qcache.h:188
#16 0x00007f92d3b7d822 in Digikam::LoadingCache::putImage (this=0xf55e30, cacheKey=..., img=0x5b4eab0, filePath=...) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/loadingcache.cpp:200
#17 0x00007f92d3b8ae3a in Digikam::PreviewLoadingTask::execute (this=0x5c3f980) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/previewtask.cpp:413
#18 0x00007f92d3b7491f in Digikam::LoadSaveThread::run (this=0x51547f0) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/loadsavethread.cpp:118
#19 0x00007f92d3ba9462 in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x5154920) at /home/user/kde/src/digikam-sc/core/libs/threads/dynamicthread.cpp:328
#20 0x00007f92ce67f9f8 in QThreadPoolThread::run() () from /usr/lib64/qt4/libQtCore.so.4
#21 0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#22 0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#23 0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f9270b82710 (LWP 29419)):
#0  0xffffffffff60017b in ?? ()
#1  0x00007f9270b81a40 in ?? ()
#2  0x00007fff4e35376e in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0x7f9272ef5710 (LWP 29477)):
#0  0x00007f92cd43b09d in write () from /lib64/libc.so.6
#1  0x00007f92cd3e4043 in _IO_file_write () from /lib64/libc.so.6
#2  0x00007f92cd3e3caa in new_do_write () from /lib64/libc.so.6
#3  0x00007f92cd3e3f8e in _IO_file_xsputn () from /lib64/libc.so.6
#4  0x00007f92cd3bbc1e in buffered_vfprintf () from /lib64/libc.so.6
#5  0x00007f92cd3b6b82 in vfprintf () from /lib64/libc.so.6
#6  0x00007f92cd45ba39 in __fprintf_chk () from /lib64/libc.so.6
#7  0x00007f92ce6814c8 in qt_message_output(QtMsgType, char const*) () from /usr/lib64/qt4/libQtCore.so.4
#8  0x00007f92cebbff90 in KLineEndStrippingDebugStream::writeData (this=<value optimized out>, data=<value optimized out>, len=32322) at /var/tmp/portage/kde-base/kdelibs-9999/work/kdelibs-9999/kdecore/io/kdebug.cpp:186
#9  0x00007f92ce711266 in QIODevice::write(char const*, long long) () from /usr/lib64/qt4/libQtCore.so.4
#10 0x00007f92ce71e3d8 in QTextStreamPrivate::flushWriteBuffer() () from /usr/lib64/qt4/libQtCore.so.4
#11 0x00007f92ce722900 in QTextStreamPrivate::putString(QString const&, bool) () from /usr/lib64/qt4/libQtCore.so.4
#12 0x00007f92ce71e5b1 in QTextStream::operator<<(QByteArray const&) () from /usr/lib64/qt4/libQtCore.so.4
#13 0x00007f92ce79f75c in streamDebug(QDebug, QVariant const&) () from /usr/lib64/qt4/libQtCore.so.4
#14 0x00007f92cf409c28 in streamDebug(QDebug, QVariant const&) () from /usr/lib64/qt4/libQtGui.so.4
#15 0x00007f92ce79ebc9 in operator<<(QDebug, QVariant const&) () from /usr/lib64/qt4/libQtCore.so.4
#16 0x00007f92d3b4a697 in operator<< <QVariant> (debug=..., list=...) at /usr/include/qt4/QtCore/qdebug.h:169
#17 0x00007f92d3b42cd4 in Digikam::DatabaseCoreBackendPrivate::debugOutputFailedQuery (this=0xf52760, query=...) at /home/user/kde/src/digikam-sc/core/libs/database/databasecorebackend.cpp:342
#18 0x00007f92d3b47a81 in Digikam::DatabaseCoreBackend::queryErrorHandling (this=0xcca900, query=..., retries=0) at /home/user/kde/src/digikam-sc/core/libs/database/databasecorebackend.cpp:1300
#19 0x00007f92d3b47ecd in Digikam::DatabaseCoreBackend::exec (this=0xcca900, query=...) at /home/user/kde/src/digikam-sc/core/libs/database/databasecorebackend.cpp:1411
#20 0x00007f92d3b4670a in Digikam::DatabaseCoreBackend::execQuery (this=0xcca900, query=..., boundValue1=..., boundValue2=..., boundValue3=..., boundValue4=...) at /home/user/kde/src/digikam-sc/core/libs/database/databasecorebackend.cpp:1077
#21 0x00007f92d3b46314 in Digikam::DatabaseCoreBackend::execQuery (this=0xcca900, sql=..., boundValue1=..., boundValue2=..., boundValue3=..., boundValue4=...) at /home/user/kde/src/digikam-sc/core/libs/database/databasecorebackend.cpp:1022
#22 0x00007f92d3b45d94 in Digikam::DatabaseCoreBackend::execSql (this=0xcca900, sql=..., boundValue1=..., boundValue2=..., boundValue3=..., boundValue4=..., values=0x0, lastInsertId=0x7f9272ef4590) at /home/user/kde/src/digikam-sc/core/libs/database/databasecorebackend.cpp:921
#23 0x00007f92d3b53b48 in Digikam::ThumbnailDB::insertThumbnail (this=0xef3ad0, info=..., lastInsertId=0x7f9272ef4670) at /home/user/kde/src/digikam-sc/core/libs/database/thumbnaildb.cpp:262
#24 0x00007f92d3b904a0 in Digikam::ThumbnailCreator::storeInDatabase (this=0x1173780, info=..., image=...) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/thumbnailcreator.cpp:753
#25 0x00007f92d3b8d62e in Digikam::ThumbnailCreator::load (this=0x1173780, path=..., rect=..., pregenerate=true) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/thumbnailcreator.cpp:264
#26 0x00007f92d3b8cf82 in Digikam::ThumbnailCreator::pregenerate (this=0x1173780, path=...) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/thumbnailcreator.cpp:180
#27 0x00007f92d3b9d279 in Digikam::ThumbnailLoadingTask::execute (this=0x5f6d3e0) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/thumbnailtask.cpp:79
#28 0x00007f92d3b7491f in Digikam::LoadSaveThread::run (this=0x132b570) at /home/user/kde/src/digikam-sc/core/libs/threadimageio/loadsavethread.cpp:118
#29 0x00007f92d3ba9462 in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x11974c0) at /home/user/kde/src/digikam-sc/core/libs/threads/dynamicthread.cpp:328
#30 0x00007f92ce67f9f8 in QThreadPoolThread::run() () from /usr/lib64/qt4/libQtCore.so.4
#31 0x00007f92ce68b155 in QThreadPrivate::start(void*) () from /usr/lib64/qt4/libQtCore.so.4
#32 0x00007f92ce3fa4e7 in start_thread () from /lib64/libpthread.so.0
#33 0x00007f92cd44828d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f92d6e527c0 (LWP 29371)):
#0  0x00007f92ce3fe3dc in pthread_cond_wait () from /lib64/libpthread.so.0
#1  0x00007f92ce68bceb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/qt4/libQtCore.so.4
#2  0x00007f92ce67f7e1 in QThreadPoolPrivate::waitForDone() () from /usr/lib64/qt4/libQtCore.so.4
#3  0x00007f92ce67fecf in QThreadPool::~QThreadPool() () from /usr/lib64/qt4/libQtCore.so.4
#4  0x00007f92ce78ba0e in QObjectPrivate::deleteChildren() () from /usr/lib64/qt4/libQtCore.so.4
#5  0x00007f92ce792f1b in QObject::~QObject() () from /usr/lib64/qt4/libQtCore.so.4
#6  0x00007f92d3ba5da6 in Digikam::ThreadManager::~ThreadManager (this=0x12f50a0, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/core/libs/threads/threadmanager.cpp:260
#7  0x00007f92d3ba687c in Digikam::ThreadManagerCreator::~ThreadManagerCreator (this=0x12f50a0, __in_chrg=<value optimized out>) at /home/user/kde/src/digikam-sc/core/libs/threads/threadmanager.cpp:237
#8  0x00007f92d3ba5aa9 in destroy () at /home/user/kde/src/digikam-sc/core/libs/threads/threadmanager.cpp:241
#9  0x00007f92d3986323 in KCleanUpGlobalStatic::~KCleanUpGlobalStatic (this=0x7f92d4091148, __in_chrg=<value optimized out>) at /usr/include/kglobal.h:62
#10 0x00007f92cd3a8fd5 in __run_exit_handlers () from /lib64/libc.so.6
#11 0x00007f92cd3a9025 in exit () from /lib64/libc.so.6
#12 0x00007f92cf43ebc8 in qt_xio_errhandler () from /usr/lib64/qt4/libQtGui.so.4
#13 0x00007f92d0108b48 in KApplication::xioErrhandler (this=0x7fff4e295cb0, dpy=0xccffa0) at /var/tmp/portage/kde-base/kdelibs-9999/work/kdelibs-9999/kdeui/kernel/kapplication.cpp:419
#14 0x00007f92cc5b79ee in _XIOError () from /usr/lib64/libX11.so.6
#15 0x00007f92cc5b627d in _XEventsQueued () from /usr/lib64/libX11.so.6
#16 0x00007f92cc5a6b1b in XEventsQueued () from /usr/lib64/libX11.so.6
#17 0x00007f92cf4781ac in x11EventSourceCheck(_GSource*) () from /usr/lib64/qt4/libQtGui.so.4
#18 0x00007f92c8c33b5a in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#19 0x00007f92c8c34499 in g_main_context_iterate () from /usr/lib64/libglib-2.0.so.0
#20 0x00007f92c8c347cb in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#21 0x00007f92ce7a5613 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#22 0x00007f92cf477fee in QGuiEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtGui.so.4
#23 0x00007f92ce778b72 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#24 0x00007f92ce778f5d in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/qt4/libQtCore.so.4
#25 0x00007f92ce77cf53 in QCoreApplication::exec() () from /usr/lib64/qt4/libQtCore.so.4
#26 0x00000000007585d5 in main (argc=5, argv=0x7fff4e296388) at /home/user/kde/src/digikam-sc/core/digikam/main/main.cpp:232

Possible duplicates by query: bug 276592.

Reported using DrKonqi
Comment 1 caulier.gilles 2011-12-14 22:27:35 UTC

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