Bug 245266

Summary: Crash of strigi/nepomuk while indexing [invalid QMutex::lock, Soprano::Error::ErrorCache::clearError, Soprano::Error::ErrorCache::setError, Soprano::Client::DBusModel::executeQuery]
Product: nepomuk Reporter: Cyrille Dunant <cyrille.dunant>
Component: generalAssignee: Sebastian Trueg <sebastian>
Status: RESOLVED FIXED    
Severity: crash CC: andresbajotierra, endymion+kde, filipesbim, joaodagarota, kde, Laurent.Rineau__kde, magistr.yoda, marcello, martin, onezork, rserral, trueg, write.tom.moore
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: openSUSE   
OS: Linux   
Latest Commit: Version Fixed In: 4.6

Description Cyrille Dunant 2010-07-21 00:02:06 UTC
Application: nepomukservicestub (0.2)
KDE Platform Version: 4.5.60 (KDE 4.5.60 (KDE 4.6 >= 20100627)) "release 3"
Qt Version: 4.6.3
Operating System: Linux 2.6.31.12-0.2-desktop x86_64
Distribution: "openSUSE 11.2 (x86_64)"

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

The crash occured on startup, as the service had just begun indexing the files.

-- Backtrace:
Application: Nepomuk Service Stub (nepomukservicestub), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fc7db6c3760 (LWP 9609))]

Thread 2 (Thread 0x7fc7cb7f7710 (LWP 10002)):
[KCrash Handler]
#6  QMutex::lock (this=0x8) at thread/qmutex.cpp:150
#7  0x00007fc7d5731649 in Soprano::Error::ErrorCache::clearError() const () from /usr/lib64/libsoprano.so.4
#8  0x00007fc7d5731cd8 in Soprano::Error::ErrorCache::setError(Soprano::Error::Error const&) const () from /usr/lib64/libsoprano.so.4
#9  0x00007fc7d54c8c7a in Soprano::Client::DBusModel::executeQuery(QString const&, Soprano::Query::QueryLanguage, QString const&) const () from /usr/lib64/libsopranoclient.so.1
#10 0x00007fc7d9e8b28f in Nepomuk::MainModel::executeQuery (this=0x72ea70, query=..., language=QueryLanguageSparql, userQueryLanguage=...)
    at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/nepomukmainmodel.cpp:212
#11 0x00007fc7d5741839 in Soprano::FilterModel::executeQuery(QString const&, Soprano::Query::QueryLanguage, QString const&) const () from /usr/lib64/libsoprano.so.4
#12 0x00007fc7d9e7c9e7 in Nepomuk::ResourceData::determineUri (this=0x7d57f0) at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/resourcedata.cpp:577
#13 0x00007fc7d9e8d59a in Nepomuk::Resource::determineFinalResourceData (this=0x7fc7cb7f69a0) at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/resource.cpp:885
#14 0x00007fc7d9e8d899 in Nepomuk::Resource::exists (this=0x8) at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/resource.cpp:328
#15 0x00007fc7cb860ccc in ?? () from /usr/lib64/kde4/nepomukfilewatch.so
#16 0x00007fc7cb863dc0 in ?? () from /usr/lib64/kde4/nepomukfilewatch.so
#17 0x00007fc7db10ef95 in QThreadPrivate::start (arg=0x79ff60) at thread/qthread_unix.cpp:248
#18 0x00007fc7dae7ea4f in start_thread () from /lib64/libpthread.so.0
#19 0x00007fc7d8c1a82d in clone () from /lib64/libc.so.6
#20 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fc7db6c3760 (LWP 9609)):
#0  0x00007fc7dae8268e in __pthread_mutex_unlock_usercnt () from /lib64/libpthread.so.0
#1  0x00007fc7d7768ca0 in socket_do_iteration (transport=0x6ef890, flags=6, timeout_milliseconds=20525) at dbus-transport-socket.c:1121
#2  0x00007fc7d7767bad in _dbus_transport_do_iteration (transport=0x6ef890, flags=<value optimized out>, timeout_milliseconds=<value optimized out>) at dbus-transport.c:980
#3  0x00007fc7d7752705 in _dbus_connection_do_iteration_unlocked (connection=0x6efeb0, pending=<value optimized out>, flags=6, timeout_milliseconds=20525) at dbus-connection.c:1206
#4  0x00007fc7d7753b79 in _dbus_connection_block_pending_call (pending=0x7d55b0) at dbus-connection.c:2507
#5  0x00007fc7d7753024 in dbus_connection_send_with_reply_and_block (connection=0x6efeb0, message=0x71bf20, timeout_milliseconds=-1, error=0x7fff82c49700) at dbus-connection.c:3559
#6  0x00007fc7dac2ad20 in q_dbus_connection_send_with_reply_and_block (error=<value optimized out>, timeout_milliseconds=<value optimized out>, message=<value optimized out>, 
    connection=<value optimized out>) at qdbus_symbols_p.h:133
#7  QDBusConnectionPrivate::sendWithReply (error=<value optimized out>, timeout_milliseconds=<value optimized out>, message=<value optimized out>, connection=<value optimized out>)
    at qdbusintegrator.cpp:1828
#8  0x00007fc7dac16d63 in QDBusConnection::call (this=0x7b8fe0, message=..., mode=NoBlock, timeout=7274448) at qdbusconnection.cpp:522
#9  0x00007fc7dac34c82 in QDBusAbstractInterface::callWithArgumentList (this=<value optimized out>, mode=Block, method=<value optimized out>, args=<value optimized out>)
    at qdbusabstractinterface.cpp:440
#10 0x00007fc7d54c4d34 in ?? () from /usr/lib64/libsopranoclient.so.1
#11 0x00007fc7d54c63dd in Soprano::Client::DBusClient::createModel(QString const&, QList<Soprano::BackendSetting> const&) () from /usr/lib64/libsopranoclient.so.1
#12 0x00007fc7d9e87d50 in (anonymous namespace)::GlobalModelContainer::init (this=0x72ae30, forced=<value optimized out>)
    at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/nepomukmainmodel.cpp:92
#13 0x00007fc7d9e8ba6e in Nepomuk::MainModel::init (this=0x72ea70) at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/nepomukmainmodel.cpp:176
#14 0x00007fc7d9e81b9e in Nepomuk::ResourceManager::init (this=0x72ed20) at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/resourcemanager.cpp:329
#15 0x00007fc7d9e83645 in Nepomuk::ResourceManagerPrivate::_k_storageServiceInitialized (this=0x76be10, success=<value optimized out>)
    at /usr/src/debug/kdelibs-4.5.60svn1150789/nepomuk/core/resourcemanager.cpp:220
#16 0x00007fc7d9e83725 in Nepomuk::ResourceManager::qt_metacall (this=0x72ed20, _c=InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff82c4a0c0)
    at /usr/src/debug/kdelibs-4.5.60svn1150789/build/nepomuk/resourcemanager.moc:90
#17 0x00007fc7dac2446e in QDBusConnectionPrivate::deliverCall (this=<value optimized out>, object=<value optimized out>, msg=<value optimized out>, metaTypes=..., slotIdx=<value optimized out>)
    at qdbusintegrator.cpp:904
#18 0x00007fc7dac2ffcf in QDBusCallDeliveryEvent::placeMetaCall (this=0x0, object=0x0) at qdbusintegrator_p.h:101
#19 0x00007fc7db20e949 in QObject::event (this=0x72ed20, e=0x7d1140) at kernel/qobject.cpp:1248
#20 0x00007fc7d93707fc in QApplicationPrivate::notify_helper (this=0x626140, receiver=0x72ed20, e=0x7d1140) at kernel/qapplication.cpp:4302
#21 0x00007fc7d9376ddb in QApplication::notify (this=0x7fff82c4acb0, receiver=0x72ed20, e=0x7d1140) at kernel/qapplication.cpp:4185
#22 0x00007fc7da313996 in KApplication::notify (this=0x7fff82c4acb0, receiver=0x72ed20, event=0x7d1140) at /usr/src/debug/kdelibs-4.5.60svn1150789/kdeui/kernel/kapplication.cpp:309
#23 0x00007fc7db1feb1c in QCoreApplication::notifyInternal (this=0x7fff82c4acb0, receiver=0x72ed20, event=0x7d1140) at kernel/qcoreapplication.cpp:726
#24 0x00007fc7db2021d4 in sendEvent (event=<value optimized out>, receiver=<value optimized out>) at kernel/qcoreapplication.h:215
#25 QCoreApplicationPrivate::sendPostedEvents (event=<value optimized out>, receiver=<value optimized out>) at kernel/qcoreapplication.cpp:1367
#26 0x00007fc7db228653 in sendPostedEvents () at kernel/qcoreapplication.h:220
#27 postEventSourceDispatch () at kernel/qeventdispatcher_glib.cpp:276
#28 0x00007fc7d807ea93 in g_main_context_dispatch () from /usr/lib64/libglib-2.0.so.0
#29 0x00007fc7d807f270 in ?? () from /usr/lib64/libglib-2.0.so.0
#30 0x00007fc7d807f510 in g_main_context_iteration () from /usr/lib64/libglib-2.0.so.0
#31 0x00007fc7db228193 in QEventDispatcherGlib::processEvents (this=0x60e9d0, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#32 0x00007fc7d941f21e in QGuiEventDispatcherGlib::processEvents (this=0x6effd0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#33 0x00007fc7db1fd432 in QEventLoop::processEvents (this=<value optimized out>, flags=) at kernel/qeventloop.cpp:149
#34 0x00007fc7db1fd80c in QEventLoop::exec (this=0x7fff82c4aae0, flags=) at kernel/qeventloop.cpp:201
#35 0x00007fc7db2024bb in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1003
#36 0x0000000000403f04 in _start ()

Reported using DrKonqi
Comment 1 Sebastian Trueg 2010-07-27 11:17:58 UTC
Is this still happening with latest Soprano (2.4.64) and kde trunk?
Comment 2 Cyrille Dunant 2010-07-28 01:16:12 UTC
I would gladly test, but suse packages only 2.4.64. Are there many changes ?
Comment 3 Sebastian Trueg 2010-07-28 16:40:49 UTC
Soprano 2.4.64 is the latest actually. If the crash still happens with that then I need to further investigate.
Comment 4 Sebastian Trueg 2010-07-29 11:37:28 UTC
Also it would be good to know if the crash does still happen with the latest unstable libdbus >=1.3.1
Comment 5 Nicolas L. 2010-08-14 19:37:33 UTC
Please try latest libdbus and tell here if this is still valid
Comment 6 Cyrille Dunant 2010-08-14 19:48:19 UTC
I have tried the latest dbus, and did not have this bug anymore. However, changing dbus caused other (unrelated) problems and I reverted.

But the problem did not reappear, so I guess it was unrelated, but rather due to some other component which got updated.
Comment 7 Dario Andres 2010-11-18 19:01:53 UTC
*** Bug 256895 has been marked as a duplicate of this bug. ***
Comment 8 Dario Andres 2010-11-18 19:01:56 UTC
*** Bug 252767 has been marked as a duplicate of this bug. ***
Comment 9 Dario Andres 2010-11-18 19:03:56 UTC
[Comment from a bug triager]
Additional note: bug 251418 and bug 252140 have similar backtraces with an trunk KDE (4.5.68/69) and Soprano 2.5.62/63
Comment 10 Dario Andres 2010-12-21 16:28:36 UTC
[Comment from a bug triager]
Reopening because there are more cases, and NEEDSINFO/FIXED was an invalid state.
Regards
Comment 11 Sebastian Trueg 2011-01-17 17:07:15 UTC
*** Bug 252140 has been marked as a duplicate of this bug. ***
Comment 12 Sebastian Trueg 2011-01-17 17:07:35 UTC
*** Bug 252766 has been marked as a duplicate of this bug. ***
Comment 13 Sebastian Trueg 2011-01-17 17:07:54 UTC
*** Bug 254445 has been marked as a duplicate of this bug. ***
Comment 14 Sebastian Trueg 2011-01-17 17:08:11 UTC
*** Bug 258235 has been marked as a duplicate of this bug. ***
Comment 15 Sebastian Trueg 2011-01-17 17:08:30 UTC
*** Bug 263078 has been marked as a duplicate of this bug. ***
Comment 16 Sebastian Trueg 2011-01-17 17:11:17 UTC
SVN commit 1215091 by trueg:

Properly handle DBus error replies when checking the init state of services.
This fixes a bug where services are started before the deps are initialized
and all sorts of problems appear.

BUG: 245266

 M  +12 -3     servicecontroller.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1215091
Comment 17 Sebastian Trueg 2011-01-19 17:05:40 UTC
*** Bug 263663 has been marked as a duplicate of this bug. ***
Comment 18 Sebastian Trueg 2011-03-18 10:50:23 UTC
*** Bug 268808 has been marked as a duplicate of this bug. ***
Comment 19 Dario Andres 2011-04-17 00:15:28 UTC
*** Bug 270300 has been marked as a duplicate of this bug. ***
Comment 20 Dario Andres 2011-05-01 16:47:01 UTC
*** Bug 271343 has been marked as a duplicate of this bug. ***
Comment 21 Dario Andres 2011-08-07 20:11:59 UTC
*** Bug 272838 has been marked as a duplicate of this bug. ***
Comment 22 Christophe Marin 2012-03-08 21:55:52 UTC
*** Bug 295091 has been marked as a duplicate of this bug. ***
Comment 23 José Filipe 2012-03-09 10:16:00 UTC
Hi !
Im using Fedora 16 and KDE 4.7.4 !
And frequently when i shutdown in kde (CTRL + ALT + DEL)
How i had configured inittab to multiuser mode, when the X closes, it shows a lot of logs ... and aftter logs and inform that nepomuk crashes and stop the shutdown operation, it shows the command line and i had to execute porweroff, to realy poweroff the machine !
It will be fixed ? Or how to fix this ?
Bye