Version: unspecified (using KDE 4.7.0) OS: Linux Since the update to SC 4.7 a few hours ago I got at least half a dozen Nepomuk crashes, which seem to occur while strigi is indexing (I didn't use any KDE program when the crash occured, maybe with exception of the save file dialog). I'm sorry I'm so vague, but I can't read the crash log in order to find out what's the problem. Application: Nepomuk-Dienst (nepomukservicestub), signal: Aborted [Current thread is 1 (Thread 0xb55f4710 (LWP 3213))] Thread 2 (Thread 0xb3a76b70 (LWP 3229)): [KCrash Handler] #6 0xb5fbd735 in raise () from /lib/libc.so.6 #7 0xb5fbf000 in abort () from /lib/libc.so.6 #8 0xb5ff9db7 in __libc_message () from /lib/libc.so.6 #9 0xb5fffddb in malloc_printerr () from /lib/libc.so.6 #10 0xb6000247 in malloc_consolidate () from /lib/libc.so.6 #11 0xb60016f3 in _int_malloc () from /lib/libc.so.6 #12 0xb600454a in malloc () from /lib/libc.so.6 #13 0xb758f5bb in qMalloc (size=65536) at global/qmalloc.cpp:55 #14 0xb7597c3e in QByteArray::realloc (this=0x82409dc, alloc=65516) at tools/qbytearray.cpp:1428 #15 0xb7597d67 in QByteArray::resize (this=0x82409dc, size=32768) at tools/qbytearray.cpp:1396 #16 0xb5d1c184 in reserve (this=0x8226cd0, data=0xb3a757fc "\021", size=2) at ../../src/corelib/tools/qringbuffer_p.h:158 #17 QAbstractSocket::writeData (this=0x8226cd0, data=0xb3a757fc "\021", size=2) at socket/qabstractsocket.cpp:2214 #18 0xb5d2834b in writeData (this=0x8229090, data=0xb3a757fc "\021", c=2) at socket/qlocalsocket_p.h:109 #19 QLocalSocket::writeData (this=0x8229090, data=0xb3a757fc "\021", c=2) at socket/qlocalsocket_unix.cpp:406 #20 0xb76263cb in QIODevice::write (this=0x8229090, data=0xb3a757fc "\021", maxSize=2) at io/qiodevice.cpp:1362 #21 0xb57f951e in Soprano::DataStream::writeUnsignedInt16 (this=0xb3a75834, v=17) at /usr/src/debug/soprano-2.6.51/server/datastream.cpp:95 #22 0xb5801ef4 in Soprano::Client::ClientConnection::executeQuery (this=0x81f9a60, modelId=1830348744, query=..., type=Soprano::Query::QueryLanguageSparql, userQueryLanguage=...) at /usr/src/debug/soprano-2.6.51/client/clientconnection.cpp:253 #23 0xb5803a78 in Soprano::Client::ClientModel::executeQuery (this=0x81fb410, query=..., language=Soprano::Query::QueryLanguageSparql, userQueryLanguage=...) at /usr/src/debug/soprano-2.6.51/client/clientmodel.cpp:101 #24 0xb6cf2231 in Nepomuk::MainModel::executeQuery (this=0x81f8c00, query=..., language=Soprano::Query::QueryLanguageSparql, userQueryLanguage=...) at /usr/src/debug/kdelibs-4.7.0/nepomuk/core/nepomukmainmodel.cpp:212 #25 0xb589e03f in Soprano::FilterModel::executeQuery (this=0x81f3be8, query=..., language=3229, userQueryLanguage=...) at /usr/src/debug/soprano-2.6.51/soprano/filtermodel.cpp:164 #26 0xb3bb7e14 in Nepomuk::IndexCleaner::clearNextBatch (this=0x81f3520) at /usr/src/debug/kde-runtime-4.7.0/nepomuk/services/strigi/indexcleaner.cpp:280 #27 0xb3bb808c in Nepomuk::IndexCleaner::qt_metacall (this=0x81f3520, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0xb3a75b4c) at /usr/src/debug/kde-runtime-4.7.0/build/nepomuk/services/strigi/indexcleaner.moc:77 #28 0xb769907d in QMetaObject::metacall (object=0x81f3520, cl=QMetaObject::InvokeMetaMethod, idx=27, argv=0xb3a75b4c) at kernel/qmetaobject.cpp:237 #29 0xb76a84cc in QMetaObject::activate (sender=0x81f2ef8, m=0xb77cc1a4, local_signal_index=0, argv=0x0) at kernel/qobject.cpp:3278 #30 0xb76af945 in QSingleShotTimer::timeout (this=0x81f2ef8) at .moc/release-shared/qtimer.moc:82 #31 0xb76af9fc in QSingleShotTimer::timerEvent (this=0x81f2ef8) at kernel/qtimer.cpp:308 #32 0xb76a7c04 in QObject::event (this=0x81f2ef8, e=0xb3a7608c) at kernel/qobject.cpp:1181 #33 0xb6329684 in QApplicationPrivate::notify_helper (this=0x806c528, receiver=0x81f2ef8, e=0xb3a7608c) at kernel/qapplication.cpp:4462 #34 0xb6332427 in QApplication::notify (this=0xbff52cf8, receiver=0x81f2ef8, e=0xb3a7608c) at kernel/qapplication.cpp:3862 #35 0xb6f717b1 in KApplication::notify (this=0xbff52cf8, receiver=0x81f2ef8, event=0xb3a7608c) at /usr/src/debug/kdelibs-4.7.0/kdeui/kernel/kapplication.cpp:311 #36 0xb769278e in QCoreApplication::notifyInternal (this=0xbff52cf8, receiver=0x81f2ef8, event=0xb3a7608c) at kernel/qcoreapplication.cpp:731 #37 0xb76c3b89 in sendEvent (this=0x819d804) at kernel/qcoreapplication.h:215 #38 QTimerInfoList::activateTimers (this=0x819d804) at kernel/qeventdispatcher_unix.cpp:619 #39 0xb76c0852 in timerSourceDispatch (source=0x819d7d0) at kernel/qeventdispatcher_glib.cpp:184 #40 0xb5eb4509 in g_main_context_dispatch () from /lib/libglib-2.0.so.0 #41 0xb5eb4d10 in ?? () from /lib/libglib-2.0.so.0 #42 0xb5eb4fce in g_main_context_iteration () from /lib/libglib-2.0.so.0 #43 0xb76c0f7b in QEventDispatcherGlib::processEvents (this=0x81b5c98, flags=...) at kernel/qeventdispatcher_glib.cpp:422 #44 0xb7691a6d in QEventLoop::processEvents (this=0xb3a762e0, flags=...) at kernel/qeventloop.cpp:149 #45 0xb7691c99 in QEventLoop::exec (this=0xb3a762e0, flags=...) at kernel/qeventloop.cpp:201 #46 0xb7592d49 in QThread::exec (this=0x81b5d80) at thread/qthread.cpp:492 #47 0xb7592ddb in QThread::run (this=0x81b5d80) at thread/qthread.cpp:557 #48 0xb7595993 in QThreadPrivate::start (arg=0x81b5d80) at thread/qthread_unix.cpp:320 #49 0xb751a980 in start_thread () from /lib/libpthread.so.0 #50 0xb606516e in clone () from /lib/libc.so.6 Thread 1 (Thread 0xb55f4710 (LWP 3213)): #0 0xb6072fce in __lll_lock_wait_private () from /lib/libc.so.6 #1 0xb60062ab in _L_lock_10376 () from /lib/libc.so.6 #2 0xb6004a16 in free () from /lib/libc.so.6 #3 0xb758f5db in qFree (ptr=0x82449f0) at global/qmalloc.cpp:60 #4 0xb75b47b5 in QHashData::freeNode (this=0x8242308, node=0x82449f0) at tools/qhash.cpp:185 #5 0xb75b482a in QHashData::free_helper (this=0x8242308, node_delete=0xb3b59370 <QHash<int, unsigned long>::deleteNode2(QHashData::Node*)>) at tools/qhash.cpp:272 #6 0xb3b582dd in freeData (this=0x8227d20, __in_chrg=<value optimized out>) at /usr/include/QtCore/qhash.h:568 #7 ~QHash (this=0x8227d20, __in_chrg=<value optimized out>) at /usr/include/QtCore/qhash.h:284 #8 XSyncBasedPoller::~XSyncBasedPoller (this=0x8227d20, __in_chrg=<value optimized out>) at /usr/src/debug/kdelibs-4.7.0/kutils/kidletime/xsyncbasedpoller.cpp:100 #9 0xb3b58332 in XSyncBasedPoller::~XSyncBasedPoller (this=0x8227d20, __in_chrg=<value optimized out>) at /usr/src/debug/kdelibs-4.7.0/kutils/kidletime/xsyncbasedpoller.cpp:102 #10 0xb3b5826f in ~XSyncBasedPollerHelper () at /usr/src/debug/kdelibs-4.7.0/kutils/kidletime/xsyncbasedpoller.cpp:33 #11 destroy () at /usr/src/debug/kdelibs-4.7.0/kutils/kidletime/xsyncbasedpoller.cpp:38 #12 0xb3b553a9 in KCleanUpGlobalStatic::~KCleanUpGlobalStatic (this=0xb3b5e170, __in_chrg=<value optimized out>) at /usr/src/debug/kdelibs-4.7.0/kdecore/kernel/kglobal.h:62 #13 0xb5fc067f in __run_exit_handlers () from /lib/libc.so.6 #14 0xb5fc06dd in exit () from /lib/libc.so.6 #15 0xb63a2bb8 in qt_xio_errhandler () at kernel/qapplication_x11.cpp:772 #16 0xb6f70349 in KApplication::xioErrhandler (this=0xbff52cf8, dpy=0x80709f0) at /usr/src/debug/kdelibs-4.7.0/kdeui/kernel/kapplication.cpp:419 #17 0xb6f70384 in kde_xio_errhandler (dpy=0x80709f0) at /usr/src/debug/kdelibs-4.7.0/kdeui/kernel/kapplication.cpp:126 #18 0xb5b054c4 in _XIOError () from /usr/lib/libX11.so.6 #19 0xb5b02c9f in _XEventsQueued () from /usr/lib/libX11.so.6 #20 0xb5af33e8 in XEventsQueued () from /usr/lib/libX11.so.6 #21 0xb63e0015 in x11EventSourceCheck (s=0x806f6a8) at kernel/qguieventdispatcher_glib.cpp:85 #22 0xb5eb4180 in g_main_context_check () from /lib/libglib-2.0.so.0 #23 0xb5eb4ac8 in ?? () from /lib/libglib-2.0.so.0 #24 0xb5eb4fce in g_main_context_iteration () from /lib/libglib-2.0.so.0 #25 0xb76c0fc7 in QEventDispatcherGlib::processEvents (this=0x8053f38, flags=...) at kernel/qeventdispatcher_glib.cpp:424 #26 0xb63e01da in QGuiEventDispatcherGlib::processEvents (this=0x8053f38, flags=...) at kernel/qguieventdispatcher_glib.cpp:204 #27 0xb7691a6d in QEventLoop::processEvents (this=0xbff52b54, flags=...) at kernel/qeventloop.cpp:149 #28 0xb7691c99 in QEventLoop::exec (this=0xbff52b54, flags=...) at kernel/qeventloop.cpp:201 #29 0xb7696740 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008 #30 0xb63273d4 in QApplication::exec () at kernel/qapplication.cpp:3736 #31 0x0804b4fe in main (argc=) at /usr/src/debug/kde-runtime-4.7.0/nepomuk/servicestub/main.cpp:167 Reproducible: Sometimes Steps to Reproduce: Use KDE, Nepomuk will crash from time to time. Expected Results: It shouldn't. ;-)
Is there a web page or blog that explains how users can run "Nepomuk" through valgrind, so that we can someday get rid of the memory corruption bugs?
Michael already has some experience with valgrinding Nepomuk, and volunteered to write some step-by-step debugging guide. And this is his requested reminder message, with a reference to some example crash from 4.7.0 ;)
For some serious problem I had to switch back to 4.6.5, anyhow before that I tried to debug the problem with Valgrind, but - of course - every time I attached nepomukstrigiservice (which kept crashing) to Valgrind it did not crash. Nevertheless I attach a Valgrind log from nepomukserver that shows some error messages, which, however, may not be related.
Created attachment 62542 [details] Valgrind log of nepomukserver
[Comment from a bug report cleaner] Backtrace looks similar to the one in bug 275768
Dario, we have well over 100 "memory corruption" crashes in Nepomuk, so comparing backtraces doesn't make much sense. Comparing valgrind backtraces would :)
*** This bug has been marked as a duplicate of bug 277810 ***