On Thu, 2007-06-14 at 13:01 +0200, Erland Nylend wrote:
> 3) We delete the erroneous dovecot-uidlist -files, and so we are
>    left with an account without a dovecot-uidlist file, but it still
>    contains messages in cur
> 
> 4) Messages come in, and deliver creates a dovecot-uidlist with uids
>    "1,2 ... N"
> 
> 5) The user runs imap/pop3, and dovecot notices that there are
>    messages in cur, and adds them to the uidlist, after uids "1,2,3
>    ...  N" 
> 
> .. so, we end up with an unordered list.

Ah. I had never thought of that. But it's a problem only when you're
migrating from another server..

> Suggestion: make deliver create the index files, and a complete
> dovecot-uidlist when a message is sent to an account without index
> files. 

This would slow down deliver unneededly. A better way might be to just
not update dovecot-uidlist at all (which doesn't belong to "indexes"
btw). This could probably be somewhat easily patched for v1.0, but for
v1.1 which supports UIDPLUS extension Dovecot must always get an UID for
newly saved messages.

And that still wouldn't solve the underlying problem that if you mix
external maildir deliveries and Dovecot-delievered/saved mails you end
up getting them in wrong order.

I don't really see any good solutions to this problem. Perhaps it's not
a real problem except with migrations. For that the migration script
itself could add all the files to dovecot-uidlist file.

Attachment: signature.asc
Description: This is a digitally signed message part

Reply via email to