Diego Liziero
2008-Mar-13 12:01 UTC
[Dovecot] A message, when moved by multiple clients with same account and same filters, can be duplicated by filters on destination imap folder.
I'm still collecting user feedback after moving from uw-imap to dovecot development release 1.1.rc3. What said in the subject seems the obvious result of an improper configuration. Office emails are configured and accessed on multiple clients with the same automatic filters, and sometimes the filtered emails get duplicated on the destination folder. The fact is that this was perfectly working with wu-imap (without any duplication/triplication of emails). I'm looking if there is some workaround to keep this client misuse working with dovecot. Could an email have a sort of "primary key" that forbids it's duplication in the same imap folder? Regards, Diego.
Bill Cole
2008-Mar-13 19:47 UTC
[Dovecot] A message, when moved by multiple clients with same account and same filters, can be duplicated by filters on destination imap folder.
At 1:01 PM +0100 3/13/08, Diego Liziero wrote:>I'm still collecting user feedback after moving from uw-imap to >dovecot development release 1.1.rc3. > >What said in the subject seems the obvious result of an improper >configuration.The risk of duplication in built into the IMAP protocol. There is no logical 'move' command in IMAP, so a server cannot block one client from doing the multiple steps needed to safely emulate a move while another client is doing it as well. Clients can (and should) narrow the window for this sort of event by refreshing their views of the source and target folders and the target message as a part of their emulation of a move, but there are a lot of careless clients out there.>Office emails are configured and accessed on multiple clients with the >same automatic filters, and sometimes the filtered emails get >duplicated on the destination folder. > >The fact is that this was perfectly working with wu-imap (without any >duplication/triplication of emails).The only reason I can think of for Dovecot to be more vulnerable to this is that it offers a set of mbox_* settings that might lead to lazy simultaneous clients seeing different states for a mbox-backed inbox. If you have mbox_dirty_syncs, mbox_very_dirty_syncs, or mbox_lazy_writes, you increase the risk of clients not seeing the results of other clients' recent actions in a mailbox.>I'm looking if there is some workaround to keep this client misuse >working with dovecot.There's no sure-fire fix because of how logical moves have to be implemented by clients.>Could an email have a sort of "primary key" that forbids it's >duplication in the same imap folder?In principle, every message has a globally and permanently unique Message-ID header. In practice, not so much... Some MUA's and MDA's can be configured to de-dupe mailboxes based on Message-ID, but doing so is not always safe or desirable and Dovecot has no such facility. -- Bill Cole bill at scconsult.com
Timo Sirainen
2008-Mar-14 01:56 UTC
[Dovecot] A message, when moved by multiple clients with same account and same filters, can be duplicated by filters on destination imap folder.
On Mar 13, 2008, at 2:01 PM, Diego Liziero wrote:> The fact is that this was perfectly working with wu-imap (without any > duplication/triplication of emails).That's because UW-IMAP (with mbox) allows only a single IMAP connection to access the mailbox at the same time (new connection kicking out the old one). There never were multiple clients connected to it at the same time. I don't really have any good solutions for this, except how about trying to get rid of client-side filters and use Sieve instead? -------------- next part -------------- A non-text attachment was scrubbed... Name: PGP.sig Type: application/pgp-signature Size: 194 bytes Desc: This is a digitally signed message part URL: <http://dovecot.org/pipermail/dovecot/attachments/20080314/cb63ef9b/attachment-0002.bin>
Maybe Matching Threads
- imap sent-mail folder sometimes dosen't get updated when used by more than a mailer at the same time.
- another assertion failure in dovecot 1.1.7 mbox-sync-rewrite: (mails[idx].from_offset == start_offset)
- Imap sent folder sometimes dosen't get updated in dovecot-1.1-rc3(+some current hg patches)
- Do *not* pass '...' to NextMethod() - it'll do it for you; missing documentation, a bug or just me?
- assertion failed in 1.1.7 file mbox-sync.c: line 1305 (mbox_sync_handle_eof_updates)