Bug 292287 - KMail akonadi crashed when indexing a large mail account
Summary: KMail akonadi crashed when indexing a large mail account
Status: RESOLVED WORKSFORME
Alias: None
Product: Akonadi
Classification: Frameworks and Libraries
Component: IMAP resource (show other bugs)
Version: 4.7
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Christian Mollekopf
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2012-01-23 19:15 UTC by Davor Cubranic
Modified: 2018-10-27 03:58 UTC (History)
4 users (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 Davor Cubranic 2012-01-23 19:15:51 UTC
Application: akonadi_imap_resource (4.7)
KDE Platform Version: 4.7.3 (4.7.3)
Qt Version: 4.7.4
Operating System: Linux 2.6.38-13-generic i686
Distribution: Ubuntu 11.10

-- Information about the crash:
I created a new IMAP account, in which mail folders are kept under "~/Mail". There was no way to configure that in the account setup dialog, so KMail tried to treat every file and directory in my home directory as a mail folder (this is reported as bug 292285). Eventually, akonadi crashed trying to index all the gigabytes of files.

-- Backtrace:
Application: UBC-CS of type IMAP E-Mail Server (akonadi_imap_resource), signal: Segmentation fault
[Current thread is 1 (Thread 0xb7802710 (LWP 5676))]

Thread 3 (Thread 0xb5b09b70 (LWP 5679)):
#0  0x00a9dd10 in clock_gettime () from /lib/i386-linux-gnu/librt.so.1
#1  0x001d27d5 in do_gettime (frac=0xb5b09020, sec=0xb5b09018) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x002a54b6 in QTimerInfoList::updateCurrentTime (this=0x9dfade4) at kernel/qeventdispatcher_unix.cpp:339
#4  0x002a580a in QTimerInfoList::timerWait (this=0x9dfade4, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x002a4053 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xb5b0912c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x002a40ed in timerSourcePrepare (source=0x9dfadb0, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x07ae188c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x07ae2637 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x07ae2c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x002a4b37 in QEventDispatcherGlib::processEvents (this=0x9df97a8, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x002751dd in QEventLoop::processEvents (this=0xb5b092b0, flags=...) at kernel/qeventloop.cpp:149
#12 0x00275421 in QEventLoop::exec (this=0xb5b092b0, flags=...) at kernel/qeventloop.cpp:201
#13 0x0017890b in QThread::exec (this=0x9dddcc0) at thread/qthread.cpp:498
#14 0x00255e2d in QInotifyFileSystemWatcherEngine::run (this=0x9dddcc0) at io/qfilesystemwatcher_inotify.cpp:248
#15 0x0017b7b3 in QThreadPrivate::start (arg=0x9dddcc0) at thread/qthread_unix.cpp:331
#16 0x00a7fd31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0x017ad0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 2 (Thread 0xb50b3b70 (LWP 5749)):
#0  0x00a9dd10 in clock_gettime () from /lib/i386-linux-gnu/librt.so.1
#1  0x001d27d5 in do_gettime (frac=0xb50b3040, sec=0xb50b3038) at tools/qelapsedtimer_unix.cpp:123
#2  qt_gettime () at tools/qelapsedtimer_unix.cpp:140
#3  0x002a54b6 in QTimerInfoList::updateCurrentTime (this=0xad02c64) at kernel/qeventdispatcher_unix.cpp:339
#4  0x002a580a in QTimerInfoList::timerWait (this=0xad02c64, tm=...) at kernel/qeventdispatcher_unix.cpp:442
#5  0x002a4053 in timerSourcePrepareHelper (src=<optimized out>, timeout=0xb50b314c) at kernel/qeventdispatcher_glib.cpp:136
#6  0x002a40ed in timerSourcePrepare (source=0xad02c30, timeout=<optimized out>) at kernel/qeventdispatcher_glib.cpp:169
#7  0x07ae188c in g_main_context_prepare () from /lib/i386-linux-gnu/libglib-2.0.so.0
#8  0x07ae2637 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#9  0x07ae2c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#10 0x002a4b37 in QEventDispatcherGlib::processEvents (this=0xc49d578, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#11 0x002751dd in QEventLoop::processEvents (this=0xb50b32d0, flags=...) at kernel/qeventloop.cpp:149
#12 0x00275421 in QEventLoop::exec (this=0xb50b32d0, flags=...) at kernel/qeventloop.cpp:201
#13 0x0017890b in QThread::exec (this=0xc3bf328) at thread/qthread.cpp:498
#14 0x003e64d0 in ?? () from /usr/lib/libkimap.so.4
#15 0x0017b7b3 in QThreadPrivate::start (arg=0xc3bf328) at thread/qthread_unix.cpp:331
#16 0x00a7fd31 in start_thread () from /lib/i386-linux-gnu/libpthread.so.0
#17 0x017ad0ce in clone () from /lib/i386-linux-gnu/libc.so.6
Backtrace stopped: Not enough registers or memory available to unwind further

Thread 1 (Thread 0xb7802710 (LWP 5676)):
[KCrash Handler]
#7  0x08099b15 in ?? ()
#8  0x0809bde8 in ?? ()
#9  0x0027cb7d in metacall (argv=0xbe413e8, idx=12, cl=QMetaObject::InvokeMetaMethod, object=0x9cae118) at kernel/qmetaobject.cpp:237
#10 QMetaObject::metacall (object=0x9cae118, cl=QMetaObject::InvokeMetaMethod, idx=12, argv=0xbe413e8) at kernel/qmetaobject.cpp:232
#11 0x00287685 in QMetaCallEvent::placeMetaCall (this=0xb21f618, object=0x9cae118) at kernel/qobject.cpp:535
#12 0x0028eb52 in QObject::event (this=0x9cae118, e=0xb21f618) at kernel/qobject.cpp:1217
#13 0x00c81d54 in notify_helper (e=0xb21f618, receiver=0x9cae118, this=0x9b79490) at kernel/qapplication.cpp:4486
#14 QApplicationPrivate::notify_helper (this=0x9b79490, receiver=0x9cae118, e=0xb21f618) at kernel/qapplication.cpp:4458
#15 0x00c87103 in QApplication::notify (this=0xb21f618, receiver=0x9cae118, e=0xb21f618) at kernel/qapplication.cpp:3886
#16 0x08412681 in KApplication::notify (this=0xbfbb16b0, receiver=0x9cae118, event=0xb21f618) at ../../kdeui/kernel/kapplication.cpp:311
#17 0x0027619e in QCoreApplication::notifyInternal (this=0xbfbb16b0, receiver=0x9cae118, event=0xb21f618) at kernel/qcoreapplication.cpp:787
#18 0x00279f93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#19 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9b5cd60) at kernel/qcoreapplication.cpp:1428
#20 0x0027a0ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#21 0x002a46a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#22 postEventSourceDispatch (s=0x9b7bd50) at kernel/qeventdispatcher_glib.cpp:277
#23 0x07ae225f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#24 0x07ae2990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#25 0x07ae2c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#26 0x002a4ada in QEventDispatcherGlib::processEvents (this=0x9b5dc68, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#27 0x00d39e3a in QGuiEventDispatcherGlib::processEvents (this=0x9b5dc68, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#28 0x002751dd in QEventLoop::processEvents (this=0xbfbb0cc0, flags=...) at kernel/qeventloop.cpp:149
#29 0x00275421 in QEventLoop::exec (this=0xbfbb0cc0, flags=...) at kernel/qeventloop.cpp:201
#30 0x011b97c9 in QDialog::exec (this=0xb150040) at dialogs/qdialog.cpp:552
#31 0x03befdaf in KIO::SslUi::askIgnoreSslErrors (uiData=..., storedRules=KIO::SslUi::RecallAndStoreRules) at ../../kio/kssl/sslui.cpp:104
#32 0x003e28f4 in KIMAP::SessionPrivate::handleSslError(KSslErrorUiData const&) () from /usr/lib/libkimap.so.4
#33 0x003e5496 in KIMAP::Session::qt_metacall(QMetaObject::Call, int, void**) () from /usr/lib/libkimap.so.4
#34 0x0027cb7d in metacall (argv=0xa22e200, idx=15, cl=QMetaObject::InvokeMetaMethod, object=0xc20db48) at kernel/qmetaobject.cpp:237
#35 QMetaObject::metacall (object=0xc20db48, cl=QMetaObject::InvokeMetaMethod, idx=15, argv=0xa22e200) at kernel/qmetaobject.cpp:232
#36 0x00287685 in QMetaCallEvent::placeMetaCall (this=0xb36f490, object=0xc20db48) at kernel/qobject.cpp:535
#37 0x0028eb52 in QObject::event (this=0xc20db48, e=0xb36f490) at kernel/qobject.cpp:1217
#38 0x00c81d54 in notify_helper (e=0xb36f490, receiver=0xc20db48, this=0x9b79490) at kernel/qapplication.cpp:4486
#39 QApplicationPrivate::notify_helper (this=0x9b79490, receiver=0xc20db48, e=0xb36f490) at kernel/qapplication.cpp:4458
#40 0x00c87103 in QApplication::notify (this=0xb36f490, receiver=0xc20db48, e=0xb36f490) at kernel/qapplication.cpp:3886
#41 0x08412681 in KApplication::notify (this=0xbfbb16b0, receiver=0xc20db48, event=0xb36f490) at ../../kdeui/kernel/kapplication.cpp:311
#42 0x0027619e in QCoreApplication::notifyInternal (this=0xbfbb16b0, receiver=0xc20db48, event=0xb36f490) at kernel/qcoreapplication.cpp:787
#43 0x00279f93 in sendEvent (event=<optimized out>, receiver=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#44 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9b5cd60) at kernel/qcoreapplication.cpp:1428
#45 0x0027a0ec in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1321
#46 0x002a46a4 in sendPostedEvents () at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#47 postEventSourceDispatch (s=0x9b7bd50) at kernel/qeventdispatcher_glib.cpp:277
#48 0x07ae225f in g_main_context_dispatch () from /lib/i386-linux-gnu/libglib-2.0.so.0
#49 0x07ae2990 in ?? () from /lib/i386-linux-gnu/libglib-2.0.so.0
#50 0x07ae2c2a in g_main_context_iteration () from /lib/i386-linux-gnu/libglib-2.0.so.0
#51 0x002a4ada in QEventDispatcherGlib::processEvents (this=0x9b5dc68, flags=...) at kernel/qeventdispatcher_glib.cpp:422
#52 0x00d39e3a in QGuiEventDispatcherGlib::processEvents (this=0x9b5dc68, flags=...) at kernel/qguieventdispatcher_glib.cpp:204
#53 0x002751dd in QEventLoop::processEvents (this=0xbfbb1614, flags=...) at kernel/qeventloop.cpp:149
#54 0x00275421 in QEventLoop::exec (this=0xbfbb1614, flags=...) at kernel/qeventloop.cpp:201
#55 0x0027a19d in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1064
#56 0x00c7f8f4 in QApplication::exec () at kernel/qapplication.cpp:3760
#57 0x006b5b11 in Akonadi::ResourceBase::init(Akonadi::ResourceBase*) () from /usr/lib/libakonadi-kde.so.4
#58 0x0805e127 in int Akonadi::ResourceBase::init<ImapResource>(int, char**) ()
#59 0x0805859b in ?? ()
#60 0x016f4113 in __libc_start_main () from /lib/i386-linux-gnu/libc.so.6
#61 0x080587b9 in _start ()

Possible duplicates by query: bug 292277, bug 292276, bug 292264, bug 292249, bug 292243.

Reported using DrKonqi
Comment 1 Jon Williams 2012-01-26 16:45:02 UTC
Not sure if I've got a duplicate.

I'm now trying to clear it all off the system and start over, however the misconfiguration that prevents load of kmail doesn't allow me to change settings. Looking at email threads it appears to be all in akondai or whatever...but can I blow the database away and start over?

Kmail is totally unusable across upgrades etc...crashes on start (using kde 4.72 now too (tumbleweed on Suse)
Comment 2 Davor Cubranic 2012-01-26 23:24:23 UTC
Jon, I'm pretty sure you can, but don't know how. You'll need to ask for guidance somewhere else.
Comment 3 Gulraj Rijhwani 2012-02-09 13:57:59 UTC
I have a very similar problem.

Just made the jump step from Fedora 14 to 16, and now Kmail (4.7 from 4.4) insists on Akonadi indexing all the mail, which it simply is not man enough to do.  This was AFTER having to figure out that Kmail, having performed an automated "migration" had failed to give Akonadi a path for the local mail folders, and kept crashing out.

This machine has 2GB of RAM and 2GB of swap - Akonadi grows to use it all until the the synchronising process trying to regrow the indexes (/usr/bin/akonadi_mixedmaildir_resource --identifier akonadi_mixedmaildir_resource_0) is assassinated by the kernel, leaving Kmail without all of my organised mail folders from the last 5 years.  It's less than useless - I have lost access to some very important historic messages, and I cannot even read critical current work email...
Comment 4 Kevin Ottens 2012-02-11 10:40:21 UTC
Would need at least a complete backtrace, this one is unfortunately incomplete, please install the debug symbols on your machine (your distro provides that AFAIK).

Also please test again with 4.8.
Comment 5 Kevin Ottens 2013-11-16 07:33:41 UTC
The IMAP resource has a new maintainer, reassigning to him.
Comment 6 Andrew Crouthamel 2018-09-25 03:56:54 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 15 days. Please provide the requested information as soon as possible and set the bug status as REPORTED. Due to regular bug tracker maintenance, if the bug is still in NEEDSINFO status with no change in 30 days, the bug will be closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please set the bug status as REPORTED so that the KDE team knows that the bug is ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 7 Andrew Crouthamel 2018-10-27 03:58:53 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least 30 days. The bug is now closed as RESOLVED > WORKSFORME due to lack of needed information.

For more information about our bug triaging procedures please read the wiki located here: https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!