Bug 332287 - digikam crashes repeatedly while tagging faces with names
Summary: digikam crashes repeatedly while tagging faces with names
Status: RESOLVED FIXED
Alias: None
Product: digikam
Classification: Applications
Component: Faces-Engine (show other bugs)
Version: 3.3.0
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Digikam Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2014-03-18 17:01 UTC by wilfried
Modified: 2014-03-31 18:23 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 4.0.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description wilfried 2014-03-18 17:01:36 UTC
Application: digikam (3.3.0)
KDE Platform Version: 4.12.3
Qt Version: 4.8.2
Operating System: Linux 3.2.0-60-generic-pae i686
Distribution: Ubuntu 12.04.4 LTS

-- Information about the crash:
- What I was doing when the application crashed:
I tagged faces with names. This worked for some pictures, but after having tagged a couple of faces digikam crashed. This happened repeatedly (yesterday and today). Strange to say, for the first two or three hundreds of faces I tagged yesterday, I had no crashes.

The crash can be reproduced sometimes.

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

Thread 9 (Thread 0xab9dfb40 (LWP 5769)):
#0  0xb774e424 in __kernel_vsyscall ()
#1  0xb318a96b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb4a064bc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xb4ccb420 in wait (time=4294967295, this=0x8c345d8) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=0x8c3454c, mutex=0x8c34548, time=4294967295) at thread/qwaitcondition_unix.cpp:158
#5  0x08219ee2 in Digikam::ScanController::run (this=0x8c08a48) at /build/buildd/digikam-3.3.0/core/digikam/database/scancontroller.cpp:725
#6  0xb4ccaeb0 in QThreadPrivate::start (arg=0x8c08a48) at thread/qthread_unix.cpp:307
#7  0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 8 (Thread 0xaafffb40 (LWP 5770)):
#0  0xb2bdadcd in clock_gettime () from /lib/i386-linux-gnu/librt.so.1
#1  0xb4d293e5 in do_gettime (frac=0xaaffee30, sec=0xaaffee28) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0xb4e13726 in QTimerInfoList::updateCurrentTime (this=0xaa602074) at kernel/qeventdispatcher_unix.cpp:343
#4  0xb4e13a7a in QTimerInfoList::timerWait (this=0xaa602074, tm=...) at kernel/qeventdispatcher_unix.cpp:450
#5  0xb4e12323 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xaaffef3c) at kernel/qeventdispatcher_glib.cpp:136
#6  0xb4e123bd in timerSourcePrepare (source=0xaa602040, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0xb2d76832 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0xb2d76f6f in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0xb2d771c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0xb4e12de7 in QEventDispatcherGlib::processEvents (this=0xaa600468, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#11 0xb4dde6ad in QEventLoop::processEvents (this=0xaafff0c0, flags=...) at kernel/qeventloop.cpp:149
#12 0xb4dde949 in QEventLoop::exec (this=0xaafff0c0, flags=...) at kernel/qeventloop.cpp:204
#13 0xb4cc7a1c in QThread::exec (this=0x8c35040) at thread/qthread.cpp:501
#14 0xb4dbbcfd in QInotifyFileSystemWatcherEngine::run (this=0x8c35040) at io/qfilesystemwatcher_inotify.cpp:248
#15 0xb4ccaeb0 in QThreadPrivate::start (arg=0x8c35040) at thread/qthread_unix.cpp:307
#16 0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 7 (Thread 0xaa5ffb40 (LWP 5778)):
#0  0xb774e424 in __kernel_vsyscall ()
#1  0xb318a96b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb4a064bc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xb4ccb420 in wait (time=4294967295, this=0x8e68c60) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=0x8c4f348, mutex=0x8c4f344, time=4294967295) at thread/qwaitcondition_unix.cpp:158
#5  0xb69a3f0c in Digikam::ParkingThread::run (this=0x8c4f338) at /build/buildd/digikam-3.3.0/core/libs/threads/threadmanager.cpp:119
#6  0xb4ccaeb0 in QThreadPrivate::start (arg=0x8c4f338) at thread/qthread_unix.cpp:307
#7  0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#8  0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 6 (Thread 0xa99ffb40 (LWP 5779)):
#0  0xb3188dc8 in pthread_mutex_lock () from /lib/i386-linux-gnu/libpthread.so.0
#1  0xb4a066d4 in pthread_mutex_lock () from /lib/i386-linux-gnu/libc.so.6
#2  0xb2db63f0 in g_mutex_lock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb2d7683c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb2d76f6f in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb2d771c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0xb4e12de7 in QEventDispatcherGlib::processEvents (this=0xaa6022e8, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#7  0xb4dde6ad in QEventLoop::processEvents (this=0xa99ff0c0, flags=...) at kernel/qeventloop.cpp:149
#8  0xb4dde949 in QEventLoop::exec (this=0xa99ff0c0, flags=...) at kernel/qeventloop.cpp:204
#9  0xb4cc7a1c in QThread::exec (this=0x90aa600) at thread/qthread.cpp:501
#10 0xb4dbbcfd in QInotifyFileSystemWatcherEngine::run (this=0x90aa600) at io/qfilesystemwatcher_inotify.cpp:248
#11 0xb4ccaeb0 in QThreadPrivate::start (arg=0x90aa600) at thread/qthread_unix.cpp:307
#12 0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#13 0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 5 (Thread 0x9d131b40 (LWP 5801)):
[KCrash Handler]
#7  0xb774e424 in __kernel_vsyscall ()
#8  0xb49371df in raise () from /lib/i386-linux-gnu/libc.so.6
#9  0xb493a825 in abort () from /lib/i386-linux-gnu/libc.so.6
#10 0xb4baa13d in __gnu_cxx::__verbose_terminate_handler() () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#11 0xb4ba7ed3 in ?? () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#12 0xb4ba7f0f in std::terminate() () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#13 0xb4ba80b4 in __cxa_rethrow () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#14 0xb4cbd5ee in QThreadPoolThread::run (this=0x9ffe2c0) at concurrent/qthreadpool.cpp:114
#15 0xb4ccaeb0 in QThreadPrivate::start (arg=0x9ffe2c0) at thread/qthread_unix.cpp:307
#16 0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 4 (Thread 0x9b92eb40 (LWP 5804)):
#0  0xb3185483 in __i686.get_pc_thunk.bx () from /lib/i386-linux-gnu/libpthread.so.0
#1  0xb3188cbf in pthread_mutex_lock () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb4a066d4 in pthread_mutex_lock () from /lib/i386-linux-gnu/libc.so.6
#3  0xb2db63f0 in g_mutex_lock () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb2d7683c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb2d76f6f in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0xb2d771c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7  0xb4e12de7 in QEventDispatcherGlib::processEvents (this=0xa004420, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#8  0xb4dde6ad in QEventLoop::processEvents (this=0x9b92e0b8, flags=...) at kernel/qeventloop.cpp:149
#9  0xb4dde949 in QEventLoop::exec (this=0x9b92e0b8, flags=...) at kernel/qeventloop.cpp:204
#10 0xb69a34ae in Digikam::WorkerObjectRunnable::run (this=0xb858608) at /build/buildd/digikam-3.3.0/core/libs/threads/threadmanager.cpp:196
#11 0xb4cbd46b in QThreadPoolThread::run (this=0x9ffea70) at concurrent/qthreadpool.cpp:107
#12 0xb4ccaeb0 in QThreadPrivate::start (arg=0x9ffea70) at thread/qthread_unix.cpp:307
#13 0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#14 0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 3 (Thread 0x93dfbb40 (LWP 5881)):
#0  0xb2d76737 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#1  0xb2d76f6f in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#2  0xb2d771c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb4e12de7 in QEventDispatcherGlib::processEvents (this=0xabb32a0, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#4  0xb4dde6ad in QEventLoop::processEvents (this=0x93dfb0b8, flags=...) at kernel/qeventloop.cpp:149
#5  0xb4dde949 in QEventLoop::exec (this=0x93dfb0b8, flags=...) at kernel/qeventloop.cpp:204
#6  0xb69a34ae in Digikam::WorkerObjectRunnable::run (this=0x98c86d0) at /build/buildd/digikam-3.3.0/core/libs/threads/threadmanager.cpp:196
#7  0xb4cbd46b in QThreadPoolThread::run (this=0x9ffff68) at concurrent/qthreadpool.cpp:107
#8  0xb4ccaeb0 in QThreadPrivate::start (arg=0x9ffff68) at thread/qthread_unix.cpp:307
#9  0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#10 0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 2 (Thread 0x99129b40 (LWP 5886)):
#0  0xb49e825f in read () from /lib/i386-linux-gnu/libc.so.6
#1  0xb2db56ce in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#2  0xb2d76b92 in g_main_context_check () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0xb2d77002 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0xb2d771c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0xb4e12de7 in QEventDispatcherGlib::processEvents (this=0xab05ad70, flags=...) at kernel/qeventdispatcher_glib.cpp:426
#6  0xb4dde6ad in QEventLoop::processEvents (this=0x991290b8, flags=...) at kernel/qeventloop.cpp:149
#7  0xb4dde949 in QEventLoop::exec (this=0x991290b8, flags=...) at kernel/qeventloop.cpp:204
#8  0xb69a34ae in Digikam::WorkerObjectRunnable::run (this=0x98c7f40) at /build/buildd/digikam-3.3.0/core/libs/threads/threadmanager.cpp:196
#9  0xb4cbd46b in QThreadPoolThread::run (this=0x9ffe030) at concurrent/qthreadpool.cpp:107
#10 0xb4ccaeb0 in QThreadPrivate::start (arg=0x9ffe030) at thread/qthread_unix.cpp:307
#11 0xb3186d4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#12 0xb49f8bae in clone () from /lib/i386-linux-gnu/libc.so.6

Thread 1 (Thread 0xae0438c0 (LWP 5766)):
#0  0xb774e424 in __kernel_vsyscall ()
#1  0xb318a96b in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/i386-linux-gnu/libpthread.so.0
#2  0xb4a064bc in pthread_cond_wait () from /lib/i386-linux-gnu/libc.so.6
#3  0xb4ccb420 in wait (time=4294967295, this=0x90764a0) at thread/qwaitcondition_unix.cpp:86
#4  QWaitCondition::wait (this=0x9074d40, mutex=0x9074d3c, time=4294967295) at thread/qwaitcondition_unix.cpp:158
#5  0xb69a441c in Digikam::WorkerObject::wait (this=0x9076410) at /build/buildd/digikam-3.3.0/core/libs/threads/workerobject.cpp:95
#6  0x08266655 in Digikam::FileActionMngr::shutDown (this=0x9076248) at /build/buildd/digikam-3.3.0/core/digikam/fileaction/fileactionmngr.cpp:110
#7  0x08266916 in Digikam::FileActionMngr::~FileActionMngr (this=0x9076248, __in_chrg=<optimized out>) at /build/buildd/digikam-3.3.0/core/digikam/fileaction/fileactionmngr.cpp:78
#8  0x08266997 in ~FileActionMngrCreator (this=0x9076248, __in_chrg=<optimized out>) at /build/buildd/digikam-3.3.0/core/digikam/fileaction/fileactionmngr.cpp:52
#9  destroy () at /build/buildd/digikam-3.3.0/core/digikam/fileaction/fileactionmngr.cpp:59
#10 0xb493bf51 in ?? () from /lib/i386-linux-gnu/libc.so.6
#11 0xb493bfdd in exit () from /lib/i386-linux-gnu/libc.so.6
#12 0xb53c99a8 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:780
#13 0xb5ed52a9 in KApplication::xioErrhandler (this=0xbf8823e8, dpy=0x8b22ba8) at ../../kdeui/kernel/kapplication.cpp:419
#14 0xb5ed52e4 in kde_xio_errhandler (dpy=0x8b22ba8) at ../../kdeui/kernel/kapplication.cpp:126
#15 0xb44fdad4 in _XIOError () from /usr/lib/i386-linux-gnu/libX11.so.6
#16 0xb44fb39f in _XEventsQueued () from /usr/lib/i386-linux-gnu/libX11.so.6
#17 0xb44ec0a8 in XEventsQueued () from /usr/lib/i386-linux-gnu/libX11.so.6
#18 0xb540a7e5 in x11EventSourceCheck (s=0x8b02fc0) at kernel/qguieventdispatcher_glib.cpp:85
#19 0xb2d76b3b in g_main_context_check () from /lib/i386-linux-gnu/libglib-2.0.so.0
#20 0xb2d77002 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#21 0xb2d771c1 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#22 0xb4e12d87 in QEventDispatcherGlib::processEvents (this=0x8aa7720, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#23 0xb540aa1a in QGuiEventDispatcherGlib::processEvents (this=0x8aa7720, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#24 0xb4dde6ad in QEventLoop::processEvents (this=0xbf8822c4, flags=...) at kernel/qeventloop.cpp:149
#25 0xb4dde949 in QEventLoop::exec (this=0xbf8822c4, flags=...) at kernel/qeventloop.cpp:204
#26 0xb4de434a in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1187
#27 0xb534f9c4 in QApplication::exec () at kernel/qapplication.cpp:3817
#28 0x080bbbe1 in main (argc=<error reading variable: Cannot access memory at address 0x80>, argv=<error reading variable: Cannot access memory at address 0x84>) at /build/buildd/digikam-3.3.0/core/digikam/main/main.cpp:235

The reporter indicates this bug may be a duplicate of or related to bug 326689.

Possible duplicates by query: bug 332074, bug 331625, bug 331578, bug 331220, bug 330976.

Reported using DrKonqi
Comment 1 caulier.gilles 2014-03-18 17:04:46 UTC
In your crash trace there is no digiKam code relevant. Please try to get a better backtrace under GDB following these instructions :

http://www.digikam.org/contrib

Gilles Caulier
Comment 2 wilfried 2014-03-20 13:59:29 UTC
Sorry, I can reproduce the crashes, but don't get any backtrace 
information with gdb, only the message:

"program terminated with signal SIGKILL.. killed"

when the crash occurs. After bt I get the message "no trace".

In the systemmonitor I can see immediately before the crash, that more 
and more memory, both main and swap, is consumed, until the 100% are 
reached. In this moment digikam crashes. I work on a rather old machine 
with only 1 Gigabyte main memory. Nevertheless, it should not happen 
that digikam consumes that much memory when I just assign tags (names) 
to faces one by one.

Hopefully, this bit of information may be helpful to you (and us users).

Greetings, Wilfried Käding


Am 18.03.2014 18:04, schrieb Gilles Caulier:
> https://bugs.kde.org/show_bug.cgi?id=332287
>
> Gilles Caulier <caulier.gilles@gmail.com> changed:
>
>             What    |Removed                     |Added
> ----------------------------------------------------------------------------
>               Status|UNCONFIRMED                 |RESOLVED
>                   CC|                            |caulier.gilles@gmail.com
>           Resolution|---                         |BACKTRACE
>
> --- Comment #1 from Gilles Caulier <caulier.gilles@gmail.com> ---
> In your crash trace there is no digiKam code relevant. Please try to get a
> better backtrace under GDB following these instructions :
>
> http://www.digikam.org/contrib
>
> Gilles Caulier
>
Comment 3 caulier.gilles 2014-03-24 10:08:36 UTC
That's an exception in a thread. You need to run under gdb, "catch throw" and
then provoke the crash.

Gilles Caulier
Comment 4 wilfried 2014-03-31 16:41:16 UTC
Hello, sorry for the late answer.

I removed the digikam version which caused the crashes (3.3.0) from my 
computer and reinstalled version 2.5.0, which does not crash while 
tagging faces with names. This means of cause that I am no more able to 
provoke the crashes.

Moreover, I installed Kubuntu 13.10 with digikam 3.4.0 on my macbook, 
alongside to Mac OS X, there the face tagging works fine, too.

So for me, the problem is solved: I can work with digikam.

Regards
Wilfried Käding

Am 24.03.2014 11:08, schrieb Gilles Caulier:
> https://bugs.kde.org/show_bug.cgi?id=332287
>
> --- Comment #3 from Gilles Caulier <caulier.gilles@gmail.com> ---
> That's an exception in a thread. You need to run under gdb, "catch throw" and
> then provoke the crash.
>
> Gilles Caulier
>