[Kde-pim] Review Request 120446: [IMAP] Split large STORE request into multiple smaller requests

Andreas Schneider asn at cryptomilk.org
Thu Oct 2 08:16:37 BST 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/120446/#review67796
-----------------------------------------------------------


I've compiled a package and tested it, but it doesn't work for me deleting 30k mails ...

- Andreas Schneider


On Oct. 1, 2014, 12:42 p.m., Dan Vrátil wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/120446/
> -----------------------------------------------------------
> 
> (Updated Oct. 1, 2014, 12:42 p.m.)
> 
> 
> Review request for KDEPIM and Christian Mollekopf.
> 
> 
> Bugs: 339565
>     http://bugs.kde.org/show_bug.cgi?id=339565
> 
> 
> Repository: kdepim-runtime
> 
> 
> Description
> -------
> 
> Although RFC does not say anything about maximum length of an IMAP request, in reality IMAP server implementations have some kind of a limit - sometimes it's maximum length of the command, sometimes it's just the number of UIDs.
> 
> In normal use case we usually don't hit this limits, but when you delete or mark as read a huge amount of items (let's say you try to empty your Trash folder), you can hit this limit. In such case the items just disappear from Akonadi, but reappear on next sync, because server will simply refuse the IMAP command.
> 
> This patch makes ChangeItemsFlagsTask to split a one huge KIMAP::StoreJob into multiple smaller jobs, 2000 UIDs each. 2000 UIDs sounds like a good compromise between performance (you rarely do large operations like this, usually it's much smaller, tens maybe hundreds of items most), and functionality (2000 UIDs sounds like a number that every single IMAP server out there should still handle OK).
> 
> 
> Diffs
> -----
> 
>   resources/imap/changeitemsflagstask.h 9a58652 
>   resources/imap/changeitemsflagstask.cpp 1316b65 
> 
> Diff: https://git.reviewboard.kde.org/r/120446/diff/
> 
> 
> Testing
> -------
> 
> Successfully marked as read few emails, many emails and >2000 emails at once.
> 
> 
> 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