Bug 276745 - Crash while updating/generating fingerprints
Summary: Crash while updating/generating fingerprints
Status: RESOLVED NOT A BUG
Alias: None
Product: digikam
Classification: Applications
Component: Searches-Similarity (show other bugs)
Version: 2.0.0
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-29 13:02 UTC by Torbjörn K.
Modified: 2012-06-27 10:31 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 2.0.0


Attachments
valgrind backtrace of rebuilding fingerprints (837.54 KB, text/x-log)
2011-06-30 07:46 UTC, Torbjörn K.
Details
GDB log of fingerprint crash (61.30 KB, text/x-log)
2011-07-02 13:27 UTC, Torbjörn K.
Details
new backtrace (7.95 KB, text/x-log)
2011-07-03 11:00 UTC, Torbjörn K.
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Torbjörn K. 2011-06-29 13:02:05 UTC
Application: digikam (2.0.0-rc)
KDE Platform Version: 4.6.80 (4.7 Beta1) "release 6"
Qt Version: 4.7.3
Operating System: Linux 2.6.37.6-0.5-desktop x86_64
Distribution: "openSUSE 11.4 (x86_64)"

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

Updated the fingerprints of all pictures in my collection (approx. 10k pictures)


Digikam was compiled with CMAKE_BUILD_TYPE=RelWithDebInfo yesterday after git update.

I've launched Digikam from terminal:


myself@suseTower:~> digikam 
libdc1394 error: Failed to initialize libdc1394
QSqlDatabasePrivate::removeDatabase: connection 'ConnectionTest' is still in use, all queries will cease to work.
QPainter::begin: Paint device returned engine == 0, type: 2
QPainter::setCompositionMode: Painter not active
QPainter::end: Painter not active, aborted
digikam(12319)/digikam (core) Digikam::PreviewLoadingTask::execute: Cannot extract preview for  "/media/Elements/Fotos/2006/London/Eva/07-046-0831.jpg" 
*** glibc detected *** digikam: free(): invalid pointer: 0x000000000bec4af0 ***
======= Backtrace: =========
/lib64/libc.so.6(+0x733b6)[0x7f725c4173b6]
/usr/lib64/libdigikamcore.so.2(_ZN7Digikam4DImgD2Ev+0x31)[0x7f7261bb9d11]
/usr/lib64/libdigikamcore.so.2(+0x33c22b)[0x7f7261d8a22b]
/usr/lib64/libdigikamcore.so.2(+0x33c4c3)[0x7f7261d8a4c3]
/usr/lib64/libdigikamcore.so.2(_ZNK7Digikam12LoadingCache8putImageERK7QStringPNS_4DImgES3_+0x3d)[0x7f7261d8736d]
/usr/lib64/libdigikamcore.so.2(+0x3420b0)[0x7f7261d900b0]
/usr/lib64/libdigikamcore.so.2(_ZN7Digikam14LoadSaveThread3runEv+0x156)[0x7f7261d7c7e6]
/usr/lib64/libdigikamcore.so.2(_ZN7Digikam13DynamicThread17DynamicThreadPriv3runEv+0x2e)[0x7f7261dbcdfe]
/usr/lib64/libQtCore.so.4(+0x6eea8)[0x7f725e283ea8]
/usr/lib64/libQtCore.so.4(+0x7a095)[0x7f725e28f095]
/lib64/libpthread.so.0(+0x6a3f)[0x7f725dffea3f]
/lib64/libc.so.6(clone+0x6d)[0x7f725c47767d]
======= Memory map: ========
00400000-008d9000 r-xp 00000000 08:05 440115                             /usr/bin/digikam
00ad8000-00ad9000 r--p 004d8000 08:05 440115                             /usr/bin/digikam
00ad9000-00ae3000 rw-p 004d9000 08:05 440115                             /usr/bin/digikam
00ae3000-0e2dd000 rw-p 00000000 00:00 0                                  [heap]
7f722c6de000-7f722c73f000 rw-p 00000000 00:00 0 
7f722c73f000-7f722c740000 ---p 00000000 00:00 0 
7f722c740000-7f722cf40000 rw-p 00000000 00:00 0 
7f722cf90000-7f722e299000 rw-p 00000000 00:00 0 
7f722e299000-7f722e29a000 ---p 00000000 00:00 0 
7f722e29a000-7f722ea9a000 rw-p 00000000 00:00 0 
7f722ea9a000-7f722ea9b000 ---p 00000000 00:00 0 
7f722ea9b000-7f722f29b000 rw-p 00000000 00:00 0 
7f722f29b000-7f722f29c000 ---p 00000000 00:00 0 
7f722f29c000-7f722fa9c000 rw-p 00000000 00:00 0 
7f722fa9c000-7f722fadf000 r-xp 00000000 08:05 164041                     /usr/lib64/kde4/digikamimageplugin_enhance.so
7f722fadf000-7f722fcde000 ---p 00043000 08:05 164041                     /usr/lib64/kde4/digikamimageplugin_enhance.so
7f722fcde000-7f722fce1000 r--p 00042000 08:05 164041                     /usr/lib64/kde4/digikamimageplugin_enhance.so
7f722fce1000-7f722fce2000 rw-p 00045000 08:05 164041                     /usr/lib64/kde4/digikamimageplugin_enhance.so
7f722fce2000-7f722fce3000 rw-p 00000000 00:00 0 
7f722fce3000-7f722fd29000 r-xp 00000000 08:05 164043                     /usr/lib64/kde4/digikamimageplugin_transform.so
7f722fd29000-7f722ff28000 ---p 00046000 08:05 164043                     /usr/lib64/kde4/digikamimageplugin_transform.so
7f722ff28000-7f722ff2a000 r--p 00045000 08:05 164043                     /usr/lib64/kde4/digikamimageplugin_transform.so
7f722ff2a000-7f722ff2b000 rw-p 00047000 08:05 164043                     /usr/lib64/kde4/digikamimageplugin_transform.so
7f722ff2b000-7f722ff49000 r-xp 00000000 08:05 164042                     /usr/lib64/kde4/digikamimageplugin_fxfilters.so
7f722ff49000-7f7230148000 ---p 0001e000 08:05 164042                     /usr/lib64/kde4/digikamimageplugin_fxfilters.so
7f7230148000-7f723014a000 r--p 0001d000 08:05 164042                     /usr/lib64/kde4/digikamimageplugin_fxfilters.so
7f723014a000-7f723014b000 rw-p 0001f000 08:05 164042                     /usr/lib64/kde4/digikamimageplugin_fxfilters.so
7f723014b000-7f723014c000 r-xp 00000000 08:05 134045                     /usr/lib64/libutempter.so.0.5.5
7f723014c000-7f723034b000 ---p 00001000 08:05 134045                     /usr/lib64/libutempter.so.0.5.5
7f723034b000-7f723034c000 r--p 00000000 08:05 134045                     /usr/lib64/libutempter.so.0.5.5
7f723034c000-7f723034d000 rw-p 00001000 08:05 134045                     /usr/lib64/libutempter.so.0.5.5
7f723034d000-7f723034f000 r-xp 00000000 08:02 394032                     /lib64/libutil-2.11.3.so
7f723034f000-7f723054e000 ---p 00002000 08:02 394032                     /lib64/libutil-2.11.3.so
7f723054e000-7f723054f000 r--p 00001000 08:02 394032                     /lib64/libutil-2.11.3.so
7f723054f000-7f7230550000 rw-p 00002000 08:02 394032                     /lib64/libutil-2.11.3.so
7f7230550000-7f7230559000 r-xp 00000000 08:05 163713                     /usr/lib64/libkpty.so.4.7.0
7f7230559000-7f7230758000 ---p 00009000 08:05 163713                     /usr/lib64/libkpty.so.4.7.0
7f7230758000-7f7230759000 r--p 00008000 08:05 163713                     /usr/lib64/libkpty.so.4.7.0
7f7230759000-7f723075a000 rw-p 00009000 08:05 163713                     /usr/lib64/libkpty.so.4.7.0
7f723075a000-7f723084b000 r-xp 00000000 08:05 164144                     /usr/lib64/libkde3support.so.4.7.0
7f723084b000-7f7230a4a000 ---p 000f1000 08:05 164144                     /usr/lib64/libkde3support.so.4.7.0
7f7230a4a000-7f7230a54000 r--p 000f0000 08:05 164144                     /usr/lib64/libkde3support.so.4.7.0
7f7230a54000-7f7230a57000 rw-p 000fa000 08:05 164144                     /usr/lib64/libkde3support.so.4.7.0
7f7230a57000-7f7230a7e000 r-xp 00000000 08:05 164040                     /usr/lib64/kde4/digikamimageplugin_decorate.so
7f7230a7e000-7f7230c7d000 ---p 00027000 08:05 164040                     /usr/lib64/kde4/digikamimageplugin_decorate.so
7f7230c7d000-7f7230c7f000 r--p 00026000 08:05 164040                     /usr/lib64/kde4/digikamimageplugin_decorate.so
7f7230c7f000-7f7230c80000 rw-p 00028000 08:05 164040                     /usr/lib64/kde4/digikamimageplugin_decorate.so
7f7230c80000-7f7230caf000 r-xp 00000000 08:05 164039                     /usr/lib64/kde4/digikamimageplugin_color.so
7f7230caf000-7f7230eaf000 ---p 0002f000 08:05 164039                     /usr/lib64/kde4/digikamimageplugin_color.so
7f7230eaf000-7f7230eb1000 r--p 0002f000 08:05 164039                     /usr/lib64/kde4/digikamimageplugin_color.so
7f7230eb1000-7f7230eb2000 rw-p 00031000 08:05 164039                     /usr/lib64/kde4/digikamimageplugin_color.so
7f7230eb2000-7f7230edc000 r-xp 00000000 08:05 163485                     /usr/lib64/kde4/kipiplugin_smug.so
7f7230edc000-7f72310dc000 ---p 0002a000 08:05 163485                     /usr/lib64/kde4/kipiplugin_smug.so
7f72310dc000-7f72310dd000 r--p 0002a000 08:05 163485                     /usr/lib64/kde4/kipiplugin_smug.so
7f72310dd000-7f72310de000 rw-p 0002b000 08:05 163485                     /usr/lib64/kde4/kipiplugin_smug.so
7f72310de000-7f72310fa000 r-xp 00000000 08:05 163482                     /usr/lib64/kde4/kipiplugin_rawconverter.so
7f72310fa000-7f72312fa000 ---p 0001c000 08:05 163482                     /usr/lib64/kde4/kipiplugin_rawconverter.so
7f72312fa000-7f72312fb000 r--p 0001c000 08:05 163482                     /usr/lib64/kde4/kipiplugin_rawconverter.so
7f72312fb000-7f72312fc000 rw-p 0001d000 08:05 163482                     /usr/lib64/kde4/kipiplugin_rawconverter.so
7f72312fc000-7f7231332000 r-xp 00000000 08:05 163465                     /usr/lib64/kde4/kipiplugin_expoblending.soKCrash: Application 'digikam' crashing...
QSocketNotifier: Invalid socket 17 and type 'Read', disabling...
QSocketNotifier: Invalid socket 11 and type 'Read', disabling...
QSocketNotifier: Invalid socket 13 and type 'Read', disabling...
digikam: Fatal IO error: client killed
KCrash: Attempting to start /usr/lib64/kde4/libexec/drkonqi from kdeinit
sock_file=/home/myself/.kde4/socket-suseTower/kdeinit4__0

(digikam:12319): GStreamer-WARNING **: gstsystemclock: write control failed in wakeup_async, trying again : 9:Ungültiger Dateideskriptor

-- Backtrace:
Application: digiKam (digikam), signal: Aborted
pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
162	62:	movl	(%rsp), %edi
[Current thread is 1 (Thread 0x7f72652c8860 (LWP 12319))]

Thread 8 (Thread 0x7f72465b6700 (LWP 12320)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f725e28f77b in wait (this=<value optimized out>, mutex=0xd1bf48, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0xd1bf48, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00000000005b6330 in Digikam::ScanController::run (this=0xd1bc10) at /kde/kdesrc/git/extragear/graphics/digikam/digikam/database/scancontroller.cpp:618
#4  0x00007f725e28f095 in QThreadPrivate::start (arg=0xd1bc10) at thread/qthread_unix.cpp:320
#5  0x00007f725dffea3f in start_thread (arg=0x7f72465b6700) at pthread_create.c:297
#6  0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 7 (Thread 0x7f7245db5700 (LWP 12321)):
#0  QTimerInfoList::updateCurrentTime (this=0xcfaa60) at kernel/qeventdispatcher_unix.cpp:338
#1  0x00007f725e3a3fc5 in QTimerInfoList::timerWait (this=0xcfaa60, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#2  0x00007f725e3a2a8c in timerSourcePrepareHelper (src=<value optimized out>, timeout=0x7f7245db4b4c) at kernel/qeventdispatcher_glib.cpp:136
#3  0x00007f725e3a2b35 in timerSourcePrepare (source=<value optimized out>, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#4  0x00007f725657e087 in g_main_context_prepare (context=0xcf9950, priority=0x7f7245db4bbc) at gmain.c:2761
#5  0x00007f725657efa9 in g_main_context_iterate (context=0xcf9950, block=1, dispatch=1, self=<value optimized out>) at gmain.c:3071
#6  0x00007f725657f650 in g_main_context_iteration (context=0xcf9950, may_block=1) at gmain.c:3154
#7  0x00007f725e3a3286 in QEventDispatcherGlib::processEvents (this=0xcf9820, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#8  0x00007f725e3778d2 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#9  0x00007f725e377ae5 in QEventLoop::exec (this=0x7f7245db4ce0, flags=...) at kernel/qeventloop.cpp:201
#10 0x00007f725e28c7a4 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:492
#11 0x00007f725e359008 in QInotifyFileSystemWatcherEngine::run (this=0xcf77e0) at io/qfilesystemwatcher_inotify.cpp:248
#12 0x00007f725e28f095 in QThreadPrivate::start (arg=0xcf77e0) at thread/qthread_unix.cpp:320
#13 0x00007f725dffea3f in start_thread (arg=0x7f7245db5700) at pthread_create.c:297
#14 0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#15 0x0000000000000000 in ?? ()

Thread 6 (Thread 0x7f723b689700 (LWP 12342)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007f725e28f6e2 in wait (this=<value optimized out>, mutex=0xf99ed0, time=30000) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0xf99ed0, time=30000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f725e283f38 in QThreadPoolThread::run (this=0x348e440) at concurrent/qthreadpool.cpp:140
#4  0x00007f725e28f095 in QThreadPrivate::start (arg=0x348e440) at thread/qthread_unix.cpp:320
#5  0x00007f725dffea3f in start_thread (arg=0x7f723b689700) at pthread_create.c:297
#6  0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f722fa9b700 (LWP 12343)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:211
#1  0x00007f725e28f6e2 in wait (this=<value optimized out>, mutex=0xf99ed0, time=30000) at thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0xf99ed0, time=30000) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f725e283f38 in QThreadPoolThread::run (this=0x3494e70) at concurrent/qthreadpool.cpp:140
#4  0x00007f725e28f095 in QThreadPrivate::start (arg=0x3494e70) at thread/qthread_unix.cpp:320
#5  0x00007f725dffea3f in start_thread (arg=0x7f722fa9b700) at pthread_create.c:297
#6  0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#7  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f722f29a700 (LWP 12344)):
[KCrash Handler]
#6  0x00007f725c3d6ab5 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#7  0x00007f725c3d7fb6 in abort () at abort.c:92
#8  0x00007f725c411dd3 in __libc_message (do_abort=2, fmt=0x7f725c4d29b0 "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:186
#9  0x00007f725c4173b6 in malloc_printerr (action=3, str=0x7f725c4cfb7e "free(): invalid pointer", ptr=<value optimized out>) at malloc.c:6261
#10 0x00007f7261bb9d11 in ~DImgPrivate (this=<value optimized out>, __in_chrg=<value optimized out>) at /kde/kdesrc/git/extragear/graphics/digikam/libs/dimg/dimg_p.h:87
#11 ~DSharedDataPointer (this=<value optimized out>, __in_chrg=<value optimized out>) at /kde/kdesrc/git/extragear/graphics/digikam/libs/dimg/dshareddata.h:176
#12 Digikam::DImg::~DImg (this=<value optimized out>, __in_chrg=<value optimized out>) at /kde/kdesrc/git/extragear/graphics/digikam/libs/dimg/dimg.cpp:169
#13 0x00007f7261d8a22b in unlink (this=0xe42cf0, m=157237248) at /usr/include/QtCore/qcache.h:75
#14 QCache<QString, Digikam::DImg>::trim (this=0xe42cf0, m=157237248) at /usr/include/QtCore/qcache.h:209
#15 0x00007f7261d8a4c3 in QCache<QString, Digikam::DImg>::insert (this=0xe42cf0, akey=..., aobject=0x9ae7da0, acost=49152) at /usr/include/QtCore/qcache.h:188
#16 0x00007f7261d8736d in Digikam::LoadingCache::putImage (this=0xe2bf90, cacheKey=..., img=0x9ae7da0, filePath=...) at /kde/kdesrc/git/extragear/graphics/digikam/libs/threadimageio/loadingcache.cpp:198
#17 0x00007f7261d900b0 in Digikam::PreviewLoadingTask::execute (this=0x3ec68b0) at /kde/kdesrc/git/extragear/graphics/digikam/libs/threadimageio/previewtask.cpp:413
#18 0x00007f7261d7c7e6 in Digikam::LoadSaveThread::run (this=0x1ef4e50) at /kde/kdesrc/git/extragear/graphics/digikam/libs/threadimageio/loadsavethread.cpp:118
#19 0x00007f7261dbcdfe in Digikam::DynamicThread::DynamicThreadPriv::run (this=0x3e3bce0) at /kde/kdesrc/git/extragear/graphics/digikam/libs/threads/dynamicthread.cpp:328
#20 0x00007f725e283ea8 in QThreadPoolThread::run (this=0x26bb050) at concurrent/qthreadpool.cpp:106
#21 0x00007f725e28f095 in QThreadPrivate::start (arg=0x26bb050) at thread/qthread_unix.cpp:320
#22 0x00007f725dffea3f in start_thread (arg=0x7f722f29a700) at pthread_create.c:297
#23 0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#24 0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f722ea99700 (LWP 12345)):
#0  0x00007f7257fadd1e in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f7257fac7e6 in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f725dffea3f in start_thread (arg=0x7f722ea99700) at pthread_create.c:297
#3  0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f722cf3f700 (LWP 12351)):
#0  0x00007f7257fadd1e in ?? () from /usr/lib64/libgomp.so.1
#1  0x00007f7257fac7e6 in ?? () from /usr/lib64/libgomp.so.1
#2  0x00007f725dffea3f in start_thread (arg=0x7f722cf3f700) at pthread_create.c:297
#3  0x00007f725c47767d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#4  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f72652c8860 (LWP 12319)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162
#1  0x00007f725e28f77b in wait (this=<value optimized out>, mutex=0xf99ed0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:88
#2  QWaitCondition::wait (this=<value optimized out>, mutex=0xf99ed0, time=18446744073709551615) at thread/qwaitcondition_unix.cpp:160
#3  0x00007f725e283511 in QThreadPoolPrivate::waitForDone (this=0xf99e40) at concurrent/qthreadpool.cpp:295
#4  0x00007f725e28451f in QThreadPool::~QThreadPool (this=<value optimized out>, __in_chrg=<value optimized out>) at concurrent/qthreadpool.cpp:428
#5  0x00007f725e284559 in QThreadPool::~QThreadPool (this=0xd341c0, __in_chrg=<value optimized out>) at concurrent/qthreadpool.cpp:430
#6  0x00007f725e38aa34 in QObjectPrivate::deleteChildren (this=0x10476e0) at kernel/qobject.cpp:1955
#7  0x00007f725e38f782 in QObject::~QObject (this=0xef5db0, __in_chrg=<value optimized out>) at kernel/qobject.cpp:946
#8  0x00007f7261dba767 in ~ThreadManagerCreator () at /kde/kdesrc/git/extragear/graphics/digikam/libs/threads/threadmanager.cpp:237
#9  destroy () at /kde/kdesrc/git/extragear/graphics/digikam/libs/threads/threadmanager.cpp:241
#10 0x00007f725c3d95a1 in __run_exit_handlers (status=1, listp=0x7f725c70b4a8, run_list_atexit=true) at exit.c:78
#11 0x00007f725c3d95f5 in exit (status=16359516) at exit.c:100
#12 0x00007f725d317f48 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:772
#13 0x00007f725edc2078 in KApplication::xioErrhandler (this=0x7fff763e2730, dpy=0xb75cf0) at /usr/src/debug/kdelibs-4.6.80/kdeui/kernel/kapplication.cpp:419
#14 0x00007f725b18778e in _XIOError () from /usr/lib64/libX11.so.6
#15 0x00007f725b18503d in _XEventsQueued () from /usr/lib64/libX11.so.6
#16 0x00007f725b1758df in XEventsQueued () from /usr/lib64/libX11.so.6
#17 0x00007f725d350a4c in x11EventSourceCheck (s=0xb50170) at kernel/qguieventdispatcher_glib.cpp:85
#18 0x00007f725657e84c in g_main_context_check (context=0xb4fa50, max_priority=2147483647, fds=<value optimized out>, n_fds=<value optimized out>) at gmain.c:2961
#19 0x00007f725657f132 in g_main_context_iterate (context=0xb4fa50, block=1, dispatch=1, self=<value optimized out>) at gmain.c:3088
#20 0x00007f725657f650 in g_main_context_iteration (context=0xb4fa50, may_block=1) at gmain.c:3154
#21 0x00007f725e3a322f in QEventDispatcherGlib::processEvents (this=0xb17fb0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:422
#22 0x00007f725d350bae in QGuiEventDispatcherGlib::processEvents (this=<value optimized out>, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#23 0x00007f725e3778d2 in QEventLoop::processEvents (this=<value optimized out>, flags=...) at kernel/qeventloop.cpp:149
#24 0x00007f725e377ae5 in QEventLoop::exec (this=0x7fff763e2560, flags=...) at kernel/qeventloop.cpp:201
#25 0x00007f725e37bf2b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#26 0x0000000000684d75 in main (argc=11810048, argv=0x7fff00000000) at /kde/kdesrc/git/extragear/graphics/digikam/digikam/main/main.cpp:232

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

Possible duplicates by query: bug 276592, bug 249248.

Reported using DrKonqi
Comment 1 caulier.gilles 2011-06-29 13:09:35 UTC

*** This bug has been marked as a duplicate of bug 249248 ***
Comment 2 Torbjörn K. 2011-06-29 13:18:30 UTC
Why does this crash still happen if it is solved? Did you fix it yesterday or today? If it is related to another library or package, can you tell me so, please?
Comment 3 caulier.gilles 2011-06-29 15:04:37 UTC
You are right. It's not a duplicate.

Can you give us a valgrind backtrace ? Look in HACKING file for details.

Gilles Caulier
Comment 4 Torbjörn K. 2011-06-30 07:46:37 UTC
Created attachment 61470 [details]
valgrind backtrace of rebuilding fingerprints

I have to say, that I've never used valgrind before. Thus the attached results might be wrong.

I worked with yesterdays master (last commit included: 055e495e9ec89806b1d2dd20b1ba9257a04d372d) and recompiled with CMAKE_BUILD_TYPE=Debug.
Then I launched digikam with the valgrind command found in the HACKING file.
In digikam I selected Tools->Rebuild Fingerprints.

It run for several hours (~10k fingerprints had to be computed).

Well, digikam did not crash.

However, you might find the complete output useful. I stripped the output to be smaller than 1MB. '[...]' replaces several repetitions of the previous lines.
The logs for configuration, make and install can be found on pastebun:
http://pastebin.com/7dwWBxk8 (cmake)
http://pastebin.com/FCqj3XbB (make)
http://pastebin.com/0AvDdDvr (install)

My assumption is, that this crash only occurs if the fingerprints are not available at all and have to be build the very first time. In addition, the crash I experienced above, occurred at about 50% of the process.
Comment 5 caulier.gilles 2011-07-02 10:02:25 UTC
digiKam 2.0.0 RC is out. Please check if crash is reproducible with this version.

Thanks in advance

Gilles Caulier
Comment 6 Torbjörn K. 2011-07-02 13:27:06 UTC
Created attachment 61551 [details]
GDB log of fingerprint crash

Unfortunately it seems not fixed yet.

I compiled this morning from master (revision 5065db45) with BUILD_TYPE=RelWithDebInfo.

I manually backed up my SQLite DB and deleted it (together with the thumbnails-DB and the automatic DB backup files).
Then I launched digikam (from inside GDB) and thus forced it to reload all pictures and to create a new DB.
After having all pictures in the DB, I started building of all fingerprints. At the state of 47% it broke with the attached GDB log and backtrace.
After a relaunch of digikam, I started generation of the fingerprints again ("Rebuild All Fingerprints") and it crashed some per cent later: 52%. (see second GDB output in the attached file)
A third run made digikam crash at 40%. (I didn't attached that one)
Comment 7 caulier.gilles 2011-07-02 16:13:46 UTC
Can you see which image crash digiKam ?

look running backtrace in the console for details. Use kdebugdialog to enable right debug statements (digikam, libkexiv2, libkdcraw, libkface, etc...)

Gilles Caulier
Comment 8 Torbjörn K. 2011-07-03 11:00:47 UTC
Created attachment 61566 [details]
new backtrace

You are right, it is always crashing on the same image. However, a thumbnail of that picture can be created by digikam and it can be displayed without any problems.

I attached a new backtrace after launching digikam from the terminal. The debugging output is too big (4.8MB) to be attached here. Should I email it directly to you?
Comment 9 caulier.gilles 2011-07-03 11:56:24 UTC
If image is smaller than 1Mb, attch it to this file. Else you can send me by mail or place it somewhere in internet to download

Gilles Caulier
Comment 10 caulier.gilles 2011-07-03 13:28:11 UTC
I scanned your image on my computer and it do not crash for me...

Gilles Caulier
Comment 11 caulier.gilles 2011-07-03 13:31:25 UTC
Same as #276999. If your thumbnails database is broken, this canbe the lead problem.

Remove thumb DB file, and let's digiKam rebuilding it at the startup. Look if crash is reproducible.

Gilles Caulier
Comment 12 Torbjörn K. 2011-07-03 14:07:28 UTC
My broken thumbnails DB seems to be the cause of this bug. I deleted the digikam4.db and thumbnails DB, forced digikam to recreate both of them and selected the parent directory of the pictures, where it always crashed.
Quitting digikam, restarting it and letting it create all thumbnails.
Quitting it.
And the finally building all fingerprints.
It worked like charm.

I close this bug.

However, what might be the reason for a broken thumbnail DB?