[Kde-pim] Review Request 109914: [IMAP] Use itemsRetrievedIncremental() when fetching missing bodies

Andras Mantia amantia at kde.org
Tue Apr 9 13:04:50 BST 2013



> On April 9, 2013, 6:24 a.m., Kevin Ottens wrote:
> > Any chance to get that logic unit tested? The original submitter for this behavior didn't unit test and it shows now.
> 
> Dan Vrátil wrote:
>     The code for retrieving missing bodies uses Akonadi::ItemFetchJob, which means the test would have to start a fake Akonadi server. I know there's an implementation in kdepimlibs, but I don't know how to reach it there from kdepim-runtime.
> 
> Dan Vrátil wrote:
>     It also means that the RetrieveItemsTask test does not work at all at the moment.

I didn't write a unit test as the whole tests with a fake server are unreliable for me (and cause configuration issues according to David). Neverthless we should fix that and have working and reliable unit tests.
The patch itself looks good for me.


- Andras


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/109914/#review30737
-----------------------------------------------------------


On April 8, 2013, 4:54 p.m., Dan Vrátil wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/109914/
> -----------------------------------------------------------
> 
> (Updated April 8, 2013, 4:54 p.m.)
> 
> 
> Review request for KDEPIM.
> 
> 
> Description
> -------
> 
> After RetrieveItemsTask finishes retrieving new emails or missing bodies, it fetches flags of emails 1...firstFetchedEmail. But in case of missing bodies fetch, the firstFetchedEmail does not have to be the newest item in the folder, so flags of (firstFetchedEmail + 1)...lastEmailInFolder are never retrieved and calling itemsRetrievalDone() causes Akonadi to drop all the messages in this range, as described in the referenced bug.
> 
> Using itemsRetrievedIncremental() when retrieving missing bodies fixes the issue, and I think it also makes more sense in this context, because syncing flags should be only done during regular sync.
> 
> 
> This addresses bug 316521.
>     http://bugs.kde.org/show_bug.cgi?id=316521
> 
> 
> Diffs
> -----
> 
>   resources/imap/retrieveitemstask.cpp 5129297 
> 
> Diff: http://git.reviewboard.kde.org/r/109914/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Dan Vrátil
> 
>

_______________________________________________
KDE PIM mailing list kde-pim at kde.org
https://mail.kde.org/mailman/listinfo/kde-pim
KDE PIM home page at http://pim.kde.org/


More information about the kde-pim mailing list