[Akonadi] [Bug 339565] Deleting several thousand mails at once only deletes them in the local store

Daniel Vrátil dvratil at redhat.com
Fri Oct 3 10:15:27 BST 2014


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

Daniel Vrátil <dvratil at redhat.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
   Version Fixed In|                            |4.14.2
             Status|UNCONFIRMED                 |RESOLVED
      Latest Commit|                            |http://commits.kde.org/kdep
                   |                            |im-runtime/6cc5af5b150628a2
                   |                            |50e67b12ee1ee195a0d8859c

--- Comment #1 from Daniel Vrátil <dvratil at redhat.com> ---
Git commit 6b8101c42bf96c54499da7aea61f1b70904fc450 by Dan Vrátil.
Committed on 03/10/2014 at 09:08.
Pushed by dvratil into branch 'KDE/4.14'.

[IMAP Resource] Remove RemoveItemsTask and use ChangeItemsFlagsTask instead

Removing emails means appending the \Deleted flag, so RemoteItemsTask is
just a simpler version of ChangeItemsFlagsTask with hardocded flag to append.
To avoid code duplication and make use of flags-related fixes in
ChangeItemsFlagsTask,
we can just use that instead of RemoveItemsTask.

REVIEW: 120447

M  +0    -1    resources/imap/CMakeLists.txt
M  +2    -2    resources/imap/imapresourcebase.cpp
D  +0    -106  resources/imap/removeitemstask.cpp
D  +0    -46   resources/imap/removeitemstask.h
M  +0    -1    resources/imap/tests/CMakeLists.txt
D  +0    -105  resources/imap/tests/testremoveitemstask.cpp

http://commits.kde.org/kdepim-runtime/6b8101c42bf96c54499da7aea61f1b70904fc450

--- Comment #2 from Daniel Vrátil <dvratil at redhat.com> ---
Git commit 6cc5af5b150628a250e67b12ee1ee195a0d8859c by Dan Vrátil.
Committed on 03/10/2014 at 09:13.
Pushed by dvratil into branch 'KDE/4.14'.

[IMAP Resource] Split large UID STORE commands to multiple smaller ones

Although not specified in RFC, IMAP servers usually have some limit on maximal
length of a command send by clients. This is best visible in case of
ChangeItemsFlagsTask,
which would create an insanely long STORE command when user marked as read
thousands of emails at once.

To prevent servers from rejecting our requests, we split large STORE requests
to multiple smaller ones, each of 2000 UIDs at most. 2000 sounds like a good
compromise between not hitting it too often (i.e. users usually mark as read
few emails at once, hundreds at best) and not hitting the server-side limits
(every server out there should handle 2000 UIDs in a request). This number
can be tuned later of course if we find out it's too much/not enough.

REVIEW: 120446
FIXED-IN: 4.14.2

M  +23   -9    resources/imap/changeitemsflagstask.cpp
M  +3    -0    resources/imap/changeitemsflagstask.h

http://commits.kde.org/kdepim-runtime/6cc5af5b150628a250e67b12ee1ee195a0d8859c

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Kdepim-bugs mailing list