On 21.11.2011, at 22.02, Alexander Chekalin wrote: > I need a way to identify message across my mail box. The idea is that I can > move messages between IMAP folders and the index still should be able to > identify it.
Message GUIDs are pretty good for that. > What I want to know, will UID strings be unique across all my messages no > matter which IMAP folder it belongs now to, or the UID can change if I move > message? If I remove dovecot-uidlist from the folder will UIDs of messages in > the folder be changed? What happened if I put a message to the given IMAP > folder (and dovecot-uidlist will record UID for it), then shut down dovecot, > and (given maildir storage model) move the message's file info another folder > in the same mail box - after I start dovecot, will the UID for the message be > the same or not? With Maildir the message GUID is typically the same as the Maildir base filename (i.e. everything before ':' character). Assuming you're using Dovecot v2.x, when mail is copied to another mailbox its filename is preserved. So deleting dovecot* files won't lose the GUID. The only problem is that if you copy the same mail twice to another mailbox, it can't of course have the same filename twice, so Dovecot will assign it a new filename. But in a new enough version (probably v2.0.something) it still preserves the GUID by writing it to dovecot-uidlist file. In this situation if you delete the uidlist, the GUID changes to its filename.