Bug 186829 - frequent recurring crashes when typing [QDBusConnectionPrivate::customEvent]
Summary: frequent recurring crashes when typing [QDBusConnectionPrivate::customEvent]
Status: RESOLVED FIXED
Alias: None
Product: krunner
Classification: Plasma
Component: general (other bugs)
Version First Reported In: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Plasma Bugs List
URL:
Keywords:
: 186976 192986 196438 197261 (view as bug list)
Depends on:
Blocks:
 
Reported: 2009-03-11 02:23 UTC by peaches
Modified: 2010-02-21 16:10 UTC (History)
8 users (show)

See Also:
Latest Commit:
Version Fixed/Implemented In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description peaches 2009-03-11 02:23:01 UTC
Version:            (using Devel)
OS:                Linux
Installed from:    Compiled sources

I'm using SVN KDE/qt-copy, and often get krunner crashes while typing, apparently when it's trying to match results, sometimes reproducable, sometimes timing based, but always recurring and frequent. Sometimes the following backtrace shows up(haven't seen a different one), sometimes no backtrace popup at all.

???

=============================================================

This backtrace appears to be of no use.
This is probably because your packages are built in a way which prevents creation of proper backtraces, or the stack frame was seriously corrupted in the crash.

[Thread debugging using libthread_db enabled]
[New Thread 0x7f7c52d9c730 (LWP 15610)]
[New Thread 0x43f3c950 (LWP 15621)]
[New Thread 0x4373b950 (LWP 15620)]
[New Thread 0x42f3a950 (LWP 15619)]
[New Thread 0x42739950 (LWP 15618)]
0x00007f7c4d77a6e1 in nanosleep () from /lib/libc.so.6
[Current thread is 0 (LWP 15610)]

Thread 5 (Thread 0x42739950 (LWP 15618)):
#0  0x00007f7c503ae2d9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f7c5062c939 in QWaitCondition::wait (this=0x9ec6c8, mutex=0x9ec330, time=18446744073709551615) at /opt/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#2  0x00007f7c51dd6ed4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned () from /opt/kde4/lib/libthreadweaver.so.4
#3  0x00007f7c51dd9683 in ThreadWeaver::WorkingHardState::applyForWork () from /opt/kde4/lib/libthreadweaver.so.4
#4  0x00007f7c51dd7bff in ThreadWeaver::ThreadRunHelper::run () from /opt/kde4/lib/libthreadweaver.so.4
#5  0x00007f7c51dd8059 in ThreadWeaver::Thread::run () from /opt/kde4/lib/libthreadweaver.so.4
#6  0x00007f7c5062b952 in QThreadPrivate::start (arg=0xa68f60) at /opt/qt-copy/src/corelib/thread/qthread_unix.cpp:189
#7  0x00007f7c503aa3ea in start_thread () from /lib/libpthread.so.0
#8  0x00007f7c4d7b8cbd in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x42f3a950 (LWP 15619)):
#0  0x00007f7c503ae2d9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f7c5062c939 in QWaitCondition::wait (this=0x9ec6c8, mutex=0x9ec330, time=18446744073709551615) at /opt/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#2  0x00007f7c51dd6ed4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned () from /opt/kde4/lib/libthreadweaver.so.4
#3  0x00007f7c51dd9683 in ThreadWeaver::WorkingHardState::applyForWork () from /opt/kde4/lib/libthreadweaver.so.4
#4  0x00007f7c51dd7bff in ThreadWeaver::ThreadRunHelper::run () from /opt/kde4/lib/libthreadweaver.so.4
#5  0x00007f7c51dd8059 in ThreadWeaver::Thread::run () from /opt/kde4/lib/libthreadweaver.so.4
#6  0x00007f7c5062b952 in QThreadPrivate::start (arg=0xe39c30) at /opt/qt-copy/src/corelib/thread/qthread_unix.cpp:189
#7  0x00007f7c503aa3ea in start_thread () from /lib/libpthread.so.0
#8  0x00007f7c4d7b8cbd in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x4373b950 (LWP 15620)):
#0  0x00007f7c503ae2d9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f7c5062c939 in QWaitCondition::wait (this=0x9ec6c8, mutex=0x9ec330, time=18446744073709551615) at /opt/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#2  0x00007f7c51dd6ed4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned () from /opt/kde4/lib/libthreadweaver.so.4
#3  0x00007f7c51dd9683 in ThreadWeaver::WorkingHardState::applyForWork () from /opt/kde4/lib/libthreadweaver.so.4
#4  0x00007f7c51dd7bff in ThreadWeaver::ThreadRunHelper::run () from /opt/kde4/lib/libthreadweaver.so.4
#5  0x00007f7c51dd8059 in ThreadWeaver::Thread::run () from /opt/kde4/lib/libthreadweaver.so.4
#6  0x00007f7c5062b952 in QThreadPrivate::start (arg=0xe40560) at /opt/qt-copy/src/corelib/thread/qthread_unix.cpp:189
#7  0x00007f7c503aa3ea in start_thread () from /lib/libpthread.so.0
#8  0x00007f7c4d7b8cbd in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x43f3c950 (LWP 15621)):
#0  0x00007f7c503ae2d9 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f7c5062c939 in QWaitCondition::wait (this=0x9ec6c8, mutex=0x9ec330, time=18446744073709551615) at /opt/qt-copy/src/corelib/thread/qwaitcondition_unix.cpp:87
#2  0x00007f7c51dd6ed4 in ThreadWeaver::WeaverImpl::blockThreadUntilJobsAreBeingAssigned () from /opt/kde4/lib/libthreadweaver.so.4
#3  0x00007f7c51dd9683 in ThreadWeaver::WorkingHardState::applyForWork () from /opt/kde4/lib/libthreadweaver.so.4
#4  0x00007f7c51dd7bff in ThreadWeaver::ThreadRunHelper::run () from /opt/kde4/lib/libthreadweaver.so.4
#5  0x00007f7c51dd8059 in ThreadWeaver::Thread::run () from /opt/kde4/lib/libthreadweaver.so.4
#6  0x00007f7c5062b952 in QThreadPrivate::start (arg=0xe44ae0) at /opt/qt-copy/src/corelib/thread/qthread_unix.cpp:189
#7  0x00007f7c503aa3ea in start_thread () from /lib/libpthread.so.0
#8  0x00007f7c4d7b8cbd in clone () from /lib/libc.so.6
#9  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f7c52d9c730 (LWP 15610)):
#0  0x00007f7c4d77a6e1 in nanosleep () from /lib/libc.so.6
#1  0x00007f7c4d77a507 in sleep () from /lib/libc.so.6
#2  0x00007f7c515df13f in KCrash::startDrKonqi () from /opt/kde4/lib/libkdeui.so.5
#3  0x00007f7c515dfa4a in KCrash::defaultCrashHandler () from /opt/kde4/lib/libkdeui.so.5
#4  <signal handler called>
#5  0x00007f7c4d705015 in raise () from /lib/libc.so.6
#6  0x00007f7c4d706b83 in abort () from /lib/libc.so.6
#7  0x00007f7c4d74ba80 in ?? () from /lib/libc.so.6
#8  0x00007f7c50a36dc8 in QDBusConnectionPrivate::customEvent (this=0x9e4e80, e=<value optimized out>) at ../../include/QtCore/../../../../src/qt-copy/src/corelib/tools/qlist.h:348
#9  0x00007f7c507247ed in QObject::event (this=0x9e4e80, e=0x1216280) at /opt/qt-copy/src/corelib/kernel/qobject.cpp:1149
#10 0x00007f7c4f93d25d in QApplicationPrivate::notify_helper (this=0x9daad0, receiver=0x9e4e80, e=0x1216280) at /opt/qt-copy/src/gui/kernel/qapplication.cpp:4084
#11 0x00007f7c4f94544a in QApplication::notify (this=0x9d5190, receiver=0x9e4e80, e=0x1216280) at /opt/qt-copy/src/gui/kernel/qapplication.cpp:4049
#12 0x00007f7c515796fb in KApplication::notify () from /opt/kde4/lib/libkdeui.so.5
#13 0x00007f7c507146ac in QCoreApplication::notifyInternal (this=0x9d5190, receiver=0x9e4e80, event=0x1216280) at /opt/qt-copy/src/corelib/kernel/qcoreapplication.cpp:602
#14 0x00007f7c5071531a in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9b4380)
    at ../../include/QtCore/../../../../src/qt-copy/src/corelib/kernel/qcoreapplication.h:213
#15 0x00007f7c5073e133 in postEventSourceDispatch (s=<value optimized out>) at ../../include/QtCore/../../../../src/qt-copy/src/corelib/kernel/qcoreapplication.h:218
#16 0x00007f7c4911dd3b in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#17 0x00007f7c4912150d in ?? () from /usr/lib/libglib-2.0.so.0
#18 0x00007f7c491216cb in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#19 0x00007f7c5073ddbf in QEventDispatcherGlib::processEvents (this=0x9b3fa0, flags=<value optimized out>)
    at /opt/qt-copy/src/corelib/kernel/qeventdispatcher_glib.cpp:323
#20 0x00007f7c4f9d467f in QGuiEventDispatcherGlib::processEvents (this=0x3cfa, flags=<value optimized out>)
    at /opt/qt-copy/src/gui/kernel/qguieventdispatcher_glib.cpp:202
#21 0x00007f7c50712f52 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1525562096}) at /opt/qt-copy/src/corelib/kernel/qeventloop.cpp:149
#22 0x00007f7c5071331d in QEventLoop::exec (this=0x7fff5aee3b30, flags={i = 1525562176}) at /opt/qt-copy/src/corelib/kernel/qeventloop.cpp:200
#23 0x00007f7c507155e4 in QCoreApplication::exec () at /opt/qt-copy/src/corelib/kernel/qcoreapplication.cpp:880
#24 0x00007f7c52a9a5e4 in kdemain () from /opt/kde4/lib/libkdeinit4_krunner.so
#25 0x00007f7c4d6f0466 in __libc_start_main () from /lib/libc.so.6
#26 0x0000000000400899 in _start ()
#0  0x00007f7c4d77a6e1 in nanosleep () from /lib/libc.so.6
Comment 1 peaches 2009-03-11 02:28:33 UTC
sorry severity should be CRASH.. i dont see that i can change it
Comment 2 peaches 2009-03-11 02:39:17 UTC
thought to add: other than KDE/Qt, base system is Kubuntu intrepid+updates
so for example libc6 is 2.8~20080505-0ubuntu9
Comment 3 Dario Andres 2009-03-11 12:40:54 UTC
Is also important to know your KDE/qt-copy SVN versions (and the branch of KDE). Thanks
Comment 4 peaches 2009-03-11 21:59:20 UTC
oops, all from trunk/HEAD

qt-copy Revision: 935641
KDE/kdesupport Revision: 938069
KDE/kdelibs Revision: 937916
KDE/kdepimlibs Revision: 937119
KDE/kdesdk Revision: 937119
KDE/kdeaccessibility Revision: 937119
KDE/kdegraphics Revision: 937119
KDE/kdemultimedia Revision: 937555
KDE/kdepim Revision: 937120
KDE/kdenetwork Revision: 937120
KDE/kdeadmin Revision: 937120
KDE/kdeutils Revision: 937120
KDE/kdeplasma-addons Revision: 937120

playground (webkitkde) Revision: 937119
playground (khtml_userscript) Revision: 936022
extragear Revision: 929314
Comment 5 FiNeX 2009-03-12 19:46:01 UTC
Confirmed on r938580 too (with Qt 4.5).
Comment 6 FiNeX 2009-03-12 19:58:58 UTC
*** Bug 186976 has been marked as a duplicate of this bug. ***
Comment 7 doc.evans 2009-03-17 03:14:44 UTC
Just to make it clear to the developers: "frequent" here means "really, really frequently, to the point where krunner is highly unreliable".

Something is very wrong :-(

Also, the symptoms given by peaches seem to match exactly my own experience. It seems to be random whether a backtrace is generated or whether krunner simply disappears without a trace.

Typing exactly the same string results in inconsistent behaviour: sometimes a set of results is returned; sometimes krunner crashes with a backtrace; sometimes krunner disappears without a backtrace and has to be restarted manually.

I am running 4.2 from the Kubuntu 64-bit backports repository.
Comment 8 Jacopo De Simoi 2009-03-17 18:26:54 UTC
I believe that we have at least four different bugs here:

#1 deadlock (should be resolved in svn or 4.2 branch around 1 week ago), this would be responsible for most of the krunner-is-dead-and-I-did-not-get-a-crash-window-ish bugs 
#2 deadlock, it should be responsible for the some other bugs like in #1, when running several applications in a row // will fix soon
#3 deadlock (dbus related): krunner is alive, but no queries are processed for 25-50 seconds. Typing works but doesn't produce any search result // we are trying to understand how to solve this.
#4  crash: krunner crashes producing backtraces similar to the ones in the report. // Trying to understand what's going on is not so easy. We are working on it

as for #1 and #2 (which are virtually not distinguishable from the user perspective) and not related to the original report; please upgrade to recent SVN if you can, and report back if the problem persists.
 
as for #4, which belongs to this report, we are aware of the "really really frequent" occurrence of the problem and it just got to the top of my TOFIX list ;) 
Stay tuned

  --J
Comment 9 peaches 2009-03-22 10:39:40 UTC
Thanks much for info update Jacopo.

Just went to KDE r942581 with same qt-copy, and now verifying it is still occurring (same crash behavior), but it does perhaps(?) seem a bit less frequent.. I will be testing more as I use it for frequency. I noticed a small change for me on qt-copy but maybe not related and I rebuild that less frequently, plus I'm not sure if qt-copy updates will be anticipated for this issue(?), so qt-copy I'm testing is still at r935641 (just in case).
Comment 10 doc.evans 2009-03-23 17:35:24 UTC
Perhaps you might want to mark bug 187062 as a duplicate of this bug.

Although this bug seems (to me) to be covering several different problems, only one of which is described in bug 187062. I'm not at all sure what your policy is in that situation. But it does seem like the behaviour described in bug 187062 is part of the behaviour described in this bug.
Comment 11 Jacopo De Simoi 2009-03-23 18:07:33 UTC
The _original report_ of this bug is a crash with backtrace,
Bug 187062 is about krunner hanging and not responding, which is a different issue. Some further comments introduced something possibly similar to bug 187062 in this thread, but these comments should not belong here...
Comment 12 doc.evans 2009-03-23 19:43:56 UTC
(In reply to comment #11)
> The _original report_ of this bug is a crash with backtrace,

It specifically mentions that sometimes it crashes without producing a backtrace.

> Bug 187062 is about krunner hanging and not responding, which is a different
> issue. 

It specifically mentions that what seems to have occurred is a crash without a backtrace.

But if you don't want to combine the bug reports, that's fine. I was just trying to be helpful.
Comment 13 Jacopo De Simoi 2009-03-23 20:14:19 UTC
Ok.. my bad; sorry for misreading the report texts. =)
Doc.Evans' and peaches' reports both address the same couple of issues; 

I was misled by the fact that this original report shows a backtrace, whereas #187062 does not. 
I propose the following; we have two BRs for two bugs, so I'd say that from now on:

- This bug will be used as a reference for "crash with backtrace"
- Bug #187062 will be used as a reference for "hang/crash without backtrace"
(matching the title of the report)

Is that ok?
Comment 14 doc.evans 2009-03-23 20:37:23 UTC
> I propose the following; we have two BRs for two bugs, so I'd say that from now
> on:
> 
> - This bug will be used as a reference for "crash with backtrace"
> - Bug #187062 will be used as a reference for "hang/crash without backtrace"
> (matching the title of the report)
> 
> Is that ok?

Makes a lot of sense to me.
Comment 15 peaches 2009-04-15 02:33:59 UTC
just checking in: krunner has been quite stable for a while now (r951942) with very rare crashes (don't remember seeing backtraces).

you guys are great
Comment 16 Dario Andres 2009-05-17 16:27:42 UTC
*** Bug 192986 has been marked as a duplicate of this bug. ***
Comment 17 Dario Andres 2009-06-15 02:02:12 UTC
*** Bug 196438 has been marked as a duplicate of this bug. ***
Comment 18 Dario Andres 2009-06-20 23:26:27 UTC
*** Bug 197261 has been marked as a duplicate of this bug. ***
Comment 19 Dario Andres 2009-06-20 23:28:15 UTC
Backtrace could tell us that related crashes are Qt bugs. (I wonder if exporting the MALLOC_CHECK_ env var (MALLOC_CHECK_=0) would workaround this)
Comment 20 Dario Andres 2009-07-29 15:51:14 UTC
BTW: crashes related to "QDBusConnectionPrivate::customEvent" are probably Qt bugs (qt-dbus race condition), fixed by 
http://qt.gitorious.org/qt/qt/commit/b410a39fad176593ed75b742a486f8710c6ef60f and http://qt.gitorious.org/qt/qt/commit/237b4b8c8e9b5184578b4776c5f1f554c0d8efb5 (Qt4>=4.5.2)

Can anyone using Qt4>4.5.2 confirm this kind of crashes dissapeared ?

Thanks
Comment 21 Dario Andres 2009-07-29 15:57:53 UTC
Sorry, it is fixed already on Qt4.5.2 so it should be "Qt4>=4.5.2". Thanks
Comment 22 Jacopo De Simoi 2010-01-09 01:14:26 UTC
The crash given by the bt in the report should be have been fixed with the 4.5.2 release of qt
Can anybody reproduce anymore?
Can we finally close it?
Comment 23 Salvo "LtWorf" Tomaselli 2010-01-09 07:58:51 UTC
I can't reproduce anymore.
Comment 24 Dario Andres 2010-02-21 16:10:46 UTC
Closing this. (now KRUnner has a bunch of new crashes, but unrelated to the original backtrace)