[Dovecot] Small change to make dovecot pop3 uw-imap migration friendly

Brian Candler B.Candler at pobox.com
Thu May 27 19:33:23 EEST 2004

On Thu, May 27, 2004 at 05:57:40PM +0300, Timo Sirainen wrote:
> >    Probably this small change could be applied to the 1.0, or used as 
> >a
> >config option.
> I was thinking about making this fully configurable, ie. a config 
> option which would accept printf-like string. "%v.%u" "%08xv%08xu" or 
> something. Or maybe it's not worth it, I'd have to look at other POP3 
> servers to see what different kinds of UIDs they use..

Suggestion: if you have any way to maintain per-message state information,
keep the UID in there. You can prime it using an algorithm of your choice.
Ideally you'd allow its value to be taken from a header (e.g. X-POP3-UIDL)
if present.

The reason for this: when migrating a mailbox from any other POP3 server,
you can take whatever UIDL the old POP3 server gives and attach it to the
message in Dovecot.

courier-imap *almost* allows me to do this. It keeps a state file
(courierpop3dsizelist), containing one line per message - it has the exact
message size as per RFC1939, and a sequence number. The UIDL entry is then
sequenced from UID${uidvalidity}.${sequence}

What I'd prefer is that instead of a sequence number, the exact UIDL string
is stored there. Then I could migrate from *any* POP3 server and preserve

(I'm keeping an eye on Dovecot... courier-imap has served me extremely well
in production environments and under heavy load, but from what I've seen on
this list, Dovecot is very good at producing diagnostic error messages when
things go wrong, which courier is dreadful at... I can't deploy Dovecot
until it supports Maildir++ quotas though)



More information about the dovecot mailing list