Bug 240554 - Nepomuk Service Stub Crashes [qFatal, QDBusConnectionPrivate::connectSignal, QDBusConnection::connect, ..., Nepomuk::ResourceData::determineUri]
Summary: Nepomuk Service Stub Crashes [qFatal, QDBusConnectionPrivate::connectSignal, ...
Status: RESOLVED FIXED
Alias: None
Product: nepomuk
Classification: Miscellaneous
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Sebastian Trueg
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-06-03 05:59 UTC by Shantanu Tushar
Modified: 2010-11-21 00:24 UTC (History)
1 user (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 Shantanu Tushar 2010-06-03 05:59:20 UTC
Application: nepomukservicestub (0.2)
KDE Platform Version: 4.4.82 (KDE 4.4.82 (KDE 4.5 >= 20100601)) (Compiled from sources)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-22-generic i686
Distribution: Ubuntu 10.04 LTS

-- Information about the crash:
- What I was doing when the application crashed:
I was just running my usual desktop applications. The crash occurs during some changes to Plasma configurations, doesn't seem to happen everytime. Also crashes when plasma-desktop quits manually using kquitapp.

The crash can be reproduced some of the time.

-- Backtrace:
Application: Nepomuk Service Stub (nepomukservicestub), signal: Aborted
[Current thread is 1 (Thread 0xb7805710 (LWP 1939))]

Thread 2 (Thread 0xb56a2b70 (LWP 1956)):
[KCrash Handler]
#7  0x002ad832 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#8  0x00a70651 in *__GI_raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#9  0x00a73a82 in *__GI_abort () at abort.c:92
#10 0x0033bc43 in qt_message_output (msgType=QtFatalMsg, buf=0x9d64948 "ASSERT: \"false\" in file qdbusintegrator.cpp, line 2041") at global/qglobal.cpp:2250
#11 0x0033be3c in qt_message (msgType=QtFatalMsg, msg=0x4dd3a4 "ASSERT: \"%s\" in file %s, line %d", ap=0xb56a1c24 "\267\021\317") at global/qglobal.cpp:2296
#12 0x0033c25a in qFatal (msg=0x4dd3a4 "ASSERT: \"%s\" in file %s, line %d") at global/qglobal.cpp:2479
#13 0x0033b7dc in qt_assert (assertion=0xcf11b7 "false", file=0xcf052c "qdbusintegrator.cpp", line=2041) at global/qglobal.cpp:2013
#14 0x00caff87 in QDBusConnectionPrivate::connectSignal (this=0x9c90498, key=..., hook=...) at qdbusintegrator.cpp:2041
#15 0x00cafb95 in QDBusConnectionPrivate::connectSignal (this=0x9c90498, service=..., path=..., interface=..., name=..., argumentMatch=..., signature=..., receiver=0xb56a1fa4, 
    slot=0xcf20c4 "1_q_serviceOwnerChanged(QString,QString,QString)") at qdbusintegrator.cpp:2011
#16 0x00c9b76c in QDBusConnection::connect (this=0x9d63de8, service=..., path=..., interface=..., name=..., argumentMatch=..., signature=..., receiver=0xb56a1fa4, 
    slot=0xcf20c4 "1_q_serviceOwnerChanged(QString,QString,QString)") at qdbusconnection.cpp:623
#17 0x00cbf4e0 in QDBusAbstractInterface (this=0xb56a1fa4, d=..., parent=0x0) at qdbusabstractinterface.cpp:292
#18 0x00cc277e in QDBusInterface (this=0xb56a1fa4, service=..., path=..., interface=..., connection=..., parent=0x0) at qdbusinterface.cpp:219
#19 0x00142fa9 in Nepomuk::ResourceData::determineUri (this=0x9d5e190) at /home/hunny/kde/src/KDE/kdelibs/nepomuk/core/resourcedata.cpp:714
#20 0x001424b7 in Nepomuk::ResourceData::exists (this=0x9d5e190) at /home/hunny/kde/src/KDE/kdelibs/nepomuk/core/resourcedata.cpp:585
#21 0x001618a2 in Nepomuk::Resource::exists (this=0xb56a2184) at /home/hunny/kde/src/KDE/kdelibs/nepomuk/core/resource.cpp:356
#22 0x05dca35d in Nepomuk::MetadataMover::removeMetadata (this=0x9c28a70, url=...) at /home/hunny/kde/src/KDE/kdebase/runtime/nepomuk/services/filewatch/metadatamover.cpp:179
#23 0x05dc9e22 in Nepomuk::MetadataMover::run (this=0x9c28a70) at /home/hunny/kde/src/KDE/kdebase/runtime/nepomuk/services/filewatch/metadatamover.cpp:141
#24 0x00346e8c in QThreadPrivate::start (arg=0x9c28a70) at thread/qthread_unix.cpp:248
#25 0x006c396e in start_thread (arg=0xb56a2b70) at pthread_create.c:300
#26 0x00b13a4e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb7805710 (LWP 1939)):
#0  0x002ad832 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0x006c8015 in pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/i386/i686/../i486/pthread_cond_wait.S:122
#2  0x00348313 in QWaitConditionPrivate::wait (this=0x9c90788, time=4294967295) at thread/qwaitcondition_unix.cpp:87
#3  0x00348117 in QWaitCondition::wait (this=0x9c90150, mutex=0x9c90148, time=4294967295) at thread/qwaitcondition_unix.cpp:159
#4  0x003412dd in QReadWriteLock::lockForWrite (this=0x9c904d0) at thread/qreadwritelock.cpp:293
#5  0x00c9d35f in QDBusWriteLocker (this=0xbfd5f4b0, a=ObjectDestroyedAction, s=0x9c90498) at qdbusthreaddebug_p.h:162
#6  0x00ca9152 in QDBusConnectionPrivate::objectDestroyed (this=0x9c90498, obj=0xbfd5f6e8) at qdbusintegrator.cpp:1123
#7  0x00ceeacc in QDBusConnectionPrivate::qt_metacall (this=0x9c90498, _c=QMetaObject::InvokeMetaMethod, _id=6, _a=0xbfd5f5d8) at .moc/debug-shared/moc_qdbusconnection_p.cpp:101
#8  0x004666f8 in QMetaObject::metacall (object=0x9c90498, cl=QMetaObject::InvokeMetaMethod, idx=10, argv=0xbfd5f5d8) at kernel/qmetaobject.cpp:237
#9  0x0047a92c in QMetaObject::activate (sender=0xbfd5f6e8, m=0x804f1c0, local_signal_index=0, argv=0xbfd5f5d8) at kernel/qobject.cpp:3293
#10 0x0047c236 in QObject::destroyed (this=0xbfd5f6e8, _t1=0xbfd5f6e8) at .moc/debug-shared/moc_qobject.cpp:149
#11 0x00475633 in ~QObject (this=0xbfd5f6e8, __in_chrg=<value optimized out>) at kernel/qobject.cpp:869
#12 0x00cc1815 in ~QDBusAbstractInterfaceBase (this=0xbfd5f6e8, __in_chrg=<value optimized out>) at qdbusabstractinterface.h:66
#13 0x00cbff95 in ~QDBusAbstractInterface (this=0xbfd5f6e8, __in_chrg=<value optimized out>) at qdbusabstractinterface.cpp:325
#14 0x05dcef0a in ~OrgKdeNepomukStrigiInterface (this=0xbfd5f6e8, __in_chrg=<value optimized out>)
    at /home/hunny/kde/build/KDE/kdebase/runtime/nepomuk/services/filewatch/strigiserviceinterface.cpp:25
#15 0x05dc7548 in Nepomuk::FileWatch::updateFolderViaStrigi (path=...) at /home/hunny/kde/src/KDE/kdebase/runtime/nepomuk/services/filewatch/nepomukfilewatch.cpp:210
#16 0x05dc7365 in Nepomuk::FileWatch::slotFileCreated (this=0x9c258e0, path=...) at /home/hunny/kde/src/KDE/kdebase/runtime/nepomuk/services/filewatch/nepomukfilewatch.cpp:181
#17 0x05dc78d4 in Nepomuk::FileWatch::qt_metacall (this=0x9c258e0, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfd5f828)
    at /home/hunny/kde/build/KDE/kdebase/runtime/nepomuk/services/filewatch/nepomukfilewatch.moc:94
#18 0x004666f8 in QMetaObject::metacall (object=0x9c258e0, cl=QMetaObject::InvokeMetaMethod, idx=8, argv=0xbfd5f828) at kernel/qmetaobject.cpp:237
#19 0x0047a92c in QMetaObject::activate (sender=0x9c2af18, m=0x5de1e04, local_signal_index=4, argv=0xbfd5f828) at kernel/qobject.cpp:3293
#20 0x05dd2220 in KInotify::created (this=0x9c2af18, _t1=...) at /home/hunny/kde/build/KDE/kdebase/runtime/nepomuk/services/filewatch/kinotify.moc:158
#21 0x05dd11f3 in KInotify::slotEvent (this=0x9c2af18, socket=12) at /home/hunny/kde/src/KDE/kdebase/runtime/nepomuk/services/filewatch/kinotify.cpp:336
#22 0x05dd2070 in KInotify::qt_metacall (this=0x9c2af18, _c=QMetaObject::InvokeMetaMethod, _id=14, _a=0xbfd5fb58)
    at /home/hunny/kde/build/KDE/kdebase/runtime/nepomuk/services/filewatch/kinotify.moc:117
#23 0x004666f8 in QMetaObject::metacall (object=0x9c2af18, cl=QMetaObject::InvokeMetaMethod, idx=18, argv=0xbfd5fb58) at kernel/qmetaobject.cpp:237
#24 0x0047a92c in QMetaObject::activate (sender=0x9c28aa0, m=0x5c0550, local_signal_index=0, argv=0xbfd5fb58) at kernel/qobject.cpp:3293
#25 0x004d97a4 in QSocketNotifier::activated (this=0x9c28aa0, _t1=12) at .moc/debug-shared/moc_qsocketnotifier.cpp:89
#26 0x00482cad in QSocketNotifier::event (this=0x9c28aa0, e=0xbfd60058) at kernel/qsocketnotifier.cpp:317
#27 0x04185680 in QApplicationPrivate::notify_helper (this=0x9b5c420, receiver=0x9c28aa0, e=0xbfd60058) at kernel/qapplication.cpp:4304
#28 0x04182ec4 in QApplication::notify (this=0xbfd603bc, receiver=0x9c28aa0, e=0xbfd60058) at kernel/qapplication.cpp:3708
#29 0x00f04a64 in KApplication::notify (this=0xbfd603bc, receiver=0x9c28aa0, event=0xbfd60058) at /home/hunny/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302
#30 0x0045efaf in QCoreApplication::notifyInternal (this=0xbfd603bc, receiver=0x9c28aa0, event=0xbfd60058) at kernel/qcoreapplication.cpp:704
#31 0x00462b3b in QCoreApplication::sendEvent (receiver=0x9c28aa0, event=0xbfd60058) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#32 0x004957f1 in socketNotifierSourceDispatch (source=0x9b5e928) at kernel/qeventdispatcher_glib.cpp:110
#33 0x00bdb5e5 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#34 0x00bdf2d8 in ?? () from /lib/libglib-2.0.so.0
#35 0x00bdf4b8 in g_main_context_iteration () from /lib/libglib-2.0.so.0
#36 0x00496c18 in QEventDispatcherGlib::processEvents (this=0x9b47e88, flags=...) at kernel/qeventdispatcher_glib.cpp:412
#37 0x0425c1ca in QGuiEventDispatcherGlib::processEvents (this=0x9b47e88, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#38 0x0045c38b in QEventLoop::processEvents (this=0xbfd602dc, flags=...) at kernel/qeventloop.cpp:149
#39 0x0045c4d0 in QEventLoop::exec (this=0xbfd602dc, flags=...) at kernel/qeventloop.cpp:201
#40 0x0045f68b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#41 0x04182b1a in QApplication::exec () at kernel/qapplication.cpp:3583
#42 0x0804b538 in main (argc=2, argv=0xbfd60564) at /home/hunny/kde/src/KDE/kdebase/runtime/nepomuk/servicestub/main.cpp:152

Reported using DrKonqi
Comment 1 Sebastian Trueg 2010-06-03 11:14:07 UTC
SVN commit 1134047 by trueg:

Make sure we do only use DBus in the main thread. Otherwise we crash too much (thanks to the famous libdbus bug)

BUG: 240554


 M  +12 -1     metadatamover.cpp  
 M  +4 -0      metadatamover.h  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1134047