Dear Dovecot devs, is streaming multiple MOVE commands by clients allowed? I am getting duplicated messages with the GNUS mail client, the interchange looks like this: *stream two moves to different folders*> 9019 UID MOVE 4062,4066,4068 "folder0" > 9020 UID MOVE 4063:4064,4067,4069:4072 "folder1"*the messages are copied*> * OK [COPYUID 1424475218 4062,4066,4068 376:378] Moved UIDs. > * OK [COPYUID 1424475231 4063:4064,4067,4069:4072 26:32] Moved UIDs.*however expunge fails to clean 4063, 4064, and 4067*> * VANISHED 4062,4066,4068:4072thus 4063, 4064, and 4067 end both in inbox and folder1 producing duplicate messages (more details at [1]). At the GNUS mailing list, we were wondering about what should be the correct reading of RFC6851. Version and config information below. Best regards, Emilio [1] More details in the thread http://permalink.gmane.org/gmane.emacs.gnus.general/86813 [2] Version $ /usr/sbin/dovecot --version 2.2.13 [3] Config $ /usr/sbin/dovecot -n # 2.2.13: /etc/dovecot/dovecot.conf # OS: Linux 3.2.0-4-amd64 x86_64 Debian 8.3 ext4 mail_location = maildir:/home/%u/Maildir managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { driver = pam } plugin { sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } protocols = " imap sieve" ssl_cert = ... ssl_key = ... userdb { driver = passwd }
On 14 Feb 2016, at 06:17, Emilio Jes?s Gallego Arias <gallego at cri.ensmp.fr> wrote:> > Dear Dovecot devs, > > is streaming multiple MOVE commands by clients allowed? > > I am getting duplicated messages with the GNUS mail client, the > interchange looks like this: > > *stream two moves to different folders* >> 9019 UID MOVE 4062,4066,4068 "folder0" >> 9020 UID MOVE 4063:4064,4067,4069:4072 "folder1" > *the messages are copied* >> * OK [COPYUID 1424475218 4062,4066,4068 376:378] Moved UIDs. >> * OK [COPYUID 1424475231 4063:4064,4067,4069:4072 26:32] Moved UIDs. > *however expunge fails to clean 4063, 4064, and 4067* >> * VANISHED 4062,4066,4068:4072 > > thus 4063, 4064, and 4067 end both in inbox and folder1 producing > duplicate messages (more details at [1]). > > At the GNUS mailing list, we were wondering about what should be the > correct reading of RFC6851.Thanks, looks like this was broken with Maildir and mbox formats. It also caused expunges in some other situations to be lost. Fixed: https://github.com/dovecot/core/commit/950a6e61d6c2dac961ce031bdd8b2895bc32b827
Hello Timo, Timo Sirainen <tss at iki.fi> writes:> Thanks, looks like this was broken with Maildir and mbox formats. It > also caused expunges in some other situations to be lost. Fixed: > > https://github.com/dovecot/core/commit/950a6e61d6c2dac961ce031bdd8b2895bc32b827Thanks a lot for the fix, testing it now! Is this patch suitable of being backported to 2.2.13? (Debian stable) Best regards, E.