[Bug 290355] akonadi_mixedmaildir_resource consumes too much memory

Bruno Haible bruno at clisp.org
Sun Jan 29 12:40:14 GMT 2012


https://bugs.kde.org/show_bug.cgi?id=290355





--- Comment #1 from Bruno Haible <bruno clisp org>  2012-01-29 12:40:13 ---
It took me 1 day of debugging to find the cause: When I type Ctrl-L (Fetch
mail) in kmail, it sends a
"full recursive sync/refresh" request to the akonadi_mixedmaildir_resource
process. Here is the stack trace:


#0  Akonadi::FileStore::CollectionFetchJob::CollectionFetchJob (this=0x735f10,
collection=..., type=Akonadi::FileStore::CollectionFetchJob::Recursive,
session=0x717f40) at
/usr/src/packages/BUILD/kdepim-runtime-4.7.4/resources/shared/filestore/collectionfetchjob.cpp:55
#1  0x00007f3fa4963fa2 in
Akonadi::FileStore::AbstractLocalStore::fetchCollections (this=0x6dba40,
collection=..., type=Akonadi::FileStore::CollectionFetchJob::Recursive) at
/usr/src/packages/BUILD/kdepim-runtime-4.7.4/resources/shared/filestore/abstractlocalstore.cpp:415
#2  0x000000000041b464 in MixedMaildirResource::retrieveCollections
(this=0x7e7790) at
/usr/src/packages/BUILD/kdepim-runtime-4.7.4/resources/mixedmaildir/mixedmaildirresource.cpp:240
#3  0x00007f3fa45fafeb in Akonadi::ResourceBase::qt_metacall (this=0x7e7790,
_c=QMetaObject::InvokeMetaMethod, _id=3, _a=0x7fff912c3e90) at
/usr/src/packages/BUILD/kdepimlibs-4.7.4/build/akonadi/moc_resourcebase.cpp:129
#4  0x0000000000420684 in MixedMaildirResource::qt_metacall (this=0x7e7790,
_c=QMetaObject::InvokeMetaMethod, _id=27, _a=0x7fff912c3e90) at
/usr/src/packages/BUILD/kdepim-runtime-4.7.4/build/resources/mixedmaildir/mixedmaildirresource.moc:109
#5  0x00007f3fa0c0459a in QMetaObject::activate (sender=0x71e280, m=<optimized
out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3287
#6  0x00007f3fa45fec55 in Akonadi::ResourceScheduler::executeFullSync
(this=0x71e280) at
/usr/src/packages/BUILD/kdepimlibs-4.7.4/build/akonadi/resourcescheduler_p.moc:127
#7  0x00007f3fa45fc971 in Akonadi::ResourceScheduler::executeNext
(this=0x71e280) at
/usr/src/packages/BUILD/kdepimlibs-4.7.4/akonadi/resourcescheduler.cpp:269
#8  0x00007f3fa45fec03 in Akonadi::ResourceScheduler::qt_metacall
(this=0x71e280, _c=QMetaObject::InvokeMetaMethod, _id=15, _a=0x705e50) at
/usr/src/packages/BUILD/kdepimlibs-4.7.4/build/akonadi/resourcescheduler_p.moc:116
#9  0x00007f3fa0c0814a in QObject::event (this=0x71e280, e=<optimized out>) at
kernel/qobject.cpp:1226
#10 0x00007f3fa1828c54 in notify_helper (e=0x6f04c0, receiver=0x71e280,
this=0x688ef0) at kernel/qapplication.cpp:4481
#11 QApplicationPrivate::notify_helper (this=0x688ef0, receiver=0x71e280,
e=0x6f04c0) at kernel/qapplication.cpp:4453
#12 0x00007f3fa182dae1 in QApplication::notify (this=0x7fff912c4c40,
receiver=0x71e280, e=0x6f04c0) at kernel/qapplication.cpp:4360
#13 0x00007f3fa253c1e6 in KApplication::notify (this=0x7fff912c4c40,
receiver=0x71e280, event=0x6f04c0) at
/usr/src/packages/BUILD/kdelibs-4.7.4/kdeui/kernel/kapplication.cpp:311
#14 0x00007f3fa0bf181c in QCoreApplication::notifyInternal
(this=0x7fff912c4c40, receiver=0x71e280, event=0x6f04c0) at
kernel/qcoreapplication.cpp:787
#15 0x00007f3fa0bf4bf8 in sendEvent (event=0x6f04c0, receiver=0x71e280) at
kernel/qcoreapplication.h:215
#16 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0,
data=0x664800) at kernel/qcoreapplication.cpp:1428
#17 0x00007f3fa0c1c0b3 in sendPostedEvents () at kernel/qcoreapplication.h:220
#18 postEventSourceDispatch (s=<optimized out>) at
kernel/qeventdispatcher_glib.cpp:277
#19 0x00007f3f9b4c858d in g_main_dispatch (context=0x68b880) at gmain.c:2425
#20 g_main_context_dispatch (context=0x68b880) at gmain.c:2995
#21 0x00007f3f9b4c8d88 in g_main_context_iterate (context=0x68b880,
block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3073
#22 0x00007f3f9b4c8f59 in g_main_context_iteration (context=0x68b880,
may_block=1) at gmain.c:3136
#23 0x00007f3fa0c1c50f in QEventDispatcherGlib::processEvents (this=0x664430,
flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:422

The workaround is to *never* press Ctrl-L, and instead only fetch the mail in a
specific resource,
such as "Fetch mail in... <Resourcename>".

Unfortunately, this action is not available through a keyboard shortcut. I have
to go through the "File" menu
and a submenu each time I want to fetch mail.

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the Kdepim-bugs mailing list