Bug 284398

Summary: Crash while tagging persons
Product: [Applications] digikam Reporter: SB <sebastian>
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: 2.1.1   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 7.0.0

Description SB 2011-10-18 18:36:50 UTC
Application: digikam (2.1.1)
KDE Platform Version: 4.7.1 (4.7.1)
Qt Version: 4.7.4
Operating System: Linux 3.0.0-12-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
- What I was doing when the application crashes:
I tagged a person, but NO face detection or recognition ran in the background

The crash can be reproduced some of the time.

-- Backtrace:
Application: digiKam (digikam), signal: Segmentation fault
[Current thread is 1 (Thread 0xb4c4e8c0 (LWP 20510))]

Thread 7 (Thread 0xb3dffb70 (LWP 20514)):
#0  0x00ec4416 in __kernel_vsyscall ()
#1  0x00b8440e in poll () from /lib/i386-linux-gnu/libc.so.6
#2  0x098c234b in g_poll (fds=0xa133e38, nfds=3, timeout=-1) at /build/buildd/glib2.0-2.30.0/./glib/gpoll.c:132
#3  0x098b3896 in g_main_context_poll (n_fds=3, fds=0xa133e38, timeout=<optimized out>, context=0xa1218e0, priority=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3402
#4  g_main_context_iterate (context=0xa1218e0, block=160178976, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3084
#5  0x098b3f9b in g_main_loop_run (loop=0xa1218b8) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3297
#6  0x02ebccea in gdbus_shared_thread_func (user_data=0xa1218c8) at /build/buildd/glib2.0-2.30.0/./gio/gdbusprivate.c:276
#7  0x098da5f4 in g_thread_create_proxy (data=0xa121970) at /build/buildd/glib2.0-2.30.0/./glib/gthread.c:1962
#8  0x00ea4d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#9  0x00b930ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 6 (Thread 0xb2abbb70 (LWP 20515)):
#0  0x00ec4416 in __kernel_vsyscall ()
#1  0x00ea8a5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x00ba0cfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x01893cc0 in wait (time=4294967295, this=0xa232e48) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xa232d74, mutex=0xa232d70, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x081faf45 in Digikam::ScanController::run (this=0xa231ce0) at /build/buildd/digikam-2.1.1/core/digikam/database/scancontroller.cpp:647
#6  0x018937b3 in QThreadPrivate::start (arg=0xa231ce0) at thread/qthread_unix.cpp:331
#7  0x00ea4d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x00b930ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 5 (Thread 0xb22bab70 (LWP 20516)):
#0  0x02322d10 in clock_gettime () from /lib/i386-linux-gnu/librt.so.1
#1  0x018ea7d5 in do_gettime (frac=0xb22b9e70, sec=0xb22b9e68) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x019bd4b6 in QTimerInfoList::updateCurrentTime (this=0xb3e02574) at kernel/qeventdispatcher_unix.cpp:339
#4  0x019bd80a in QTimerInfoList::timerWait (this=0xb3e02574, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x019bc053 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xb22b9f7c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x019bc0ed in timerSourcePrepare (source=0xb3e02540, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x098b288c in g_main_context_prepare (context=0xb3e01060, priority=0xb22b9fd8) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:2762
#8  0x098b3637 in g_main_context_iterate (context=0xb3e01060, block=1, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3069
#9  0x098b3c2a in g_main_context_iteration (context=0xb3e01060, may_block=1) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3152
#10 0x019bcb37 in QEventDispatcherGlib::processEvents (this=0xb3e00570, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x0198d1dd in QEventLoop::processEvents (this=0xb22ba100, flags=...) at kernel/qeventloop.cpp:149
#12 0x0198d421 in QEventLoop::exec (this=0xb22ba100, flags=...) at kernel/qeventloop.cpp:201
#13 0x0189090b in QThread::exec (this=0xa235e28) at thread/qthread.cpp:498
#14 0x0196de2d in QInotifyFileSystemWatcherEngine::run (this=0xa235e28) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x018937b3 in QThreadPrivate::start (arg=0xa235e28) at thread/qthread_unix.cpp:331
#16 0x00ea4d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0x00b930ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 4 (Thread 0xb1ab9b70 (LWP 20518)):
#0  0x00ec4416 in __kernel_vsyscall ()
#1  0x00ea8a5c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0x00ba0cfc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0x01893cc0 in wait (time=4294967295, this=0xa4ad168) at thread/qwaitcondition_unix.cpp:88
#4  QWaitCondition::wait (this=0xa4a48a8, mutex=0xa4a48a4, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#5  0x09624f54 in Digikam::ParkingThread::run (this=0xa4a4898) at /build/buildd/digikam-2.1.1/core/libs/threads/threadmanager.cpp:119
#6  0x018937b3 in QThreadPrivate::start (arg=0xa4a4898) at thread/qthread_unix.cpp:331
#7  0x00ea4d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0x00b930ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 3 (Thread 0xa7affb70 (LWP 20786)):
#0  Digikam::DatabaseCoreBackend::execSql (this=0xa158ad8, sql=..., boundValue1=..., boundValue2=..., boundValue3=..., boundValue4=..., values=0x0, lastInsertId=0xa7afec28) at /build/buildd/digikam-2.1.1/core/libs/database/databasecorebackend.cpp:920
#1  0x095be901 in Digikam::ThumbnailDB::insertThumbnail (this=0xa7afecdc, info=..., lastInsertId=0xa7afecfc) at /build/buildd/digikam-2.1.1/core/libs/database/thumbnaildb.cpp:262
#2  0x095f8ba5 in Digikam::ThumbnailCreator::storeInDatabase (this=0xa7afecdc, info=..., image=...) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/thumbnailcreator.cpp:753
#3  0x095fec01 in Digikam::ThumbnailCreator::load (this=0xa50a3e0, path=..., rect=..., pregenerate=true) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/thumbnailcreator.cpp:264
#4  0x095ffcb2 in Digikam::ThumbnailCreator::pregenerate (this=0xa50a3e0, path=...) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/thumbnailcreator.cpp:180
#5  0x0960fc7d in Digikam::ThumbnailLoadingTask::execute (this=0xbf918a0) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/thumbnailtask.cpp:79
#6  0x095db4e8 in Digikam::LoadSaveThread::run (this=0xa50b640) at /build/buildd/digikam-2.1.1/core/libs/threadimageio/loadsavethread.cpp:118
#7  0x096268ee in Digikam::DynamicThread::DynamicThreadPriv::run (this=0xa642cc0) at /build/buildd/digikam-2.1.1/core/libs/threads/dynamicthread.cpp:328
#8  0x01887651 in QThreadPoolThread::run (this=0xba071c0) at concurrent/qthreadpool.cpp:106
#9  0x018937b3 in QThreadPrivate::start (arg=0xba071c0) at thread/qthread_unix.cpp:331
#10 0x00ea4d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#11 0x00b930ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 2 (Thread 0x9c851b70 (LWP 20794)):
#0  0x00ce8ba5 in ?? () from /usr/lib/i386-linux-gnu/libgomp.so.1
#1  0x00ce8c3e in ?? () from /usr/lib/i386-linux-gnu/libgomp.so.1
#2  0x00ce74d8 in ?? () from /usr/lib/i386-linux-gnu/libgomp.so.1
#3  0x00ea4d31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#4  0x00b930ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb4c4e8c0 (LWP 20510)):
[KCrash Handler]
#7  QVariant::~QVariant (this=0x7b2a2c1f, __in_chrg=<optimized out>) at kernel/qvariant.cpp:1407
#8  0x009f7e16 in node_destruct (n=<optimized out>, this=<optimized out>) at /usr/include/qt4/QtCore/qlist.h:375
#9  erase (alast=<optimized out>, afirst=<optimized out>, this=<optimized out>) at /usr/include/qt4/QtCore/qlist.h:792
#10 Digikam::ImageModel::removeRowPairs (this=0xa4a34b8, toRemove=...) at /build/buildd/digikam-2.1.1/core/libs/models/imagemodel.cpp:878
#11 0x009f9c1f in Digikam::ImageModel::finishIncrementalRefresh (this=0xa4a34b8) at /build/buildd/digikam-2.1.1/core/libs/models/imagemodel.cpp:705
#12 0x0818fa97 in Digikam::ImageAlbumModel::slotResult (this=0xa4a34b8, job=0xb2d5a50) at /build/buildd/digikam-2.1.1/core/libs/models/imagealbummodel.cpp:307
#13 0x081910ba in Digikam::ImageAlbumModel::qt_metacall (this=0xa4a34b8, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfa031b8) at /build/buildd/digikam-2.1.1/obj-i686-linux-gnu/core/digikam/imagealbummodel.moc:117
#14 0x01994b7d in metacall (argv=0xbfa031b8, idx=54, cl=QMetaObject::InvokeMetaMethod, object=0xa4a34b8) at kernel/qmetaobject.cpp:237
#15 QMetaObject::metacall (object=0xa4a34b8, cl=QMetaObject::InvokeMetaMethod, idx=54, argv=0xbfa031b8) at kernel/qmetaobject.cpp:232
#16 0x019a3a6a in QMetaObject::activate (sender=0xb2d5a50, m=0x182058c, local_signal_index=3, argv=0xbfa031b8) at kernel/qobject.cpp:3278
#17 0x01672a05 in KJob::result (this=0xb2d5a50, _t1=0xb2d5a50) at ./kjob.moc:194
#18 0x01672a58 in KJob::emitResult (this=0xb2d5a50) at ../../kdecore/jobs/kjob.cpp:312
#19 0x0664b738 in KIO::SimpleJob::slotFinished (this=0xb2d5a50) at ../../kio/kio/job.cpp:494
#20 0x066542bd in KIO::TransferJob::slotFinished (this=0xb2d5a50) at ../../kio/kio/job.cpp:1081
#21 0x066528f4 in KIO::TransferJob::qt_metacall (this=0xb2d5a50, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfa03474) at ./jobclasses.moc:369
#22 0x06652a13 in KIO::SpecialJob::qt_metacall (this=0xb2d5a50, _c=QMetaObject::InvokeMetaMethod, _id=47, _a=0xbfa03474) at ./jobclasses.moc:898
#23 0x01994b7d in metacall (argv=0xbfa03474, idx=47, cl=QMetaObject::InvokeMetaMethod, object=0xb2d5a50) at kernel/qmetaobject.cpp:237
#24 QMetaObject::metacall (object=0xb2d5a50, cl=QMetaObject::InvokeMetaMethod, idx=47, argv=0xbfa03474) at kernel/qmetaobject.cpp:232
#25 0x019a3a6a in QMetaObject::activate (sender=0xba1de78, m=0x68266a0, local_signal_index=4, argv=0x0) at kernel/qobject.cpp:3278
#26 0x06706b95 in KIO::SlaveInterface::finished (this=0xba1de78) at ./slaveinterface.moc:171
#27 0x06709a19 in KIO::SlaveInterface::dispatch (this=0xba1de78, _cmd=104, rawdata=...) at ../../kio/kio/slaveinterface.cpp:172
#28 0x0670617a in KIO::SlaveInterface::dispatch (this=0xba1de78) at ../../kio/kio/slaveinterface.cpp:88
#29 0x066f77a8 in KIO::Slave::gotInput (this=0xba1de78) at ../../kio/kio/slave.cpp:344
#30 0x066f801c in KIO::Slave::qt_metacall (this=0xba1de78, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xbfa03754) at ./slave.moc:82
#31 0x01994b7d in metacall (argv=0xbfa03754, idx=30, cl=QMetaObject::InvokeMetaMethod, object=0xba1de78) at kernel/qmetaobject.cpp:237
#32 QMetaObject::metacall (object=0xba1de78, cl=QMetaObject::InvokeMetaMethod, idx=30, argv=0xbfa03754) at kernel/qmetaobject.cpp:232
#33 0x019a3a6a in QMetaObject::activate (sender=0xa7e4e40, m=0x6823508, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3278
#34 0x06616cd5 in KIO::Connection::readyRead (this=0xa7e4e40) at ./connection.moc:92
#35 0x0661750a in dequeue (this=<optimized out>) at ../../kio/kio/connection.cpp:82
#36 KIO::ConnectionPrivate::dequeue (this=0xbb723c8) at ../../kio/kio/connection.cpp:71
#37 0x066175df in KIO::Connection::qt_metacall (this=0xa7e4e40, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0xb8e7750) at ./connection.moc:79
#38 0x01994b7d in metacall (argv=0xb8e7750, idx=5, cl=QMetaObject::InvokeMetaMethod, object=0xa7e4e40) at kernel/qmetaobject.cpp:237
#39 QMetaObject::metacall (object=0xa7e4e40, cl=QMetaObject::InvokeMetaMethod, idx=5, argv=0xb8e7750) at kernel/qmetaobject.cpp:232
#40 0x0199f685 in QMetaCallEvent::placeMetaCall (this=0xaf5f458, object=0xa7e4e40) at kernel/qobject.cpp:535
#41 0x019a6b52 in QObject::event (this=0xa7e4e40, e=0xaf5f458) at kernel/qobject.cpp:1217
#42 0x05420d54 in notify_helper (e=0xaf5f458, receiver=0xa7e4e40, this=0xa02c180) at kernel/qapplication.cpp:4486
#43 QApplicationPrivate::notify_helper (this=0xa02c180, receiver=0xa7e4e40, e=0xaf5f458) at kernel/qapplication.cpp:4458
#44 0x05426103 in QApplication::notify (this=0xaf5f458, receiver=0xa7e4e40, e=0xaf5f458) at kernel/qapplication.cpp:3886
#45 0x0604c721 in KApplication::notify (this=0xbfa03fa0, receiver=0xa7e4e40, event=0xaf5f458) at ../../kdeui/kernel/kapplication.cpp:311
#46 0x0198e19e in QCoreApplication::notifyInternal (this=0xbfa03fa0, receiver=0xa7e4e40, event=0xaf5f458) at kernel/qcoreapplication.cpp:787
#47 0x01991f93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#48 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9feaba0) at kernel/qcoreapplication.cpp:1428
#49 0x019920ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#50 0x019bc6a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#51 postEventSourceDispatch (s=0xa02f118) at kernel/qeventdispatcher_glib.cpp:277
#52 0x098b325f in g_main_dispatch (context=0xa02f088) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:2441
#53 g_main_context_dispatch (context=0xa02f088) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3011
#54 0x098b3990 in g_main_context_iterate (context=0xa02f088, block=160178976, dispatch=1, self=<optimized out>) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3089
#55 0x098b3c2a in g_main_context_iteration (context=0xa02f088, may_block=1) at /build/buildd/glib2.0-2.30.0/./glib/gmain.c:3152
#56 0x019bcada in QEventDispatcherGlib::processEvents (this=0x9feb8c8, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#57 0x054d8e3a in QGuiEventDispatcherGlib::processEvents (this=0x9feb8c8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#58 0x0198d1dd in QEventLoop::processEvents (this=0xbfa03e84, flags=...) at kernel/qeventloop.cpp:149
#59 0x0198d421 in QEventLoop::exec (this=0xbfa03e84, flags=...) at kernel/qeventloop.cpp:201
#60 0x0199219d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#61 0x0541e8f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#62 0x080b4b64 in main (argc=) at /build/buildd/digikam-2.1.1/core/digikam/main/main.cpp:232

Possible duplicates by query: bug 284137, bug 283540, bug 283197, bug 283165, bug 280520.

Reported using DrKonqi
Comment 1 caulier.gilles 2011-10-19 07:08:01 UTC

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