Bug 276376 - IMAP resource crash while reading mails
Summary: IMAP resource crash while reading mails
Status: RESOLVED DUPLICATE of bug 286003
Alias: None
Product: Akonadi
Classification: Frameworks and Libraries
Component: IMAP resource (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Kevin Ottens
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-06-24 06:28 UTC by Thomas Tanghus
Modified: 2012-01-05 11:28 UTC (History)
6 users (show)

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


Attachments
New crash information added by DrKonqi (11.76 KB, text/plain)
2011-09-23 04:10 UTC, Thomas Tanghus
Details
New crash information added by DrKonqi (8.95 KB, text/plain)
2011-09-26 19:47 UTC, S. Burmeister
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Tanghus 2011-06-24 06:28:19 UTC
Application: akonadi_imap_resource (0.1)
KDE Platform Version: 4.6.4 (4.6.4)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-10-generic i686
Distribution: Ubuntu 11.04

-- Information about the crash:
- What I was doing when the application crashed:
 I was reading mails (in kde-pim, he he) most likely while KMail was syncronizing mails. When clicking on a new mail it didn't appear, so I tried to go to another folder to see if that worked. Only then I noticed taht DrKonqui was in the task bar.

This is using KDE PIM 4.6 from https://launchpad.net/~kubuntu-ppa/+archive/experimental

-- Backtrace:
Application: Akonadi Resource (akonadi_imap_resource), signal: Aborted
[Current thread is 1 (Thread 0xb780a710 (LWP 5389))]

Thread 6 (Thread 0xb56bdb70 (LWP 5469)):
#0  0x005c3d41 in clock_gettime (clock_id=1, tp=0xb56bd020) at ../sysdeps/unix/clock_gettime.c:116
#1  0x00b83dd8 in do_gettime () at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x00c504f2 in updateCurrentTime (this=0x8249144, tm=...) at kernel/qeventdispatcher_unix.cpp:339
#4  QTimerInfoList::timerWait (this=0x8249144, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x00c4ed32 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xb56bd0fc) at kernel/qeventdispatcher_glib.cpp:136
#6  0x00c4edcd in timerSourcePrepare (source=0x8249110, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x06a77fd4 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x06a78e63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x06a79524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x00c4f577 in QEventDispatcherGlib::processEvents (this=0x8248c48, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x00c21289 in QEventLoop::processEvents (this=0xb56bd2b0, flags=...) at kernel/qeventloop.cpp:149
#12 0x00c21522 in QEventLoop::exec (this=0xb56bd2b0, flags=...) at kernel/qeventloop.cpp:201
#13 0x00b2b2a0 in QThread::exec (this=0x82481f0) at thread/qthread.cpp:492
#14 0x0026cd52 in KIMAP::SessionThread::run (this=0x82481f0) at ../../kimap/sessionthread.cpp:166
#15 0x00b2dda2 in QThreadPrivate::start (arg=0x82481f0) at thread/qthread_unix.cpp:320
#16 0x00532e99 in start_thread (arg=0xb56bdb70) at pthread_create.c:304
#17 0x0202573e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 5 (Thread 0xb34beb70 (LWP 6217)):
#0  0x0053536b in __pthread_mutex_lock (mutex=0x878b9a4) at pthread_mutex_lock.c:61
#1  0x02033616 in pthread_mutex_lock (mutex=0x878b9a4) at forward.c:182
#2  0x06a78fbe in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x06a79524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x00c4f577 in QEventDispatcherGlib::processEvents (this=0x8a48d30, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#5  0x00c21289 in QEventLoop::processEvents (this=0xb34be290, flags=...) at kernel/qeventloop.cpp:149
#6  0x00c21522 in QEventLoop::exec (this=0xb34be290, flags=...) at kernel/qeventloop.cpp:201
#7  0x00b2b2a0 in QThread::exec (this=0x8a48908) at thread/qthread.cpp:492
#8  0x00c02fdb in QInotifyFileSystemWatcherEngine::run (this=0x8a48908) at io/qfilesystemwatcher_inotify.cpp:248
#9  0x00b2dda2 in QThreadPrivate::start (arg=0x8a48908) at thread/qthread_unix.cpp:320
#10 0x00532e99 in start_thread (arg=0xb34beb70) at pthread_create.c:304
#11 0x0202573e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 4 (Thread 0xb4ebcb70 (LWP 6222)):
#0  constBegin (this=0x878aa34, tm=...) at ../../include/QtCore/../../src/corelib/tools/qlist.h:256
#1  QTimerInfoList::timerWait (this=0x878aa34, tm=...) at kernel/qeventdispatcher_unix.cpp:447
#2  0x00c4ed32 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xb4ebc0fc) at kernel/qeventdispatcher_glib.cpp:136
#3  0x00c4edcd in timerSourcePrepare (source=0x878aa00, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#4  0x06a77fd4 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x06a78e63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#6  0x06a79524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#7  0x00c4f577 in QEventDispatcherGlib::processEvents (this=0x879b098, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#8  0x00c21289 in QEventLoop::processEvents (this=0xb4ebc2b0, flags=...) at kernel/qeventloop.cpp:149
#9  0x00c21522 in QEventLoop::exec (this=0xb4ebc2b0, flags=...) at kernel/qeventloop.cpp:201
#10 0x00b2b2a0 in QThread::exec (this=0x85d29b8) at thread/qthread.cpp:492
#11 0x0026cd52 in KIMAP::SessionThread::run (this=0x85d29b8) at ../../kimap/sessionthread.cpp:166
#12 0x00b2dda2 in QThreadPrivate::start (arg=0x85d29b8) at thread/qthread_unix.cpp:320
#13 0x00532e99 in start_thread (arg=0xb4ebcb70) at pthread_create.c:304
#14 0x0202573e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 3 (Thread 0xb22d0b70 (LWP 9724)):
#0  0x005367a4 in __pthread_mutex_unlock_usercnt (mutex=0xb1993d34, decr=1) at pthread_mutex_unlock.c:52
#1  0x02033656 in pthread_mutex_unlock (mutex=0xb1993d34) at forward.c:184
#2  0x06a77f24 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#3  0x06a78e63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#4  0x06a79524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#5  0x00c4f577 in QEventDispatcherGlib::processEvents (this=0x87b2078, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#6  0x00c21289 in QEventLoop::processEvents (this=0xb22d02b0, flags=...) at kernel/qeventloop.cpp:149
#7  0x00c21522 in QEventLoop::exec (this=0xb22d02b0, flags=...) at kernel/qeventloop.cpp:201
#8  0x00b2b2a0 in QThread::exec (this=0x83621f0) at thread/qthread.cpp:492
#9  0x0026cd52 in KIMAP::SessionThread::run (this=0x83621f0) at ../../kimap/sessionthread.cpp:166
#10 0x00b2dda2 in QThreadPrivate::start (arg=0x83621f0) at thread/qthread_unix.cpp:320
#11 0x00532e99 in start_thread (arg=0xb22d0b70) at pthread_create.c:304
#12 0x0202573e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 2 (Thread 0xb0cfeb70 (LWP 9726)):
#0  0x005c3d41 in clock_gettime (clock_id=1, tp=0xb0cfe020) at ../sysdeps/unix/clock_gettime.c:116
#1  0x00b83dd8 in do_gettime () at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x00c504f2 in updateCurrentTime (this=0x85ba5e4, tm=...) at kernel/qeventdispatcher_unix.cpp:339
#4  QTimerInfoList::timerWait (this=0x85ba5e4, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x00c4ed32 in timerSourcePrepareHelper (src=<value optimized out>, timeout=0xb0cfe0fc) at kernel/qeventdispatcher_glib.cpp:136
#6  0x00c4edcd in timerSourcePrepare (source=0x85ba5b0, timeout=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x06a77fd4 in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x06a78e63 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x06a79524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x00c4f577 in QEventDispatcherGlib::processEvents (this=0x82788f8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x00c21289 in QEventLoop::processEvents (this=0xb0cfe2b0, flags=...) at kernel/qeventloop.cpp:149
#12 0x00c21522 in QEventLoop::exec (this=0xb0cfe2b0, flags=...) at kernel/qeventloop.cpp:201
#13 0x00b2b2a0 in QThread::exec (this=0x862c810) at thread/qthread.cpp:492
#14 0x0026cd52 in KIMAP::SessionThread::run (this=0x862c810) at ../../kimap/sessionthread.cpp:166
#15 0x00b2dda2 in QThreadPrivate::start (arg=0x862c810) at thread/qthread_unix.cpp:320
#16 0x00532e99 in start_thread (arg=0xb0cfeb70) at pthread_create.c:304
#17 0x0202573e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130

Thread 1 (Thread 0xb780a710 (LWP 5389)):
[KCrash Handler]
#7  0x00d88416 in __kernel_vsyscall ()
#8  0x01f7fe71 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#9  0x01f8334e in abort () at abort.c:92
#10 0x01fb6577 in __libc_message (do_abort=2, fmt=0x208f8ac "*** glibc detected *** %s: %s: 0x%s ***\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#11 0x01fc0961 in malloc_printerr (action=<value optimized out>, str=<value optimized out>, ptr=0x640065) at malloc.c:6283
#12 0x01fc110e in munmap_chunk (p=0x64005d) at malloc.c:3540
#13 0x008a64d1 in operator delete(void*) () from /usr/lib/i386-linux-gnu/libstdc++.so.6
#14 0x080a108d in node_destruct (this=0x8226968) at /usr/include/qt4/QtCore/qlist.h:375
#15 erase (this=0x8226968) at /usr/include/qt4/QtCore/qlist.h:452
#16 removeFirst (this=0x8226968) at /usr/include/qt4/QtCore/qlist.h:273
#17 takeFirst (this=0x8226968) at /usr/include/qt4/QtCore/qlist.h:477
#18 SessionPool::processPendingRequests (this=0x8226968) at ../../../resources/imap/sessionpool.cpp:240
#19 0x080a31c8 in SessionPool::qt_metacall (this=0x8226968, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0x8385e48) at ./sessionpool.moc:116
#20 0x00c286ba in QMetaObject::metacall (object=0x8226968, cl=QMetaObject::InvokeMetaMethod, idx=12, argv=0x8385e48) at kernel/qmetaobject.cpp:237
#21 0x00c32e16 in QMetaCallEvent::placeMetaCall (this=0x8a401c0, object=0x8226968) at kernel/qobject.cpp:535
#22 0x00c373b7 in QObject::event (this=0x8226968, e=0x8a401c0) at kernel/qobject.cpp:1226
#23 0x00eb6d24 in QApplicationPrivate::notify_helper (this=0x811b460, receiver=0x8226968, e=0x8a401c0) at kernel/qapplication.cpp:4462
#24 0x00ebb8ce in QApplication::notify (this=0xbfd64210, receiver=0x8226968, e=0x8a401c0) at kernel/qapplication.cpp:3862
#25 0x01c5b36a in KApplication::notify (this=0xbfd64210, receiver=0x8226968, event=0x8a401c0) at ../../kdeui/kernel/kapplication.cpp:311
#26 0x00c220bb in QCoreApplication::notifyInternal (this=0xbfd64210, receiver=0x8226968, event=0x8a401c0) at kernel/qcoreapplication.cpp:731
#27 0x00c25c79 in sendEvent (receiver=0x0, event_type=0, data=0x80e3f50) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#28 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x80e3f50) at kernel/qcoreapplication.cpp:1372
#29 0x00c25e0d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1265
#30 0x00c4f3c4 in sendPostedEvents (s=0x811e6d0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#31 postEventSourceDispatch (s=0x811e6d0) at kernel/qeventdispatcher_glib.cpp:277
#32 0x06a78aa8 in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#33 0x06a79270 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#34 0x06a79524 in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#35 0x00c4f53c in QEventDispatcherGlib::processEvents (this=0x80e3aa8, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#36 0x00f6a775 in QGuiEventDispatcherGlib::processEvents (this=0x80e3aa8, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#37 0x00c21289 in QEventLoop::processEvents (this=0xbfd64164, flags=...) at kernel/qeventloop.cpp:149
#38 0x00c21522 in QEventLoop::exec (this=0xbfd64164, flags=...) at kernel/qeventloop.cpp:201
#39 0x00c25ecc in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1008
#40 0x00eb48e7 in QApplication::exec () at kernel/qapplication.cpp:3736
#41 0x007095a8 in Akonadi::ResourceBase::init (r=0x81fa038) at ../../akonadi/resourcebase.cpp:390
#42 0x08063e83 in init<ImapResource> (argc=) at /usr/include/akonadi/resourcebase.h:188
#43 main (argc=) at ../../../resources/imap/imapresource.cpp:597

Possible duplicates by query: bug 244609, bug 242819.

Reported using DrKonqi
Comment 1 Kevin Ottens 2011-09-17 13:03:22 UTC
Is it still happening for you with 4.7.x? I've been unable to reproduce that one, it just works for me.

In case you still experience this please feel free to reopen. In such a case, we would need much more information like the actual IMAP server used and so on.
Comment 2 Thomas Tanghus 2011-09-23 04:10:56 UTC
Created attachment 63876 [details]
New crash information added by DrKonqi

akonadi_imap_resource (4.7) on KDE Platform 4.7.00 (4.7.0) using Qt 4.7.2

- What I was doing when the application crashed:
Kontact was running in the background - I was sleeping ;) - when the IMAP resource crashed.

As asked in https://bugs.kde.org/show_bug.cgi?id=276376#c1

Two different IMAP accounts. Don't know which was the culprit.
First an Gmail account, secondly a Courier IMAP running on zeus.packagecloud.com:

"$ telnet zeus.packagecloud.com 143
Trying 176.9.2.121...
Connected to zeus.packagecloud.com.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2010 Double Precision, Inc.  See COPYING for distribution information."

-- Backtrace (Reduced):
#11 0x085d7961 in malloc_printerr (action=<value optimized out>, str=<value optimized out>, ptr=0x89863c8) at malloc.c:6283
#12 0x085d928b in _int_free (av=<value optimized out>, p=0x89863c0) at malloc.c:4795
#13 0x085dc41d in __libc_free (mem=0x89863c8) at malloc.c:3738
[...]
#15 0x08098e26 in node_destruct (this=0x8985018, session=0xb4e08988, errorCode=4, errorMessage=...) at /usr/include/qt4/QtCore/qlist.h:375
#16 erase (this=0x8985018, session=0xb4e08988, errorCode=4, errorMessage=...) at /usr/include/qt4/QtCore/qlist.h:452
Comment 3 Thomas Tanghus 2011-09-23 04:19:17 UTC
Sorry to have to reopen this.

The "on so on" part of the information needed I wasn't sure what was about ;)
I've had (at least) one more of these crashes, where I didn't have the time to report it.

When I reported it the first time I only had one IMAP account - the Gmail one - so my guess is it's the one that it crashed on. On that account I have set up time based expires on several folders (mailing lists). Could that be a reason.
Comment 4 S. Burmeister 2011-09-26 19:47:20 UTC
Created attachment 63990 [details]
New crash information added by DrKonqi

akonadi_imap_resource (4.7) on KDE Platform 4.7.1 (4.7.1) using Qt 4.7.4

- What I was doing when the application crashed:

This happens if one was online and then the internet connection goes away. After some time without connection akonadi crashes.

-- Backtrace (Reduced):
#15 0x0809a8d0 in node_destruct (this=0x81d1048, session=0x839f678) at /usr/include/QtCore/qlist.h:375
#16 erase (this=0x81d1048, session=0x839f678) at /usr/include/QtCore/qlist.h:452
#17 removeFirst (this=0x81d1048, session=0x839f678) at /usr/include/QtCore/qlist.h:273
#18 takeFirst (this=0x81d1048, session=0x839f678) at /usr/include/QtCore/qlist.h:477
#19 SessionPool::declareSessionReady (this=0x81d1048, session=0x839f678) at /usr/src/debug/kdepim-runtime-4.7.1/resources/imap/sessionpool.cpp:207
Comment 5 David Faure 2012-01-05 11:28:53 UTC
Crash in declareSessionReady+takeFirst = bug 286003

*** This bug has been marked as a duplicate of bug 286003 ***