Bug 279495

Summary: Digikam crashes while doing mass add of tags to photos.
Product: [Applications] digikam Reporter: thcs2000
Component: Tags-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: althio.forum, caulier.gilles
Priority: NOR    
Version: 1.9.0   
Target Milestone: ---   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In: 7.6.0
Sentry Crash Report:

Description thcs2000 2011-08-06 01:06:53 UTC
Application: digikam (1.9.0)
KDE Platform Version: 4.5.5 (KDE 4.5.5)
Qt Version: 4.7.0
Operating System: Linux 2.6.35-30-generic i686
Distribution: Ubuntu 10.10

-- Information about the crash:
- What I was doing when the application crashed:
From advanced search for all photos without a tag - selecting multiple photos and applying a tag. After several seconds digikam crashes. Does not happen every time, just at irregular intervals. May perform 6-10 succesful sets of taggings before a crash occures.

The crash can be reproduced some of the time.

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

Thread 21 (Thread 0xb63bfb70 (LWP 2941)):
#0  0x002f6441 in pthread_getspecific () from /lib/libpthread.so.0
#1  0x01c95ce5 in ?? () from /usr/lib/libgthread-2.0.so.0
#2  0x01b25e22 in g_thread_self () from /lib/libglib-2.0.so.0
#3  0x01afd5c2 in g_main_context_acquire () from /lib/libglib-2.0.so.0
#4  0x01aff1ee in ?? () from /lib/libglib-2.0.so.0
#5  0x01affba7 in g_main_loop_run () from /lib/libglib-2.0.so.0
#6  0x032589c4 in ?? () from /usr/lib/libgio-2.0.so.0
#7  0x01b2648f in ?? () from /lib/libglib-2.0.so.0
#8  0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#9  0x03bb369e in clone () from /lib/libc.so.6

Thread 20 (Thread 0xb3c5eb70 (LWP 2961)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x002f54dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x051bdef2 in QMutexPrivate::wait (this=0x97cb528, timeout=-1) at thread/qmutex_unix.cpp:84
#3  0x051b95ca in QMutex::lock (this=0x97cb504) at thread/qmutex.cpp:167
#4  0x006c08a8 in Digikam::DatabaseAccess::DatabaseAccess (this=0xb3c5e0df) at /build/buildd/digikam-1.9.0/libs/database/databaseaccess.cpp:100
#5  0x006b3395 in Digikam::CollectionManager::locationForAlbumRootId (this=0x9728d40, id=9) at /build/buildd/digikam-1.9.0/libs/database/collectionmanager.cpp:1256
#6  0x006ab64f in Digikam::CollectionScanner::scanForStaleAlbums (this=0xb3c5e2b0, locations=...) at /build/buildd/digikam-1.9.0/libs/database/collectionscanner.cpp:562
#7  0x006afd03 in Digikam::CollectionScanner::partialScan (this=0xb3c5e2b0, albumRoot=..., album=...) at /build/buildd/digikam-1.9.0/libs/database/collectionscanner.cpp:365
#8  0x006b02a4 in Digikam::CollectionScanner::partialScan (this=0xb3c5e2b0, filePath=...) at /build/buildd/digikam-1.9.0/libs/database/collectionscanner.cpp:326
#9  0x08266c6f in Digikam::ScanController::run (this=0x97b18c0) at /build/buildd/digikam-1.9.0/digikam/scancontroller.cpp:612
#10 0x051bedf9 in QThreadPrivate::start (arg=0x97b18c0) at thread/qthread_unix.cpp:266
#11 0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#12 0x03bb369e in clone () from /lib/libc.so.6

Thread 19 (Thread 0xb345db70 (LWP 3040)):
#0  0x03ba4dd4 in poll () from /lib/libc.so.6
#1  0x01b0ca1b in g_poll () from /lib/libglib-2.0.so.0
#2  0x01aff43c in ?? () from /lib/libglib-2.0.so.0
#3  0x01aff848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x052ef59f in QEventDispatcherGlib::processEvents (this=0x99873e8, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x052bf609 in QEventLoop::processEvents (this=0xb345d2a0, flags=) at kernel/qeventloop.cpp:149
#6  0x052bfa8a in QEventLoop::exec (this=0xb345d2a0, flags=...) at kernel/qeventloop.cpp:201
#7  0x051bbb7e in QThread::exec (this=0x9986df8) at thread/qthread.cpp:490
#8  0x0073898d in Digikam::ImageFilterModelWorker::Thread::run (this=0x9986df8) at /build/buildd/digikam-1.9.0/obj-i686-linux-gnu/digikam/../../libs/models/imagefiltermodelthreads.h:74
#9  0x051bedf9 in QThreadPrivate::start (arg=0x9986df8) at thread/qthread_unix.cpp:266
#10 0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#11 0x03bb369e in clone () from /lib/libc.so.6

Thread 18 (Thread 0xb1f86b70 (LWP 3041)):
#0  0x01afee55 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#1  0x01aff279 in ?? () from /lib/libglib-2.0.so.0
#2  0x01aff848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x052ef59f in QEventDispatcherGlib::processEvents (this=0x99870a8, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#4  0x052bf609 in QEventLoop::processEvents (this=0xb1f862a0, flags=) at kernel/qeventloop.cpp:149
#5  0x052bfa8a in QEventLoop::exec (this=0xb1f862a0, flags=...) at kernel/qeventloop.cpp:201
#6  0x051bbb7e in QThread::exec (this=0x9987128) at thread/qthread.cpp:490
#7  0x0073898d in Digikam::ImageFilterModelWorker::Thread::run (this=0x9987128) at /build/buildd/digikam-1.9.0/obj-i686-linux-gnu/digikam/../../libs/models/imagefiltermodelthreads.h:74
#8  0x051bedf9 in QThreadPrivate::start (arg=0x9987128) at thread/qthread_unix.cpp:266
#9  0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#10 0x03bb369e in clone () from /lib/libc.so.6

Thread 17 (Thread 0xb1704b70 (LWP 3042)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x002f54dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x051bf9c7 in wait (this=0x9989f38, mutex=0x9989f34, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#3  QWaitCondition::wait (this=0x9989f38, mutex=0x9989f34, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#4  0x0225d4ca in Digikam::ParkingThread::run (this=0x9989f28) at /build/buildd/digikam-1.9.0/libs/threads/threadmanager.cpp:119
#5  0x051bedf9 in QThreadPrivate::start (arg=0x9989f28) at thread/qthread_unix.cpp:266
#6  0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#7  0x03bb369e in clone () from /lib/libc.so.6

Thread 16 (Thread 0xb0f03b70 (LWP 3043)):
#0  0x002f33eb in pthread_mutex_lock () from /lib/libpthread.so.0
#1  0x01aff82e in g_main_context_iteration () from /lib/libglib-2.0.so.0
#2  0x052ef59f in QEventDispatcherGlib::processEvents (this=0x99bb438, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#3  0x052bf609 in QEventLoop::processEvents (this=0xb0f032c0, flags=) at kernel/qeventloop.cpp:149
#4  0x052bfa8a in QEventLoop::exec (this=0xb0f032c0, flags=...) at kernel/qeventloop.cpp:201
#5  0x051bbb7e in QThread::exec (this=0x99b7228) at thread/qthread.cpp:490
#6  0x051bedf9 in QThreadPrivate::start (arg=0x99b7228) at thread/qthread_unix.cpp:266
#7  0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#8  0x03bb369e in clone () from /lib/libc.so.6

Thread 15 (Thread 0xb0702b70 (LWP 3044)):
[KCrash Handler]
#7  0x00ba3416 in __kernel_vsyscall ()
#8  0x03b0d941 in raise () from /lib/libc.so.6
#9  0x03b10e42 in abort () from /lib/libc.so.6
#10 0x03b45305 in ?? () from /lib/libc.so.6
#11 0x03b4f501 in ?? () from /lib/libc.so.6
#12 0x03b50e33 in ?? () from /lib/libc.so.6
#13 0x03b53e5d in free () from /lib/libc.so.6
#14 0x051b8fed in qFree (ptr=0xce2e1d0) at global/qmalloc.cpp:60
#15 0x0520a180 in QString::free (d=0x0) at tools/qstring.cpp:1151
#16 0x006ddb01 in ~QString (this=0xb0701840, infodata=0xcdc6ce8) at /usr/include/qt4/QtCore/qstring.h:882
#17 ~ImageInfoData (this=0xb0701840, infodata=0xcdc6ce8) at /build/buildd/digikam-1.9.0/libs/database/imageinfodata.h:44
#18 Digikam::ImageInfoCache::dropInfo (this=0xb0701840, infodata=0xcdc6ce8) at /build/buildd/digikam-1.9.0/libs/database/imageinfocache.cpp:91
#19 0x006db5a9 in Digikam::ImageInfo::~ImageInfo (this=0x9b9d8714, __in_chrg=<value optimized out>) at /build/buildd/digikam-1.9.0/libs/database/imageinfo.cpp:187
#20 0x006de10b in node_destruct (this=0x9ffe8eb8, data=0x9b9d8468) at /usr/include/qt4/QtCore/qlist.h:420
#21 QList<Digikam::ImageInfo>::free (this=0x9ffe8eb8, data=0x9b9d8468) at /usr/include/qt4/QtCore/qlist.h:741
#22 0x006de1ce in ~QList (t=0x9ffe8eb8) at /usr/include/qt4/QtCore/qlist.h:716
#23 qMetaTypeDeleteHelper<QList<Digikam::ImageInfo> > (t=0x9ffe8eb8) at /usr/include/qt4/QtCore/qmetatype.h:134
#24 0x052cc0a7 in QMetaType::destroy (type=305, data=0x9ffe8eb8) at kernel/qmetatype.cpp:1396
#25 0x052d23bd in QMetaCallEvent::~QMetaCallEvent (this=0x8c4e5da0, __in_chrg=<value optimized out>) at kernel/qobject.cpp:520
#26 0x052c3d9d in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x977be20) at kernel/qcoreapplication.cpp:1389
#27 0x052c3f4d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1266
#28 0x052efa74 in sendPostedEvents (s=0x99b91a8) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#29 postEventSourceDispatch (s=0x99b91a8) at kernel/qeventdispatcher_glib.cpp:277
#30 0x01afb855 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#31 0x01aff668 in ?? () from /lib/libglib-2.0.so.0
#32 0x01aff848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#33 0x052ef565 in QEventDispatcherGlib::processEvents (this=0x99b9c20, flags=...) at kernel/qeventdispatcher_glib.cpp:415
#34 0x052bf609 in QEventLoop::processEvents (this=0xb07022c0, flags=) at kernel/qeventloop.cpp:149
#35 0x052bfa8a in QEventLoop::exec (this=0xb07022c0, flags=...) at kernel/qeventloop.cpp:201
#36 0x051bbb7e in QThread::exec (this=0x99b9ce8) at thread/qthread.cpp:490
#37 0x051bedf9 in QThreadPrivate::start (arg=0x99b9ce8) at thread/qthread_unix.cpp:266
#38 0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#39 0x03bb369e in clone () from /lib/libc.so.6

Thread 14 (Thread 0xae160b70 (LWP 3047)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 13 (Thread 0xa8d03b70 (LWP 3058)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x002f5884 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x03d15b3f in ?? () from /usr/lib/libxine.so.1
Backtrace stopped: previous frame inner to this frame (corrupt stack?)

Thread 12 (Thread 0xa80f7b70 (LWP 3059)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bac371 in select () from /lib/libc.so.6
#2  0x03d41f1c in xine_usec_sleep () from /usr/lib/libxine.so.1
#3  0x00000000 in ?? ()

Thread 11 (Thread 0xa78f6b70 (LWP 3060)):
#0  0x002f33eb in pthread_mutex_lock () from /lib/libpthread.so.0
#1  0x01afeea3 in g_main_context_prepare () from /lib/libglib-2.0.so.0
#2  0x01aff279 in ?? () from /lib/libglib-2.0.so.0
#3  0x01aff848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#4  0x052ef59f in QEventDispatcherGlib::processEvents (this=0x9ea6a00, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#5  0x052bf609 in QEventLoop::processEvents (this=0xa78f6250, flags=) at kernel/qeventloop.cpp:149
#6  0x052bfa8a in QEventLoop::exec (this=0xa78f6250, flags=...) at kernel/qeventloop.cpp:201
#7  0x051bbb7e in QThread::exec (this=0x9ea6608) at thread/qthread.cpp:490
#8  0x03d7881a in ?? () from /usr/lib/qt4/plugins/phonon_backend/phonon_xine.so
#9  0x051bedf9 in QThreadPrivate::start (arg=0x9ea6608) at thread/qthread_unix.cpp:266
#10 0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#11 0x03bb369e in clone () from /lib/libc.so.6

Thread 10 (Thread 0xa70f5b70 (LWP 3061)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03ba4df6 in poll () from /lib/libc.so.6
#2  0x01a55562 in ?? () from /usr/lib/libpulse.so.0
#3  0x01a41ab9 in pa_mainloop_poll () from /usr/lib/libpulse.so.0
#4  0x01a43a73 in pa_mainloop_iterate () from /usr/lib/libpulse.so.0
#5  0x01a43b44 in pa_mainloop_run () from /usr/lib/libpulse.so.0
#6  0x01a55303 in ?? () from /usr/lib/libpulse.so.0
#7  0x01cd4bd5 in ?? () from /usr/lib/libpulsecommon-0.9.21.so
#8  0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#9  0x03bb369e in clone () from /lib/libc.so.6

Thread 9 (Thread 0xa26ffb70 (LWP 3062)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x002f54dc in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#2  0x03d27b54 in ?? () from /usr/lib/libxine.so.1
#3  0x00000000 in ?? ()

Thread 8 (Thread 0xa1efeb70 (LWP 3063)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 7 (Thread 0xa16fdb70 (LWP 3070)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 6 (Thread 0x8fde6b70 (LWP 3114)):
#0  0x063f3e36 in clock_gettime () from /lib/librt.so.1
#1  0x0521a50b in do_gettime () at tools/qelapsedtimer_unix.cpp:105
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:119
#3  0x052f16e5 in QTimerInfoList::updateCurrentTime (this=0x9d56b164) at kernel/qeventdispatcher_unix.cpp:339
#4  0x052f172a in QTimerInfoList::timerWait (this=0x9d56b164, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x052ef7a8 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x8fde608c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x052ef83d in timerSourcePrepare (source=0x0, timeout=0x63f7ff4) at kernel/qeventdispatcher_glib.cpp:169
#7  0x01afee6a in g_main_context_prepare () from /lib/libglib-2.0.so.0
#8  0x01aff279 in ?? () from /lib/libglib-2.0.so.0
#9  0x01aff848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#10 0x052ef59f in QEventDispatcherGlib::processEvents (this=0xbb37ec0, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#11 0x052bf609 in QEventLoop::processEvents (this=0x8fde6260, flags=) at kernel/qeventloop.cpp:149
#12 0x052bfa8a in QEventLoop::exec (this=0x8fde6260, flags=...) at kernel/qeventloop.cpp:201
#13 0x051bbb7e in QThread::exec (this=0xbb37858) at thread/qthread.cpp:490
#14 0x0529e35b in QInotifyFileSystemWatcherEngine::run (this=0xbb37858) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x051bedf9 in QThreadPrivate::start (arg=0xbb37858) at thread/qthread_unix.cpp:266
#16 0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#17 0x03bb369e in clone () from /lib/libc.so.6

Thread 5 (Thread 0x8f5e5b70 (LWP 3121)):
#0  0x052ef763 in timerSourcePrepareHelper (src=0x8c31f7c8, timeout=0x8f5e508c) at kernel/qeventdispatcher_glib.cpp:134
#1  0x052ef83d in timerSourcePrepare (source=0x8c31f7c8, timeout=0x8f5e508c) at kernel/qeventdispatcher_glib.cpp:169
#2  0x01afee6a in g_main_context_prepare () from /lib/libglib-2.0.so.0
#3  0x01aff279 in ?? () from /lib/libglib-2.0.so.0
#4  0x01aff848 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#5  0x052ef59f in QEventDispatcherGlib::processEvents (this=0xbe48120, flags=...) at kernel/qeventdispatcher_glib.cpp:417
#6  0x052bf609 in QEventLoop::processEvents (this=0x8f5e5260, flags=) at kernel/qeventloop.cpp:149
#7  0x052bfa8a in QEventLoop::exec (this=0x8f5e5260, flags=...) at kernel/qeventloop.cpp:201
#8  0x051bbb7e in QThread::exec (this=0xbe47ab8) at thread/qthread.cpp:490
#9  0x0529e35b in QInotifyFileSystemWatcherEngine::run (this=0xbe47ab8) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x051bedf9 in QThreadPrivate::start (arg=0xbe47ab8) at thread/qthread_unix.cpp:266
#11 0x002f0cc9 in start_thread () from /lib/libpthread.so.0
#12 0x03bb369e in clone () from /lib/libc.so.6

Thread 4 (Thread 0x8d5e1b70 (LWP 3128)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 3 (Thread 0x94870b70 (LWP 31171)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 2 (Thread 0x996ffb70 (LWP 31179)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Thread 1 (Thread 0xb65ff740 (LWP 2906)):
#0  0x00ba3416 in __kernel_vsyscall ()
#1  0x03bc10f3 in ?? () from /lib/libc.so.6
#2  0x03b5565f in ?? () from /lib/libc.so.6
Backtrace stopped: previous frame identical to this frame (corrupt stack?)

Possible duplicates by query: bug 278172, bug 277893, bug 277004, bug 221605, bug 218860.

Reported using DrKonqi
Comment 1 caulier.gilles 2011-08-06 09:03:11 UTC
[KCrash Handler]
#7  0x00ba3416 in __kernel_vsyscall ()
#8  0x03b0d941 in raise () from /lib/libc.so.6
#9  0x03b10e42 in abort () from /lib/libc.so.6
#10 0x03b45305 in ?? () from /lib/libc.so.6
#11 0x03b4f501 in ?? () from /lib/libc.so.6
#12 0x03b50e33 in ?? () from /lib/libc.so.6
#13 0x03b53e5d in free () from /lib/libc.so.6
#14 0x051b8fed in qFree (ptr=0xce2e1d0) at global/qmalloc.cpp:60
#15 0x0520a180 in QString::free (d=0x0) at tools/qstring.cpp:1151
#16 0x006ddb01 in ~QString (this=0xb0701840, infodata=0xcdc6ce8) at
/usr/include/qt4/QtCore/qstring.h:882
#17 ~ImageInfoData (this=0xb0701840, infodata=0xcdc6ce8) at
/build/buildd/digikam-1.9.0/libs/database/imageinfodata.h:44

Sound like a binary compatibility between libc and Qt4.

Can you test to update digiKam to last 2.0.0

Gilles Caulier
Comment 2 Marcel Wiesweg 2011-10-03 17:10:31 UTC
looks like the same problem

*** This bug has been marked as a duplicate of bug 262077 ***
Comment 3 caulier.gilles 2022-01-22 16:49:07 UTC
Fixed with https://bugs.kde.org/show_bug.cgi?id=262077