Summary: | mail loss (content) when filtering emails not in cache | ||
---|---|---|---|
Product: | [Applications] kmail2 | Reporter: | S. Burmeister <sven.burmeister> |
Component: | filtering | Assignee: | kdepim bugs <kdepim-bugs> |
Status: | RESOLVED DUPLICATE | ||
Severity: | major | CC: | rigo |
Priority: | NOR | ||
Version: | 4.7 | ||
Target Milestone: | --- | ||
Platform: | openSUSE | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: |
Description
S. Burmeister
2011-10-17 22:43:18 UTC
akonadi version used is 1.6.2 See also https://bugs.kde.org/show_bug.cgi?id=286043 I have also the sent-mail on my imap-server. Interestingly enough, your email is probably not gone at all. I see one email with kmail2 in my sent-mail dated 25 November. If I ssh into the server and look at the folder with Mutt, I see 5 emails dated 25 November. F5 and all trials to trigger synchronization doesn't create any activity. Even with Akonadiconsole, it doesn't synchronize at all as it believes to be up to date. So try to look at your imap-folder with mutt and see if the emails are really lost. I think this is a serious issue as people believe they have lost email and they haven't. There should be a hard synchronization from scratch possible if triggered by the user to update all the metadata. This isn't the case today. Git commit d64d61b470c56b92294f6adee6d74305a217628d by Andras Mantia. Committed on 04/07/2012 at 17:35. Pushed by amantia into branch 'master'. A biggish refactoring of the filter functionality: 1) Do not take the items from the cache only, as they might be incomplete (especially in online imap case, but not only). This should fix the body loss bug on spam filtering.(Bug 287752 and similar ones + countless of reports on user list) Might fix 293768. 2) Download only what is really needed for the filter and add safety checks that the mail is not modified if the requested part is missing. So far the distinction was only betwee the body and rest. This should speed up filtering. Also related to 287752, but should fix also 292283, 288109. 3) Rename qDebug->kDebug + fix some includes 4) The code should also fix the duplicate mails appearing after filtering (some of the duplicates with empty content), eg. 275233 All bug reporters: in case you still see the bug, reopen the corresponding one. For the reports that were CC'd, but not closed, please try to reproduce and tell the result. So far the bug is fixed on master, but might be backported later to 4.9. Related: bug 287752, bug 292283, bug 288109, bug 286043, bug 295484, bug 302337, bug 295000, bug 295684, bug 293768, bug 275233, bug 293918, bug 286364, bug 283682 M +7 -11 kmail/kmcommands.cpp M +10 -7 kmail/kmcommands.h M +1 -1 kmail/kmmainwidget.cpp M +1 -5 mailcommon/filter/filteraction.cpp M +6 -5 mailcommon/filter/filteraction.h M +6 -0 mailcommon/filter/filteractionaddheader.cpp M +2 -0 mailcommon/filter/filteractionaddheader.h M +2 -2 mailcommon/filter/filteractionaddtag.cpp M +1 -1 mailcommon/filter/filteractionaddtag.h M +9 -3 mailcommon/filter/filteractionaddtoaddressbook.cpp M +2 -0 mailcommon/filter/filteractionaddtoaddressbook.h M +7 -0 mailcommon/filter/filteractionbeep.cpp M +1 -0 mailcommon/filter/filteractionbeep.h M +18 -1 mailcommon/filter/filteractioncopy.cpp M +7 -0 mailcommon/filter/filteractioncopy.h M +6 -0 mailcommon/filter/filteractiondelete.cpp M +1 -0 mailcommon/filter/filteractiondelete.h M +5 -0 mailcommon/filter/filteractionexec.cpp M +1 -0 mailcommon/filter/filteractionexec.h M +5 -0 mailcommon/filter/filteractionforward.cpp M +1 -0 mailcommon/filter/filteractionforward.h M +6 -0 mailcommon/filter/filteractionmove.cpp M +2 -0 mailcommon/filter/filteractionmove.h M +6 -0 mailcommon/filter/filteractionpipethrough.cpp M +1 -0 mailcommon/filter/filteractionpipethrough.h M +6 -0 mailcommon/filter/filteractionplaysound.cpp M +2 -0 mailcommon/filter/filteractionplaysound.h M +5 -0 mailcommon/filter/filteractionredirect.cpp M +1 -0 mailcommon/filter/filteractionredirect.h M +6 -1 mailcommon/filter/filteractionremoveheader.cpp M +1 -0 mailcommon/filter/filteractionremoveheader.h M +6 -0 mailcommon/filter/filteractionreplyto.cpp M +1 -0 mailcommon/filter/filteractionreplyto.h M +6 -0 mailcommon/filter/filteractionrewriteheader.cpp M +1 -0 mailcommon/filter/filteractionrewriteheader.h M +6 -0 mailcommon/filter/filteractionsendfakedisposition.cpp M +1 -0 mailcommon/filter/filteractionsendfakedisposition.h M +8 -2 mailcommon/filter/filteractionsendreceipt.cpp M +1 -0 mailcommon/filter/filteractionsendreceipt.h M +6 -0 mailcommon/filter/filteractionsetidentity.cpp M +1 -0 mailcommon/filter/filteractionsetidentity.h M +6 -0 mailcommon/filter/filteractionsetstatus.cpp M +1 -0 mailcommon/filter/filteractionsetstatus.h M +6 -0 mailcommon/filter/filteractionsettransport.cpp M +1 -0 mailcommon/filter/filteractionsettransport.h M +5 -0 mailcommon/filter/filteractionstatus.cpp M +2 -0 mailcommon/filter/filteractionstatus.h M +5 -2 mailcommon/filter/filteractionunsetstatus.cpp M +2 -1 mailcommon/filter/filteractionunsetstatus.h M +4 -4 mailcommon/filter/filterimporter/filterimporterevolution.cpp M +1 -1 mailcommon/filter/filterimporter/filterimporterprocmail.cpp M +1 -1 mailcommon/filter/filterimporter/filterimportersylpheed.cpp M +2 -2 mailcommon/filter/filtermanager.cpp M +2 -8 mailcommon/filter/filtermanager.h M +8 -2 mailcommon/filter/itemcontext.cpp M +8 -1 mailcommon/filter/itemcontext.h M +10 -17 mailcommon/filter/kmfilterdialog.cpp M +2 -1 mailcommon/filter/kmfilterdialog.h M +25 -8 mailcommon/filter/mailfilter.cpp M +4 -3 mailcommon/filter/mailfilter.h M +48 -20 mailcommon/searchpattern.cpp M +34 -11 mailcommon/searchpattern.h M +1 -1 mailcommon/tests/searchpatterntest.cpp M +78 -47 mailfilteragent/filtermanager.cpp M +10 -8 mailfilteragent/filtermanager.h M +8 -6 mailfilteragent/mailfilteragent.cpp M +3 -0 mailfilteragent/mailfilteragent.h http://commits.kde.org/kdepim/d64d61b470c56b92294f6adee6d74305a217628d Git commit e3a03f1d704838a9ced4ff41358785392774ae69 by Andras Mantia. Committed on 04/07/2012 at 17:35. Pushed by amantia into branch 'KDE/4.9'. (Backport filter fix from master) A biggish refactoring of the filter functionality: 1) Do not take the items from the cache only, as they might be incomplete (especially in online imap case, but not only). This should fix the body loss bug on spam filtering.(Bug 287752 and similar ones + countless of reports on user list) Might fix 293768. 2) Download only what is really needed for the filter and add safety checks that the mail is not modified if the requested part is missing. So far the distinction was only betwee the body and rest. This should speed up filtering. Also related to 287752, but should fix also 292283, 288109. 3) Rename qDebug->kDebug + fix some includes 4) The code should also fix the duplicate mails appearing after filtering (some of the duplicates with empty content), eg. 275233 All bug reporters: in case you still see the bug, reopen the corresponding one. For the reports that were CC'd, but not closed, please try to reproduce and tell the result. So far the bug is fixed on master, but might be backported later to 4.9. Related: bug 287752, bug 292283, bug 288109, bug 286043, bug 295484, bug 302337, bug 295000, bug 295684, bug 293768, bug 275233, bug 293918, bug 286364, bug 283682 (cherry picked from commit d64d61b470c56b92294f6adee6d74305a217628d) FIXED-IN: 4.9 M +7 -11 kmail/kmcommands.cpp M +10 -7 kmail/kmcommands.h M +1 -1 kmail/kmmainwidget.cpp M +1 -5 mailcommon/filter/filteraction.cpp M +6 -5 mailcommon/filter/filteraction.h M +6 -0 mailcommon/filter/filteractionaddheader.cpp M +2 -0 mailcommon/filter/filteractionaddheader.h M +2 -2 mailcommon/filter/filteractionaddtag.cpp M +1 -1 mailcommon/filter/filteractionaddtag.h M +9 -3 mailcommon/filter/filteractionaddtoaddressbook.cpp M +2 -0 mailcommon/filter/filteractionaddtoaddressbook.h M +7 -0 mailcommon/filter/filteractionbeep.cpp M +1 -0 mailcommon/filter/filteractionbeep.h M +18 -1 mailcommon/filter/filteractioncopy.cpp M +7 -0 mailcommon/filter/filteractioncopy.h M +6 -0 mailcommon/filter/filteractiondelete.cpp M +1 -0 mailcommon/filter/filteractiondelete.h M +5 -0 mailcommon/filter/filteractionexec.cpp M +1 -0 mailcommon/filter/filteractionexec.h M +5 -0 mailcommon/filter/filteractionforward.cpp M +1 -0 mailcommon/filter/filteractionforward.h M +6 -0 mailcommon/filter/filteractionmove.cpp M +2 -0 mailcommon/filter/filteractionmove.h M +6 -0 mailcommon/filter/filteractionpipethrough.cpp M +1 -0 mailcommon/filter/filteractionpipethrough.h M +6 -0 mailcommon/filter/filteractionplaysound.cpp M +2 -0 mailcommon/filter/filteractionplaysound.h M +5 -0 mailcommon/filter/filteractionredirect.cpp M +1 -0 mailcommon/filter/filteractionredirect.h M +6 -1 mailcommon/filter/filteractionremoveheader.cpp M +1 -0 mailcommon/filter/filteractionremoveheader.h M +6 -0 mailcommon/filter/filteractionreplyto.cpp M +1 -0 mailcommon/filter/filteractionreplyto.h M +6 -0 mailcommon/filter/filteractionrewriteheader.cpp M +1 -0 mailcommon/filter/filteractionrewriteheader.h M +6 -0 mailcommon/filter/filteractionsendfakedisposition.cpp M +1 -0 mailcommon/filter/filteractionsendfakedisposition.h M +8 -2 mailcommon/filter/filteractionsendreceipt.cpp M +1 -0 mailcommon/filter/filteractionsendreceipt.h M +6 -0 mailcommon/filter/filteractionsetidentity.cpp M +1 -0 mailcommon/filter/filteractionsetidentity.h M +6 -0 mailcommon/filter/filteractionsetstatus.cpp M +1 -0 mailcommon/filter/filteractionsetstatus.h M +6 -0 mailcommon/filter/filteractionsettransport.cpp M +1 -0 mailcommon/filter/filteractionsettransport.h M +5 -0 mailcommon/filter/filteractionstatus.cpp M +2 -0 mailcommon/filter/filteractionstatus.h M +5 -2 mailcommon/filter/filteractionunsetstatus.cpp M +2 -1 mailcommon/filter/filteractionunsetstatus.h M +4 -4 mailcommon/filter/filterimporter/filterimporterevolution.cpp M +1 -1 mailcommon/filter/filterimporter/filterimporterprocmail.cpp M +1 -1 mailcommon/filter/filterimporter/filterimportersylpheed.cpp M +2 -2 mailcommon/filter/filtermanager.cpp M +2 -8 mailcommon/filter/filtermanager.h M +8 -2 mailcommon/filter/itemcontext.cpp M +8 -1 mailcommon/filter/itemcontext.h M +10 -17 mailcommon/filter/kmfilterdialog.cpp M +2 -1 mailcommon/filter/kmfilterdialog.h M +25 -8 mailcommon/filter/mailfilter.cpp M +4 -3 mailcommon/filter/mailfilter.h M +48 -20 mailcommon/searchpattern.cpp M +34 -11 mailcommon/searchpattern.h M +1 -1 mailcommon/tests/searchpatterntest.cpp M +78 -47 mailfilteragent/filtermanager.cpp M +10 -8 mailfilteragent/filtermanager.h M +8 -6 mailfilteragent/mailfilteragent.cpp M +3 -0 mailfilteragent/mailfilteragent.h http://commits.kde.org/kdepim/e3a03f1d704838a9ced4ff41358785392774ae69 Git commit 8846d44b217108351c35f8afd883f72ee88388ec by Andras Mantia. Committed on 06/07/2012 at 11:12. Pushed by amantia into branch 'KDE/4.8'. Backport part of the filter fix: this is the actual fix, the rest were optimizations and safety checks, but it is difficult to backport. An unwanted side-effect might be that more data is downloaded than before, based on the type of filters used. FIXED-IN: 4.8.5 Related: bug 287752, bug 292283, bug 288109, bug 286043, bug 295484, bug 302337, bug 295000, bug 295684, bug 293768, bug 275233, bug 293918, bug 286364, bug 283682 M +0 -1 mailfilteragent/mailfilteragent.cpp http://commits.kde.org/kdepim/8846d44b217108351c35f8afd883f72ee88388ec It would be nice if somebody could test this with KDE 4.9.0, I can't as I am unable to get a working kmail on my system due to Akonadi issues. Probably a dup. *** This bug has been marked as a duplicate of bug 293768 *** |