Version: git-latest (using Devel) OS: Linux I get random crashes from nepomuk when in latest KDE trunk and stable version. Here is a backtrace of one of the crashes I had today. ------- Application: Nepomuk Service Stub (nepomukservicestub), signal: Segmentation fault [KCrash Handler] #6 0x00007f77058cc931 in Tp::Connection::contactManager() const () from /usr/lib/libtelepathy-qt4.so.1 #7 0x00007f7705d0492d in Account::onConnectionStatusChanged (this=0xbb3bb0, status=<value optimized out>) at /home/z3r0/GitProjects/KDE/Telepathy/telepathy-nepomuk-service/account.cpp:104 #8 0x00007f7705d057b1 in Account::qt_metacall (this=0xbb3bb0, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fffd8036b10) at /home/z3r0/GitProjects/KDE/Telepathy/telepathy-nepomuk-service/trunkBuild/account.moc:145 #9 0x00007f77152186ae in QMetaObject::metacall (object=0xbb3bb0, cl=QMetaObject::InvokeMetaMethod, idx=16, argv=0x7fffd8036b10) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qmetaobject.cpp:237 #10 0x00007f771522d1ca in QMetaObject::activate (sender=0xb9ffa0, m=0x7f7705ce77e0, local_signal_index=19, argv=0x7fffd8036b10) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qobject.cpp:3280 #11 0x00007f7705844af1 in Tp::Account::connectionStatusChanged(Tp::ConnectionStatus) () from /usr/lib/libtelepathy-qt4.so.1 #12 0x00007f770585110c in ?? () from /usr/lib/libtelepathy-qt4.so.1 #13 0x00007f77058559a4 in Tp::Account::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libtelepathy-qt4.so.1 #14 0x00007f77152186ae in QMetaObject::metacall (object=0xb9ffa0, cl=QMetaObject::InvokeMetaMethod, idx=34, argv=0x7fffd8037da0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qmetaobject.cpp:237 #15 0x00007f771522d1ca in QMetaObject::activate (sender=0xa032a0, m=0x7f7705ce77c0, local_signal_index=1, argv=0x7fffd8037da0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qobject.cpp:3280 #16 0x00007f7705844b65 in Tp::Client::AccountInterface::AccountPropertyChanged(QMap<QString, QVariant> const&) () from /usr/lib/libtelepathy-qt4.so.1 #17 0x00007f770584bfd4 in Tp::Client::AccountInterface::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libtelepathy-qt4.so.1 #18 0x00007f7714bc6ba1 in QDBusConnectionPrivate::deliverCall (this=0xa743e0, object=0xa032a0, msg=..., metaTypes=..., slotIdx=7) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/dbus/qdbusintegrator.cpp:919 #19 0x00007f7714bd2afc in QDBusCallDeliveryEvent::placeMetaCall (this=0xc24ee0, object=0xa032a0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/dbus/qdbusintegrator_p.h:103 #20 0x00007f7715228bdc in QObject::event (this=0xa032a0, e=0xc24ee0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qobject.cpp:1219 #21 0x00007f7712cd4742 in QApplicationPrivate::notify_helper (this=0x97df20, receiver=0xa032a0, e=0xc24ee0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/gui/kernel/qapplication.cpp:4445 #22 0x00007f7712cd1d7e in QApplication::notify (this=0x7fffd8038ed0, receiver=0xa032a0, e=0xc24ee0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/gui/kernel/qapplication.cpp:3845 #23 0x00007f77142836e6 in KApplication::notify (this=0x7fffd8038ed0, receiver=0xa032a0, event=0xc24ee0) at /mnt/STORAGE/KDE-GIT/kdeSources/kdelibs/kdeui/kernel/kapplication.cpp:311 #24 0x00007f7715210656 in QCoreApplication::notifyInternal (this=0x7fffd8038ed0, receiver=0xa032a0, event=0xc24ee0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qcoreapplication.cpp:732 #25 0x00007f7715214367 in QCoreApplication::sendEvent (receiver=0xa032a0, event=0xc24ee0) at ../../include/QtCore/../../../../qt-copy/src/corelib/kernel/qcoreapplication.h:215 #26 0x00007f7715211880 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x93ba30) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qcoreapplication.cpp:1373 #27 0x00007f77152114a1 in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qcoreapplication.cpp:1266 #28 0x00007f77152494e5 in QCoreApplication::sendPostedEvents () at ../../include/QtCore/../../../../qt-copy/src/corelib/kernel/qcoreapplication.h:220 #29 0x00007f77152484e5 in postEventSourceDispatch (s=0x9811d0) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:277 #30 0x00007f771124a29d in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0 #31 0x00007f771124aa78 in ?? () from /usr/lib/libglib-2.0.so.0 #32 0x00007f771124ad09 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0 #33 0x00007f7715248d95 in QEventDispatcherGlib::processEvents (this=0x93b500, flags=...) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:415 #34 0x00007f7712daaa1c in QGuiEventDispatcherGlib::processEvents (this=0x93b500, flags=...) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/gui/kernel/qguieventdispatcher_glib.cpp:204 #35 0x00007f771520e21c in QEventLoop::processEvents (this=0x7fffd8038d30, flags=...) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qeventloop.cpp:149 #36 0x00007f771520e370 in QEventLoop::exec (this=0x7fffd8038d30, flags=...) at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qeventloop.cpp:201 #37 0x00007f7715210d48 in QCoreApplication::exec () at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/corelib/kernel/qcoreapplication.cpp:1009 #38 0x00007f7712cd18f6 in QApplication::exec () at /mnt/STORAGE/KDE-GIT/kdeSources/qt-copy/src/gui/kernel/qapplication.cpp:3719 #39 0x0000000000403dc9 in main (argc=2, argv=0x7fffd8039378) at /mnt/STORAGE/KDE-GIT/kdeSources/kde-runtime/nepomuk/servicestub/main.cpp:167 Reproducible: Didn't try
oooh nice backtrace. I think I know what's going on here, and I'll try and sort it out later.
Turns out it isn't entirely obvious where this crash is coming from afaics. I've added some extra sanity checks to the slot concerned which with any luck will prevent it from crashing, but I'm not certain this will work. Branch is here [1] - I would appreciate it if you could give this branch a go and see if it eliminates the crashes. [1] http://quickgit.kde.org/?p=clones%2Ftelepathy-nepomuk-service%2Fgberg%2Ftelepathy-nepomuk-service.git&a=shortlog&h=refs/heads/bug-276319
Can this be a duplicate of bug #276290 ?
*** Bug 276290 has been marked as a duplicate of this bug. ***
@Luis: What version of telepathy-qt4 are you compiling against?
I am compiling agains latest master for both telepathy-qt4 and telepathy-glib.
Can you run the telepathy nepomuk service manually (~$ nepomukservicestub nepomuktelepathyservice ) and then paste the debug output it prints in the lead up to the crash.
Here it is. If I can provide anything else, just let me know. nepomuktelepathyservice(32292) NepomukStorage::NepomukStorage: nepomuktelepathyservice(32292) Controller::Controller: Calling becomeReady on the AM. nepomuktelepathyservice(32292) TelepathyService::TelepathyService: We're off... nepomuktelepathyservice(32292) Controller::onAccountManagerReady: AccountManager ready. nepomuktelepathyservice(32292) Account::Account: Account Constructed. nepomuktelepathyservice(32292) Controller::onNewAccount: Created new account: Account(0x8db6720) nepomuktelepathyservice(32292) NepomukStorage::createAccount: Creating a new Account nepomuktelepathyservice(32292) NepomukStorage::createAccount: 1 nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found IM Account: "nepomuk:/res/24662dfd-497f-40b1-8e64-085e4781c06e" nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found the corresponding IMAccount in Nepomuk. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8db6720) nepomuktelepathyservice(32292) Account::Account: Account Constructed. nepomuktelepathyservice(32292) Controller::onNewAccount: Created new account: Account(0x8dba250) nepomuktelepathyservice(32292) NepomukStorage::createAccount: Creating a new Account nepomuktelepathyservice(32292) NepomukStorage::createAccount: 1 nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found IM Account: "nepomuk:/res/fc846f10-eeb0-48d9-89cd-dab38c9f188d" nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found the corresponding IMAccount in Nepomuk. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8dba250) nepomuktelepathyservice(32292) Account::Account: Account Constructed. nepomuktelepathyservice(32292) Controller::onNewAccount: Created new account: Account(0x8dca048) nepomuktelepathyservice(32292) NepomukStorage::createAccount: Creating a new Account nepomuktelepathyservice(32292) NepomukStorage::createAccount: 1 nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found IM Account: "nepomuk:/res/bd6bd851-2a7c-43cf-9a43-6f56a68b9545" nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found the corresponding IMAccount in Nepomuk. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8dca048) nepomuktelepathyservice(32292) Account::Account: Account Constructed. nepomuktelepathyservice(32292) Controller::onNewAccount: Created new account: Account(0x8dad888) nepomuktelepathyservice(32292) NepomukStorage::createAccount: Creating a new Account nepomuktelepathyservice(32292) NepomukStorage::createAccount: 1 nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found IM Account: "nepomuk:/res/18deb25c-98d2-4208-895a-a199a0da749c" nepomuktelepathyservice(32292) NepomukStorage::createAccount: NepomukStorage(0x8c38bf8) : Found the corresponding IMAccount in Nepomuk. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8dad888) nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8db6720) nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8dba250) nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8dca048) nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8dad888) nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection up: Account(0x8db6720) tp-qt4 0.7.1.1 WARN: Calling allKnownContacts() before FeatureRoster is ready nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Loop over. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection closed: Account(0x8db6720) tp-qt4 0.7.1.1 WARN: Properties::GetAll(Connection) failed with "org.freedesktop.Telepathy.Error.Disconnected": "method cannot be called unless status is CONNECTION_STATUS_CONNECTED" tp-qt4 0.7.1.1 WARN: GetSelfHandle() failed with "org.freedesktop.Telepathy.Error.Disconnected": "method cannot be called unless status is CONNECTION_STATUS_CONNECTED" tp-qt4 0.7.1.1 WARN: Nested PendingReady for true failed with "org.freedesktop.Telepathy.Error.Disconnected" : "method cannot be called unless status is CONNECTION_STATUS_CONNECTED" tp-qt4 0.7.1.1 WARN: Building connection "/org/freedesktop/Telepathy/Connection/butterfly/msn/lacsilva_40hotmail_2ecom" failed with "org.freedesktop.Telepathy.Error.Disconnected" - "method cannot be called unless status is CONNECTION_STATUS_CONNECTED" tp-qt4 0.7.1.1 WARN: Nested PendingReady for true failed with "org.freedesktop.Telepathy.Error.Disconnected" : "method cannot be called unless status is CONNECTION_STATUS_CONNECTED" tp-qt4 0.7.1.1 WARN: Building connection "/org/freedesktop/Telepathy/Connection/butterfly/msn/lacsilva_40hotmail_2ecom" failed with "org.freedesktop.Telepathy.Error.Disconnected" - "method cannot be called unless status is CONNECTION_STATUS_CONNECTED" nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection up: Account(0x8dca048) tp-qt4 0.7.1.1 WARN: Calling allKnownContacts() before FeatureRoster is ready nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Loop over. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection up: Account(0x8dad888) tp-qt4 0.7.1.1 WARN: Calling allKnownContacts() before FeatureRoster is ready nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Loop over. nepomuktelepathyservice(32292) Account::onConnectionStatusChanged: Connection up: Account(0x8dba250) KCrash: Application 'nepomukservicestub' crashing... KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit sock_file=/home/lacsilva/.kde/socket-Panorama/kdeinit4__0
I tried to remove all my accounts and readd them one by one. It turns out that this crash only happens with msn accounts.
https://git.reviewboard.kde.org/r/102106/ almost certainly fixes this bug (just as soon as it gets merged to master).
[Comment from a bug triager] From bug 278560 (KDE SC 4.6.95): - What I was doing when the application crashed: I was playing with the 4.7 telepathy feature in systemsettings. I create firstly my gtalk account, and gnome3-keyring appear wanting to create a new keyring called "default". I create it, otherwise you can leave the window. Then I create my hotmail msn Then I create the irc connection and the crash just happen at that time. [KCrash Handler] #6 Tp::Connection::contactManager (this=0x0) at /usr/src/debug/telepathy-qt4-0.7.1.60.1310094280/TelepathyQt4/connection.cpp:2301 #7 0x00007ff1af79100d in Account::onConnectionStatusChanged (this=0x8e0d00, status=<optimized out>) at /usr/src/debug/telepathy-nepomuk-service-0.1git.1308161497/account.cpp:104 #8 0x00007ff1af791ed3 in Account::qt_metacall (this=0x8e0d00, _c=QMetaObject::InvokeMetaMethod, _id=<optimized out>, _a=0x7fffb2066a10) at /usr/src/debug/telepathy-nepomuk-service-0.1git.1308161497/build/account.moc:158 #9 0x00007ff1be98aeda in QMetaObject::activate (sender=0x8b6b70, m=<optimized out>, local_signal_index=<optimized out>, argv=0x7fffb2066a10) at kernel/qobject.cpp:3278 #10 0x00007ff1af288501 in Tp::Account::connectionStatusChanged (this=<optimized out>, _t1=Tp::ConnectionStatusConnected) at /usr/src/debug/telepathy-qt4-0.7.1.60.1310094280/build/TelepathyQt4/_gen/account.moc.hpp:427 ...
*** Bug 278560 has been marked as a duplicate of this bug. ***
This should have been fixed in the commit: --- commit 8c11209e6678addd8ba79408164e6bca79f66c9d Author: David Edmundson <kde@davidedmundson.co.uk> Date: Wed Jul 27 11:19:21 2011 +0100 Replace monitoring of connectionStatusChanged with connectionChanged as these are not always directly in sync. This prevents a potential crash using Account::connection() when it doesn't ex ist. -- Please re-open if you still have crashes.