Bug 322022

Summary: faces and crash
Product: [Applications] digikam Reporter: Jaime Torres <jtamate>
Component: Faces-EngineAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: caulier.gilles
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In: 7.0.0

Description Jaime Torres 2013-07-06 07:35:45 UTC
The fraces scan finished long time ago..
I was seeing the unknown faces list, introducing names to the faces..
In one photo, there were 2 faces. One was detected, the other one not.
I manually added the not detected face, introduced both names (without pressing confirm).
Then I pressed confirm in both of them quickly (once you confirm a face name, the photo dissapears from unknown faces list), perhaps when the photo was changing to the next one in the list..And crash.

I've just noticed: 89 threads.... 

Thread 89 (Thread 0x7fa40ccd9700 (LWP 5012)):
#0  0x00007fa424d66964 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fa42500f57a in wait (time=18446744073709551615, this=0x15e8360) at /g/kdegit/qt/src/corelib/thread/qwaitcondition_unix.cpp:86
#2  QWaitCondition::wait (this=<optimized out>, mutex=0x15046b8, time=18446744073709551615) at /g/kdegit/qt/src/corelib/thread/qwaitcondition_unix.cpp:158
#3  0x00000000005be4fc in Digikam::ScanController::run (this=0x15f2150) at /g/kdegit/extragear/graphics/digikam/digikam/database/scancontroller.cpp:713
#4  0x00007fa42500f157 in QThreadPrivate::start (arg=0x15f2150) at /g/kdegit/qt/src/corelib/thread/qthread_unix.cpp:349
#5  0x00007fa424d62e0e in start_thread () from /lib64/libpthread.so.0
#6  0x00007fa423cf8b9d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fa412c47900 (LWP 5010)):
[KCrash Handler]
#6  QVariant::~QVariant (this=0x374009b009b, __in_chrg=<optimized out>) at /g/kdegit/qt/src/corelib/kernel/qvariant.cpp:1411
#7  0x00007fa42b563611 in QList<QVariant>::node_destruct (n=<optimized out>, this=<optimized out>) at /usr/lib/qt4.5/include/QtCore/qlist.h:388
#8  0x00007fa42b56a494 in QList<QVariant>::erase (this=0x16660d8, afirst=..., alast=...) at /usr/lib/qt4.5/include/QtCore/qlist.h:811
#9  0x00007fa42b5662de in Digikam::ImageModel::removeRowPairs (this=this@entry=0x16661a0, toRemove=...) at /g/kdegit/extragear/graphics/digikam/libs/models/imagemodel.cpp:1025
#10 0x00007fa42b5670ee in Digikam::ImageModel::finishIncrementalRefresh (this=0x16661a0) at /g/kdegit/extragear/graphics/digikam/libs/models/imagemodel.cpp:844
#11 0x000000000056512f in Digikam::ImageAlbumModel::slotResult (this=0x16661a0, job=<optimized out>) at /g/kdegit/extragear/graphics/digikam/libs/models/imagealbummodel.cpp:307
#12 0x00007fa42511e137 in QMetaObject::activate (sender=0xb62bd30, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffbc5bf9b0) at /g/kdegit/qt/src/corelib/kernel/qobject.cpp:3547
#13 0x00007fa4255afc52 in KJob::result(KJob*) (this=this@entry=0xb62bd30, _t1=_t1@entry=0xb62bd30) at /g/b45/kdelibs/kdecore/kjob.moc:207
#14 0x00007fa4255aff35 in KJob::emitResult() (this=0xb62bd30) at /g/kdegit/kdelibs/kdecore/jobs/kjob.cpp:318
#15 0x00007fa427454712 in KIO::SimpleJob::slotFinished (this=0xb62bd30) at /g/kdegit/kdelibs/kio/kio/job.cpp:494
#16 0x00007fa42742b050 in KIO::TransferJob::slotFinished (this=0xb62bd30) at /g/kdegit/kdelibs/kio/kio/job.cpp:1081
#17 0x00007fa42511e137 in QMetaObject::activate (sender=0xb786bb0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at /g/kdegit/qt/src/corelib/kernel/qobject.cpp:3547
#18 0x00007fa42753ffd2 in KIO::SlaveInterface::dispatch(int, QByteArray const&) (this=<optimized out>, _cmd=104, rawdata=...) at /g/kdegit/kdelibs/kio/kio/slaveinterface.cpp:172
#19 0x00007fa42747feb3 in KIO::SlaveInterface::dispatch() (this=0xb786bb0) at /g/kdegit/kdelibs/kio/kio/slaveinterface.cpp:88
#20 0x00007fa4274508b9 in KIO::Slave::gotInput (this=0xb786bb0) at /g/kdegit/kdelibs/kio/kio/slave.cpp:344
#21 0x00007fa42511e137 in QMetaObject::activate (sender=0xb8d70d0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at /g/kdegit/qt/src/corelib/kernel/qobject.cpp:3547
#22 0x00007fa4274808cc in dequeue (this=0xb6753f0) at /g/kdegit/kdelibs/kio/kio/connection.cpp:82
#23 0x00007fa4251183e8 in QMetaCallEvent::placeMetaCall (this=<optimized out>, object=<optimized out>) at /g/kdegit/qt/src/corelib/kernel/qobject.cpp:524
#24 0x00007fa4251203d1 in QObject::event (this=0xb8d70d0, e=<optimized out>) at /g/kdegit/qt/src/corelib/kernel/qobject.cpp:1194
#25 0x00007fa425bfdc89 in QApplicationPrivate::notify_helper (this=this@entry=0x1400cf0, receiver=receiver@entry=0xb8d70d0, e=e@entry=0xdf71d90) at /g/kdegit/qt/src/gui/kernel/qapplication.cpp:4562
#26 0x00007fa425c04440 in QApplication::notify (this=0x7fffbc5c0bb0, receiver=0xb8d70d0, e=0xdf71d90) at /g/kdegit/qt/src/gui/kernel/qapplication.cpp:3944
#27 0x00007fa42695a2ee in KApplication::notify (this=0x7fffbc5c0bb0, receiver=0xb8d70d0, event=0xdf71d90) at /g/kdegit/kdelibs/kdeui/kernel/kapplication.cpp:311
#28 0x00007fa4251080a4 in QCoreApplication::notifyInternal (this=0x7fffbc5c0bb0, receiver=receiver@entry=0xb8d70d0, event=event@entry=0xdf71d90) at /g/kdegit/qt/src/corelib/kernel/qcoreapplication.cpp:949
#29 0x00007fa42510af8c in sendEvent (event=0xdf71d90, receiver=0xb8d70d0) at ../../include/QtCore/../../../../kdegit/qt/src/corelib/kernel/qcoreapplication.h:231
#30 QCoreApplicationPrivate::sendPostedEvents (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x1363740) at /g/kdegit/qt/src/corelib/kernel/qcoreapplication.cpp:1573
#31 0x00007fa42510b159 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /g/kdegit/qt/src/corelib/kernel/qcoreapplication.cpp:1466
#32 0x00007fa425135f58 in sendPostedEvents () at ../../include/QtCore/../../../../kdegit/qt/src/corelib/kernel/qcoreapplication.h:236
#33 postEventSourceDispatch (s=0x13f63e0) at /g/kdegit/qt/src/corelib/kernel/qeventdispatcher_glib.cpp:280
#34 0x00007fa4201e7ca5 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#35 0x00007fa4201e7fe8 in ?? () from /usr/lib64/libglib-2.0.so.0
#36 0x00007fa4201e80a4 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#37 0x00007fa4251358a1 in QEventDispatcherGlib::processEvents (this=0x1363040, flags=...) at /g/kdegit/qt/src/corelib/kernel/qeventdispatcher_glib.cpp:425
#38 0x00007fa425ca0246 in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=...) at /g/kdegit/qt/src/gui/kernel/qguieventdispatcher_glib.cpp:204
#39 0x00007fa42510648a in QEventLoop::processEvents (this=this@entry=0x7fffbc5c06c0, flags=...) at /g/kdegit/qt/src/corelib/kernel/qeventloop.cpp:149
#40 0x00007fa4251066df in QEventLoop::exec (this=0x7fffbc5c06c0, flags=...) at /g/kdegit/qt/src/corelib/kernel/qeventloop.cpp:204
#41 0x00007fa42510bde5 in QCoreApplication::exec () at /g/kdegit/qt/src/corelib/kernel/qcoreapplication.cpp:1221
#42 0x00007fa425bfc19a in QApplication::exec () at /g/kdegit/qt/src/gui/kernel/qapplication.cpp:3823
#43 0x000000000049fe3f in main (argc=<optimized out>, argv=<optimized out>) at /g/kdegit/extragear/graphics/digikam/digikam/main/main.cpp:235

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

Possible duplicates by query: bug 321851, bug 321273, bug 320292, bug 317290, bug 314877.


Reproducible: Sometimes




I could not use drkonki (too much information... perhaps the backtrace of 89 threads).
Comment 1 Jaime Torres 2013-07-06 09:01:17 UTC
I've just noticed that before the crash, the dialogs to introduce the name behave randomly...
They do not move to allow you to select the name from the list, so the list is bellow the low border.
They move so you can not click on them to select the name.
They stay calm, but you have to select the name several times, because it is discarded.
In a image with several recognized faces, name one, the image is reloaded and you can enter more names. At some moment, this changes and you can only enter the first one unless you click on another image and back to the desired one.

This means I can reproduce this bug.
Comment 2 caulier.gilles 2013-07-06 13:41:52 UTC
In fact the trace is the same than bug #262596

Gilles Caulier

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