[Dovecot] Multiple delivery with LDA+sieve
Hi !
I am still a bit annoyed with the way that Sieve plugin handles multiple delivery into the same folder.
For reference : http://www.dovecot.org/list/dovecot/2007-January/019029.html
Summary : When a same message (same message-id) is to be delivered twice into the same mailbox, it is delivered twice while I think that the second one should be discarded.
Here are a few test cases :
- you subscribe to a few mailing lists on topic "X" and deliver all mails from those mailing lists in the same folder. You get twice the mails that are crossposted.
- you subscribe to one mailing list and read it regulary so you don't care of receiving messages from this mailing list (you are in Cc when someone answers) in your INBOX. You match on To or Cc to put everything in the same folder. You get messages twice when you are put personally in Cc.
- you place a forward from one account to two of your accounts (one is keeping backup, the other don't but delivers faster). You receive all messages twice.
With procmail, I handle those (real) cases with formail. I can't with Sieve. I don't see any interest in receiving the same message twice into the same mailbox. Is it possible to maintain a list of recent message-id and mailbox couples to avoid to deliver again a message to the same mailbox ?
Terminate input by end-of-file or marker, not by count. - The Elements of Programming Style (Kernighan & Plauger)
On 25.3.2007, at 13.49, Vincent Bernat wrote:
Is it possible to maintain a list of recent message-id and mailbox couples to avoid to deliver again a message to the same mailbox ?
It should be pretty easy to modify the sources to do this. There's
duplicate.h which provides an API to marking duplicates and checking
if they exist. It's already used by the Sieve plugin. The duplicate
database code is pretty simple though and if the file grows large,
it'll be slow.
I guess this duplicate checking could be done, but I wouldn't want it
enabled by default.
On 25/03/2007 15:12, Timo Sirainen wrote:
I guess this duplicate checking could be done, but I wouldn't want it enabled by default.
You've got to be careful anyway, these so-called duplicates often come via different routes (e.g. directly and via a mailing list), may have been processed differently over those routes (e.g. have had attachments stripped), can't be trusted to have useful addressee fields, and won't necessarily arrive in the same order every time, so any rules for de-duplicating really have to be left to the mailbox owner and can't safely be applied server-wide.
Just my 0.02 currency units of your choice.
Cheers,
John.
OoO Vers la fin de l'après-midi du dimanche 25 mars 2007, vers 16:22, John Robinson john.robinson@anonymous.org.uk disait:
I guess this duplicate checking could be done, but I wouldn't want it enabled by default.
You've got to be careful anyway, these so-called duplicates often come via different routes (e.g. directly and via a mailing list), may have been processed differently over those routes (e.g. have had attachments stripped), can't be trusted to have useful addressee fields, and won't necessarily arrive in the same order every time, so any rules for de-duplicating really have to be left to the mailbox owner and can't safely be applied server-wide.
By delivering the mail to the same mailbox, the mailbox owner should want de-duplication. We won't de-duplicate mails that are delivered to different mailboxes.
I will look at the duplicate database when I manage to get some time. :)
BOFH excuse #163: no "any" key on keyboard
participants (3)
-
John Robinson
-
Timo Sirainen
-
Vincent Bernat