Bug 295802 - crash in Nepomuk::ResourceWatcher::addResource
Summary: crash in Nepomuk::ResourceWatcher::addResource
Status: RESOLVED FIXED
Alias: None
Product: nepomuk
Classification: Unclassified
Component: libnepomukcore (show other bugs)
Version: unspecified
Platform: openSUSE RPMs Linux
: NOR crash (vote)
Target Milestone: ---
Assignee: Sebastian Trueg
URL:
Keywords:
: 305537 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-03-11 21:37 UTC by Sascha Manns
Modified: 2012-10-02 19:28 UTC (History)
3 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Sascha Manns 2012-03-11 21:37:47 UTC
Application: conquirere ()
KDE Platform Version: 4.8.1 (4.8.1)
Qt Version: 4.8.0
Operating System: Linux 3.2.9-13-default x86_64
Distribution: "Balsam Professional 12.1 (x86_64)"

-- Information about the crash:
- What I was doing when the application crashed:
I just started conquirere, then the GUI comes up. Then it crashes immediateley.

-- Backtrace:
Application: Conquirere (conquirere), signal: Aborted
[Current thread is 1 (Thread 0x7f4cac60e760 (LWP 3235))]

Thread 10 (Thread 0x7f4c964b2700 (LWP 3256)):
#0  0x00007f4ca6dca209 in syscall () from /lib64/libc.so.6
#1  0x00007f4ca80e702b in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x8b2f70) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0x8b2f70, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007f4ca80e2ded in QMutex::lockInternal (this=<optimized out>) at thread/qmutex.cpp:450
#4  0x00007f4ca8565256 in QDBusMutexLocker (m=0x8b2e18, this=<synthetic pointer>, s=0x8b2db0, a=SendWithReplyAsyncAction) at qdbusthreaddebug_p.h:188
#5  QDBusDispatchLocker (s=0x8b2db0, a=SendWithReplyAsyncAction, this=<synthetic pointer>) at qdbusthreaddebug_p.h:203
#6  QDBusConnectionPrivate::sendWithReplyAsync (this=0x8b2db0, message=<optimized out>, timeout=-1) at qdbusintegrator.cpp:2003
#7  0x00007f4ca8553580 in QDBusConnection::asyncCall (this=<optimized out>, message=<optimized out>, timeout=<optimized out>) at qdbusconnection.cpp:628
#8  0x00007f4ca8571225 in QDBusAbstractInterface::asyncCallWithArgumentList (this=0xb1de30, method=..., args=...) at qdbusabstractinterface.cpp:501
#9  0x00007f4ca9c6ae53 in addResource (resource=..., this=0xb1de30) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/resourcewatcherconnectioninterface.h:50
#10 Nepomuk::ResourceWatcher::addResource (this=<optimized out>, res=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcewatcher.cpp:143
#11 0x00007f4ca9c4cdcb in Nepomuk::ResourceData::load (this=0x7f4c9003a360) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:405
#12 0x00007f4ca9c4d7bc in Nepomuk::ResourceData::property (this=0x7f4c9003a360, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:265
#13 0x00007f4ca9c637e3 in Nepomuk::Resource::property (this=0x7f4c964b0af0, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resource.cpp:301
#14 0x00000000004fe2a3 in DocumentQuery::createDisplayData (this=<optimized out>, res=...) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/documentquery.cpp:117
#15 0x00000000004f3ae1 in QueryClient::addToCache (this=0x120a960, entries=<optimized out>) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:97
#16 0x00000000004c08f1 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=0x120a960, _c=<optimized out>) at /usr/src/debug/conquirere-1327433961/build/src/core/moc_queryclient.cpp:75
#17 QueryClient::qt_static_metacall (_o=0x120a960, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/conquirere-1327433961/build/src/core/moc_queryclient.cpp:62
#18 0x00007f4ca81f9761 in QMetaObject::activate (sender=0x7f4c900013b0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7f4c964b0fd0) at kernel/qobject.cpp:3556
#19 0x00007f4ca96eee42 in Nepomuk::Query::QueryServiceClient::newEntries (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryserviceclient.moc:161
#20 0x00007f4ca96f0211 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=<optimized out>, _c=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryserviceclient.moc:84
#21 Nepomuk::Query::QueryServiceClient::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryserviceclient.moc:78
#22 0x00007f4ca81f9761 in QMetaObject::activate (sender=0x7f4c90007d10, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7f4c964b1160) at kernel/qobject.cpp:3556
#23 0x00007f4ca96f82b5 in OrgKdeNepomukQueryInterface::newEntries (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:141
#24 0x00007f4ca96f84e9 in qt_static_metacall (_a=0x7f4c964b1470, _id=<optimized out>, _o=0x7f4c90007d10, _c=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:68
#25 OrgKdeNepomukQueryInterface::qt_static_metacall (_o=0x7f4c90007d10, _c=<optimized out>, _id=<optimized out>, _a=0x7f4c964b1470) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:60
#26 0x00007f4ca96f88db in OrgKdeNepomukQueryInterface::qt_metacall (this=0x7f4c90007d10, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7f4c964b1470) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:118
#27 0x00007f4ca8561f6b in QDBusConnectionPrivate::deliverCall (this=0x7f4c900023d0, object=0x7f4c90007d10, msg=..., metaTypes=..., slotIdx=7) at qdbusintegrator.cpp:947
#28 0x00007f4ca81fe926 in QObject::event (this=0x7f4c90007d10, e=<optimized out>) at kernel/qobject.cpp:1204
#29 0x00007f4ca756ae84 in notify_helper (e=0x7f4c900157b0, receiver=0x7f4c90007d10, this=0x904790) at kernel/qapplication.cpp:4550
#30 QApplicationPrivate::notify_helper (this=0x904790, receiver=0x7f4c90007d10, e=0x7f4c900157b0) at kernel/qapplication.cpp:4522
#31 0x00007f4ca756fd03 in QApplication::notify (this=0x7fff24cce670, receiver=0x7f4c90007d10, e=0x7f4c900157b0) at kernel/qapplication.cpp:4411
#32 0x00007f4cabb43656 in KApplication::notify (this=0x7fff24cce670, receiver=0x7f4c90007d10, event=0x7f4c900157b0) at /usr/src/debug/kdelibs-4.8.1/kdeui/kernel/kapplication.cpp:311
#33 0x00007f4ca81e589c in QCoreApplication::notifyInternal (this=0x7fff24cce670, receiver=0x7f4c90007d10, event=0x7f4c900157b0) at kernel/qcoreapplication.cpp:876
#34 0x00007f4ca81e913a in sendEvent (event=0x7f4c900157b0, receiver=0x7f4c90007d10) at kernel/qcoreapplication.h:231
#35 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x120ab00) at kernel/qcoreapplication.cpp:1500
#36 0x00007f4ca82144c3 in sendPostedEvents () at kernel/qcoreapplication.h:236
#37 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:279
#38 0x00007f4ca03dc58d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#39 0x00007f4ca03dcd88 in ?? () from /usr/lib64/libglib-2.0.so.0
#40 0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#41 0x00007f4ca82148ef in QEventDispatcherGlib::processEvents (this=0x7f4c900008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#42 0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#43 0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c964b1e00, flags=...) at kernel/qeventloop.cpp:204
#44 0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#45 0x00000000004f1c08 in QueryClient::run (this=0x120a960) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#46 0x00007f4ca80e855b in QThreadPrivate::start (arg=0x120a960) at thread/qthread_unix.cpp:298
#47 0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#48 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 9 (Thread 0x7f4c95cb1700 (LWP 3257)):
#0  0x00007f4ca6dc4523 in poll () from /lib64/libc.so.6
#1  0x00007f4ca03dca98 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f4ca8214956 in QEventDispatcherGlib::processEvents (this=0x7f4c780008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c95cb0e00, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00000000004f1c08 in QueryClient::run (this=0x121b5e0) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#8  0x00007f4ca80e855b in QThreadPrivate::start (arg=0x121b5e0) at thread/qthread_unix.cpp:298
#9  0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 8 (Thread 0x7f4c954b0700 (LWP 3258)):
#0  0x00007f4ca6ae21b0 in pthread_mutex_unlock () from /lib64/libpthread.so.0
#1  0x00007f4ca03dc25e in g_main_context_check () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f4ca03dcab2 in ?? () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f4ca8214956 in QEventDispatcherGlib::processEvents (this=0x7f4c800008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c954afe00, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#8  0x00000000004f1c08 in QueryClient::run (this=0x1214cb0) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#9  0x00007f4ca80e855b in QThreadPrivate::start (arg=0x1214cb0) at thread/qthread_unix.cpp:298
#10 0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#11 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 7 (Thread 0x7f4c94caf700 (LWP 3259)):
#0  0x00007f4ca6dc4523 in poll () from /lib64/libc.so.6
#1  0x00007f4ca03dca98 in ?? () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f4ca8214956 in QEventDispatcherGlib::processEvents (this=0x7f4c7c0008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#4  0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#5  0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c94caee00, flags=...) at kernel/qeventloop.cpp:204
#6  0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#7  0x00000000004f1c08 in QueryClient::run (this=0x1215330) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#8  0x00007f4ca80e855b in QThreadPrivate::start (arg=0x1215330) at thread/qthread_unix.cpp:298
#9  0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 6 (Thread 0x7f4c8ffff700 (LWP 3260)):
#0  0x00007f4ca03dcafc in ?? () from /usr/lib64/libglib-2.0.so.0
#1  0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f4ca8214956 in QEventDispatcherGlib::processEvents (this=0x7f4c700008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#3  0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#4  0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c8fffee00, flags=...) at kernel/qeventloop.cpp:204
#5  0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#6  0x00000000004f1c08 in QueryClient::run (this=0x1210b90) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#7  0x00007f4ca80e855b in QThreadPrivate::start (arg=0x1210b90) at thread/qthread_unix.cpp:298
#8  0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#9  0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7f4c8f7fe700 (LWP 3261)):
#0  0x00007f4ca6ae1014 in pthread_mutex_lock () from /lib64/libpthread.so.0
#1  0x00007f4ca03dbb53 in g_main_context_prepare () from /usr/lib64/libglib-2.0.so.0
#2  0x00007f4ca03dc92d in ?? () from /usr/lib64/libglib-2.0.so.0
#3  0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#4  0x00007f4ca8214956 in QEventDispatcherGlib::processEvents (this=0x7f4c840008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#5  0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#6  0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c8f7fde00, flags=...) at kernel/qeventloop.cpp:204
#7  0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#8  0x00000000004f1c08 in QueryClient::run (this=0x120bbe0) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#9  0x00007f4ca80e855b in QThreadPrivate::start (arg=0x120bbe0) at thread/qthread_unix.cpp:298
#10 0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#11 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7f4c8effd700 (LWP 3262)):
[KCrash Handler]
#6  0x00007f4ca6d28d95 in raise () from /lib64/libc.so.6
#7  0x00007f4ca6d2a2ab in abort () from /lib64/libc.so.6
#8  0x00007f4ca6d62ece in __libc_message () from /lib64/libc.so.6
#9  0x00007f4ca6d68c06 in malloc_printerr () from /lib64/libc.so.6
#10 0x00007f4ca6d6b7b0 in _int_realloc () from /lib64/libc.so.6
#11 0x00007f4ca6d6d3be in realloc () from /lib64/libc.so.6
#12 0x00007f4ca8105f96 in QListData::realloc (this=0x8c4e08, alloc=1021) at tools/qlist.cpp:221
#13 0x00007f4ca8106045 in QListData::append (this=0x8c4e08, n=1) at tools/qlist.cpp:243
#14 0x00007f4ca9c6af1c in append (t=..., this=0x8c4e08) at /usr/include/QtCore/qlist.h:530
#15 operator<< (t=..., this=0x8c4e08) at /usr/include/QtCore/qlist.h:334
#16 operator<< (t=..., this=0x8c4e08) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcewatcher.cpp:139
#17 Nepomuk::ResourceWatcher::addResource (this=0xaa2630, res=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcewatcher.cpp:141
#18 0x00007f4ca9c4cdcb in Nepomuk::ResourceData::load (this=0x17b2610) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:405
#19 0x00007f4ca9c4d7bc in Nepomuk::ResourceData::property (this=0x17b2610, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:265
#20 0x00007f4ca9c637e3 in Nepomuk::Resource::property (this=0x7f4c8effbaf0, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resource.cpp:301
#21 0x000000000050984c in EventQuery::createDecorationData (this=<optimized out>, res=...) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/eventquery.cpp:164
#22 0x00000000004f3b48 in QueryClient::addToCache (this=0x1212370, entries=<optimized out>) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:98
#23 0x00000000004c08f1 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=0x1212370, _c=<optimized out>) at /usr/src/debug/conquirere-1327433961/build/src/core/moc_queryclient.cpp:75
#24 QueryClient::qt_static_metacall (_o=0x1212370, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/conquirere-1327433961/build/src/core/moc_queryclient.cpp:62
#25 0x00007f4ca81f9761 in QMetaObject::activate (sender=0x7f4c880013b0, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7f4c8effbfd0) at kernel/qobject.cpp:3556
#26 0x00007f4ca96eee42 in Nepomuk::Query::QueryServiceClient::newEntries (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryserviceclient.moc:161
#27 0x00007f4ca96f0211 in qt_static_metacall (_a=<optimized out>, _id=<optimized out>, _o=<optimized out>, _c=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryserviceclient.moc:84
#28 Nepomuk::Query::QueryServiceClient::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryserviceclient.moc:78
#29 0x00007f4ca81f9761 in QMetaObject::activate (sender=0x7f4c88008720, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7f4c8effc160) at kernel/qobject.cpp:3556
#30 0x00007f4ca96f82b5 in OrgKdeNepomukQueryInterface::newEntries (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:141
#31 0x00007f4ca96f84e9 in qt_static_metacall (_a=0x7f4c8effc470, _id=<optimized out>, _o=0x7f4c88008720, _c=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:68
#32 OrgKdeNepomukQueryInterface::qt_static_metacall (_o=0x7f4c88008720, _c=<optimized out>, _id=<optimized out>, _a=0x7f4c8effc470) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:60
#33 0x00007f4ca96f88db in OrgKdeNepomukQueryInterface::qt_metacall (this=0x7f4c88008720, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7f4c8effc470) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/query/queryinterface.moc:118
#34 0x00007f4ca8561f6b in QDBusConnectionPrivate::deliverCall (this=0x7f4c880021d0, object=0x7f4c88008720, msg=..., metaTypes=..., slotIdx=7) at qdbusintegrator.cpp:947
#35 0x00007f4ca81fe926 in QObject::event (this=0x7f4c88008720, e=<optimized out>) at kernel/qobject.cpp:1204
#36 0x00007f4ca756ae84 in notify_helper (e=0x7f4c88017ba0, receiver=0x7f4c88008720, this=0x904790) at kernel/qapplication.cpp:4550
#37 QApplicationPrivate::notify_helper (this=0x904790, receiver=0x7f4c88008720, e=0x7f4c88017ba0) at kernel/qapplication.cpp:4522
#38 0x00007f4ca756fd03 in QApplication::notify (this=0x7fff24cce670, receiver=0x7f4c88008720, e=0x7f4c88017ba0) at kernel/qapplication.cpp:4411
#39 0x00007f4cabb43656 in KApplication::notify (this=0x7fff24cce670, receiver=0x7f4c88008720, event=0x7f4c88017ba0) at /usr/src/debug/kdelibs-4.8.1/kdeui/kernel/kapplication.cpp:311
#40 0x00007f4ca81e589c in QCoreApplication::notifyInternal (this=0x7fff24cce670, receiver=0x7f4c88008720, event=0x7f4c88017ba0) at kernel/qcoreapplication.cpp:876
#41 0x00007f4ca81e913a in sendEvent (event=0x7f4c88017ba0, receiver=0x7f4c88008720) at kernel/qcoreapplication.h:231
#42 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x1212a60) at kernel/qcoreapplication.cpp:1500
#43 0x00007f4ca82144c3 in sendPostedEvents () at kernel/qcoreapplication.h:236
#44 postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:279
#45 0x00007f4ca03dc58d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#46 0x00007f4ca03dcd88 in ?? () from /usr/lib64/libglib-2.0.so.0
#47 0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#48 0x00007f4ca82148ef in QEventDispatcherGlib::processEvents (this=0x7f4c880008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#49 0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#50 0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7f4c8effce00, flags=...) at kernel/qeventloop.cpp:204
#51 0x00007f4ca80e5537 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#52 0x00000000004f1c08 in QueryClient::run (this=0x1212370) at /usr/src/debug/conquirere-1327433961/src/core/queryclients/queryclient.cpp:64
#53 0x00007f4ca80e855b in QThreadPrivate::start (arg=0x1212370) at thread/qthread_unix.cpp:298
#54 0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#55 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f4c8d0fc700 (LWP 3313)):
#0  0x00007f4ca6dca209 in syscall () from /lib64/libc.so.6
#1  0x00007f4ca80e702b in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x8b2f70) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0x8b2f70, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007f4ca80e2ded in QMutex::lockInternal (this=<optimized out>) at thread/qmutex.cpp:450
#4  0x00007f4ca8565256 in QDBusMutexLocker (m=0x8b2e18, this=<synthetic pointer>, s=0x8b2db0, a=SendWithReplyAsyncAction) at qdbusthreaddebug_p.h:188
#5  QDBusDispatchLocker (s=0x8b2db0, a=SendWithReplyAsyncAction, this=<synthetic pointer>) at qdbusthreaddebug_p.h:203
#6  QDBusConnectionPrivate::sendWithReplyAsync (this=0x8b2db0, message=<optimized out>, timeout=-1) at qdbusintegrator.cpp:2003
#7  0x00007f4ca8553580 in QDBusConnection::asyncCall (this=<optimized out>, message=<optimized out>, timeout=<optimized out>) at qdbusconnection.cpp:628
#8  0x00007f4ca8571225 in QDBusAbstractInterface::asyncCallWithArgumentList (this=0xb1de30, method=..., args=...) at qdbusabstractinterface.cpp:501
#9  0x00007f4ca9c6ae53 in addResource (resource=..., this=0xb1de30) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/resourcewatcherconnectioninterface.h:50
#10 Nepomuk::ResourceWatcher::addResource (this=<optimized out>, res=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcewatcher.cpp:143
#11 0x00007f4ca9c4cdcb in Nepomuk::ResourceData::load (this=0x180dab0) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:405
#12 0x00007f4ca9c4d7bc in Nepomuk::ResourceData::property (this=0x180dab0, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:265
#13 0x00007f4ca9c637e3 in Nepomuk::Resource::property (this=0x7f4c8d0fbd20, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resource.cpp:301
#14 0x00007f4ca9c64f69 in Nepomuk::Resource::genericLabel (this=0x7f4c8d0fbd20) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resource.cpp:388
#15 0x0000000000544585 in PropertyEdit::insertCompletionModel (this=<optimized out>, entries=<optimized out>, completerModel=0xb459e0) at /usr/src/debug/conquirere-1327433961/src/propertywidgets/propertyedit.cpp:470
#16 0x00000000004bb636 in run (this=0x180bec0) at /usr/include/QtCore/qtconcurrentrunbase.h:134
#17 QtConcurrent::RunFunctionTask<void>::run (this=0x180bec0) at /usr/include/QtCore/qtconcurrentrunbase.h:125
#18 0x00007f4ca80dbd12 in QThreadPoolThread::run (this=0xbb1580) at concurrent/qthreadpool.cpp:107
#19 0x00007f4ca80e855b in QThreadPrivate::start (arg=0xbb1580) at thread/qthread_unix.cpp:298
#20 0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#21 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f4c8c8fb700 (LWP 3315)):
#0  0x00007f4ca6dca209 in syscall () from /lib64/libc.so.6
#1  0x00007f4ca80e702b in _q_futex (val2=0, addr2=0x0, timeout=0x0, val=2, op=0, addr=0x7ec080) at thread/qmutex_unix.cpp:99
#2  QMutexPrivate::wait (this=0x7ec080, timeout=<optimized out>) at thread/qmutex_unix.cpp:113
#3  0x00007f4ca80e2ded in QMutex::lockInternal (this=<optimized out>) at thread/qmutex.cpp:450
#4  0x00007f4ca81e8989 in QCoreApplication::postEvent (receiver=0x8b2db0, event=0x7f4c7404ab20, priority=0) at kernel/qcoreapplication.cpp:1281
#5  0x00007f4ca855dd13 in postEventToThread (ev=0x7f4c7404ab20, object=0x8b2db0, action=50, this=0x8b2db0) at qdbusintegrator.cpp:2419
#6  qDBusAddTimeout (timeout=0x7f4c7404b480, data=0x8b2db0) at qdbusintegrator.cpp:163
#7  0x00007f4ca0cc117d in ?? () from /lib64/libdbus-1.so.3
#8  0x00007f4ca0cadb90 in dbus_connection_send_with_reply () from /lib64/libdbus-1.so.3
#9  0x00007f4ca856526d in q_dbus_connection_send_with_reply (timeout_milliseconds=-1, pending_return=0x7f4c8c8fa578, message=0x355a870, connection=<optimized out>) at qdbus_symbols_p.h:130
#10 QDBusConnectionPrivate::sendWithReplyAsync (this=0x8b2db0, message=<optimized out>, timeout=-1) at qdbusintegrator.cpp:2004
#11 0x00007f4ca8553580 in QDBusConnection::asyncCall (this=<optimized out>, message=<optimized out>, timeout=<optimized out>) at qdbusconnection.cpp:628
#12 0x00007f4ca8571225 in QDBusAbstractInterface::asyncCallWithArgumentList (this=0xb1de30, method=..., args=...) at qdbusabstractinterface.cpp:501
#13 0x00007f4ca9c6ae53 in addResource (resource=..., this=0xb1de30) at /usr/src/debug/kdelibs-4.8.1/build/nepomuk/resourcewatcherconnectioninterface.h:50
#14 Nepomuk::ResourceWatcher::addResource (this=<optimized out>, res=<optimized out>) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcewatcher.cpp:143
#15 0x00007f4ca9c4cdcb in Nepomuk::ResourceData::load (this=0x27b4e40) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:405
#16 0x00007f4ca9c4d7bc in Nepomuk::ResourceData::property (this=0x27b4e40, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resourcedata.cpp:265
#17 0x00007f4ca9c637e3 in Nepomuk::Resource::property (this=0x7f4c8c8fad20, uri=...) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resource.cpp:301
#18 0x00007f4ca9c64ffe in Nepomuk::Resource::genericLabel (this=0x7f4c8c8fad20) at /usr/src/debug/kdelibs-4.8.1/nepomuk/core/resource.cpp:392
#19 0x0000000000544585 in PropertyEdit::insertCompletionModel (this=<optimized out>, entries=<optimized out>, completerModel=0xe346d0) at /usr/src/debug/conquirere-1327433961/src/propertywidgets/propertyedit.cpp:470
#20 0x00000000004bb636 in run (this=0x15148d0) at /usr/include/QtCore/qtconcurrentrunbase.h:134
#21 QtConcurrent::RunFunctionTask<void>::run (this=0x15148d0) at /usr/include/QtCore/qtconcurrentrunbase.h:125
#22 0x00007f4ca80dbd12 in QThreadPoolThread::run (this=0x103e6c0) at concurrent/qthreadpool.cpp:107
#23 0x00007f4ca80e855b in QThreadPrivate::start (arg=0x103e6c0) at thread/qthread_unix.cpp:298
#24 0x00007f4ca6adef05 in start_thread () from /lib64/libpthread.so.0
#25 0x00007f4ca6dcd63d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f4cac60e760 (LWP 3235)):
#0  0x00007f4ca6dda83e in __lll_lock_wait_private () from /lib64/libc.so.6
#1  0x00007f4ca6d6ed21 in _L_lock_9946 () from /lib64/libc.so.6
#2  0x00007f4ca6d6cd60 in malloc () from /lib64/libc.so.6
#3  0x00007f4ca714067d in operator new(unsigned long) () from /usr/lib64/libstdc++.so.6
#4  0x00007f4ca81ea0f2 in node_construct (t=..., n=0xf47bb8, this=<optimized out>) at ../../src/corelib/tools/qlist.h:372
#5  QList<QPostEvent>::append (this=0x7f1770, t=...) at ../../src/corelib/tools/qlist.h:521
#6  0x00007f4ca81e924d in addEvent (ev=..., this=0x7f1770) at ../../src/corelib/thread/qthread_p.h:120
#7  QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x7f1740) at kernel/qcoreapplication.cpp:1474
#8  0x00007f4ca82144c3 in sendPostedEvents () at kernel/qcoreapplication.h:236
#9  postEventSourceDispatch (s=<optimized out>) at kernel/qeventdispatcher_glib.cpp:279
#10 0x00007f4ca03dc58d in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#11 0x00007f4ca03dcd88 in ?? () from /usr/lib64/libglib-2.0.so.0
#12 0x00007f4ca03dcf59 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#13 0x00007f4ca82148ef in QEventDispatcherGlib::processEvents (this=0x7f1000, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#14 0x00007f4ca760e2de in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#15 0x00007f4ca81e4682 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#16 0x00007f4ca81e48d7 in QEventLoop::exec (this=0x7fff24cce600, flags=...) at kernel/qeventloop.cpp:204
#17 0x00007f4ca81e9435 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#18 0x000000000042774c in main (argc=3, argv=0x7fff24cce898) at /usr/src/debug/conquirere-1327433961/src/main.cpp:48

Possible duplicates by query: bug 294040, bug 287966, bug 284565.

Reported using DrKonqi
Comment 1 Jörg Ehrichs 2012-03-11 22:52:45 UTC
The bug came with 4.8.1 hope this will go away again with 4.8.2
Comment 2 Christoph Feck 2012-03-15 21:20:58 UTC
Most certainly also bug 295474.
Comment 3 David Faure 2012-07-13 16:41:45 UTC
Race condition in nepomuk's resourcedata.cpp

Helgrind log: http://www.davidfaure.fr/2012/nepomuk_race
The fix I'm about to test:  http://www.davidfaure.fr/2012/resourcedata.cpp.diff
Comment 4 Matěj Laitl 2012-08-24 09:30:37 UTC
*** Bug 305537 has been marked as a duplicate of this bug. ***
Comment 5 David Faure 2012-09-06 16:41:19 UTC
Better patch submitted for review at http://git.reviewboard.kde.org/r/105562
Comment 6 David Faure 2012-09-29 10:08:34 UTC
Git commit 3262f04643ae5632077f4f91e3c669c277ded656 by David Faure.
Committed on 20/09/2012 at 00:46.
Pushed by dfaure into branch 'KDE/4.9'.

Fix race conditions in nepomuk's ResourceData.

So that no AB/BA deadlocks happen, the rule is that the RM mutex must never be
locked after the modificationMutex. It's either modification alone, or RM and then modification.

I had to move some code from RM to RD, because RM was using data->m_cache directly,
without locking data's mutex first!
This new code is not only more threadsafe (no helgrind warning anymore in my tests)
but also much better object-oriented, RM is no longer accessing RD's private data directly.
REVIEW: 105562

M  +48   -11   libnepomukcore/resource/resourcedata.cpp
M  +13   -3    libnepomukcore/resource/resourcedata.h
M  +4    -24   libnepomukcore/resource/resourcemanager.cpp

http://commits.kde.org/nepomuk-core/3262f04643ae5632077f4f91e3c669c277ded656
Comment 7 David Faure 2012-10-02 19:28:29 UTC
Note that KMail, in the KDE/4.9 branch, still uses kdelibs/nepomuk rather than nepomuk-core. So this fix, although applied to KDE/4.9, will only benefit KMail 4.10 (which has been ported to nepomuk-core).
Backporting the fix to kdelibs/nepomuk is... quite some work, since the patch doesn't apply at all.