[Bug 235835] Akonadi Imap resource crash when Relaunching KOrg

David Faure faure at kde.org
Fri Apr 30 23:13:19 BST 2010


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


David Faure <faure at kde.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |faure at kde.org




--- Comment #2 from David Faure <faure kde org>  2010-05-01 00:13:16 ---
Here's my debugging of the issue.
The problem is that the imap resource "moves on to the next task" while it
still has a KIMAP::SelectJob running. So later on when that job finishes, the
resource is quite confused and hits asserts.

The reason why the imap resource moves on to the next task is that
Akonadi::ResourceBasePrivate::slotItemSyncDone calls taskDone.
And ItemSync is done because of an error (ItemFetchJob subjob fails).
But still, taskDone is called too early, since the slot connected to that
KIMAP::SelectJob was the one that was supposed to say "itemsRetrievalDone".

I assume the running kimap jobs should be killed when ItemSync fails?

akonadi_imap_resource_2(26578)/libakonadi
Akonadi::ResourceScheduler::executeNext:
======================================== current task: 8 SyncCollection
collection 660
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) ImapResource::retrieveItems:
"/shared.mailing-lists"
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) KIMAP::Job::start:
KIMAP::GetMetaDataJob(0x7f7ba80b2120)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) KIMAP::Job::start:
KIMAP::GetAclJob(0x7f7ba80a8940)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) KIMAP::Job::start:
KIMAP::MyRightsJob(0x7f7ba80ac110)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) KIMAP::Job::start:
KIMAP::GetQuotaRootJob(0x7f7ba80b86d0)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) ImapResource::triggerExpunge:
"shared.mailing-lists"
akonadi_imap_resource_2(26578) ImapResource::retrieveItems: SelectJob
KIMAP::SelectJob(0x7f7ba80b0b60) will call onSelectDone
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) KIMAP::Job::start:
KIMAP::SelectJob(0x7f7ba80b0b60)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap)
ImapResource::onRightsReceived: "/shared.mailing-lists" imapRights: 7743
newRights: 39 oldRights: 39
akonadi_imap_resource_2(26578) ImapResource::onSelectDone:
KIMAP::SelectJob(0x7f7ba80b0b60)
akonadi_imap_resource_2(26578)/libakonadi Akonadi::JobPrivate::handleResponse:
Akonadi::CollectionModifyJob(0x7f7ba80ae380) "OK MODIFY done
"
akonadi_imap_resource_2(26578)/libakonadi
Akonadi::JobPrivate::delayedEmitResult:
Akonadi::CollectionModifyJob(0x7f7ba80ae380) emitResult
akonadi_imap_resource_2(26578)/libakonadi Akonadi::JobPrivate::handleResponse:
Akonadi::CollectionStatisticsJob(0x7f7ba80acb90) "OK STATUS completed
"
akonadi_imap_resource_2(26578)/libakonadi
Akonadi::JobPrivate::delayedEmitResult:
Akonadi::CollectionStatisticsJob(0x7f7ba80acb90) emitResult
akonadi_imap_resource_2(26578) ImapResource::onCollectionStatisticsReceived:
Akonadi::CollectionStatisticsJob(0x7f7ba80acb90)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) ImapResource::onSelectDone:
integrity:  "shared.mailing-lists"  should be:  0  current:  0
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) ImapResource::onSelectDone:
All fine, asking for all message flags looking for changes
akonadi_imap_resource_2(26578)/libakonadi
Akonadi::ResourceBase::setItemStreamingEnabled: mItemSyncer=
Akonadi::ItemSync(0x7f7ba8093570)
akonadi_imap_resource_2(26578)/kdepimlibs (kimap) KIMAP::Job::start:
KIMAP::FetchJob(0x7f7ba80b1960)
akonadi_imap_resource_2(26578)/libakonadi Akonadi::JobPrivate::startNext:
0x7f7ba8012320 starting subjob: Akonadi::ItemFetchJob(0x7f7ba80acb90)
akonadi_imap_resource_2(26578)/libakonadi Akonadi::JobPrivate::startNext:
0x7f7ba8016520 starting subjob: Akonadi::CollectionSelectJob(0x7f7ba809e770)
akonadi_imap_resource_2(26578)/libakonadi Akonadi::JobPrivate::handleResponse:
Akonadi::CollectionSelectJob(0x7f7ba809e770) "OK Completed
"
akonadi_imap_resource_2(26578)/libakonadi
Akonadi::JobPrivate::delayedEmitResult:
Akonadi::CollectionSelectJob(0x7f7ba809e770) emitResult
akonadi_imap_resource_2(26578)/libakonadi Akonadi::Job::slotResult:
Akonadi::ItemFetchJob(0x7f7ba80acb90) subjob done:
Akonadi::CollectionSelectJob(0x7f7ba809e770)
akonadi_imap_resource_2(26578)/libakonadi Akonadi::JobPrivate::handleResponse:
Akonadi::ItemFetchJob(0x7f7ba80acb90) "NO Unable to retrieve item parts
"
akonadi_imap_resource_2(26578)/libakonadi Akonadi::Job::slotResult:
Akonadi::ItemSync(0x7f7ba8093570) subjob done:
Akonadi::ItemFetchJob(0x7f7ba80acb90)
akonadi_imap_resource_2(26578)/libakonadi
Akonadi::ResourceBasePrivate::slotItemSyncDone:
ResourceBasePrivate::slotItemSyncDone calling taskDone
akonadi_imap_resource_2(26578)/libakonadi
Akonadi::ResourceScheduler::executeNext:
======================================== current task: 9 SyncCollection
collection 664
ASSERT: "m_jobs.isEmpty()" in file
/d/kde/src/t/kdepim/runtime/resources/imap/imapresource.cpp, line 813

Debug output generated by
http://www.davidfaure.fr/2010/imap_resource_debug.diff
http://www.davidfaure.fr/2010/kdepimlibs_akonadi_debug.diff

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



More information about the Kdepim-bugs mailing list