[Dovecot] Renaming maildir files, UIDs and mail clients

Helge Milde helge at monsternett.no
Mon May 9 10:44:58 EEST 2011


Hi!

First a little background:

I'm thinking of compressing my Maildir's using dovecot's zlib support, and have run into a couple of problems.

First of all, my files use the following formats:
1. 1260386673.000002.mbox:2,S
2. 1304920966.M241434P17342.mail,W=3152:2,S

As you can see, both lack the S=<size> "basename flag", but the latter does have W=.
Reading http://wiki.dovecot.org/Plugins/Zlib, I get the impression that I really need S= in the filenames (".. otherwise there will be problems with quota calculation as well as other potential random failures.").

I have made a script that compresses my files, adds S=<size> if it's missing (using wc -c before gzip), and appends the Z flag. As I understand it, adding S=<size> will change the UID of the email, while appending Z won't.

Now for my questions:
1. How crucial is it to have the S= in the basename when using zlib?
The wiki page mentions quota problems, which we're not using, but also "random failures"...

2. Would W= suffice in this regard?
I.e. would I be able to compress files of the latter format safely, without adding S= (only appending the Z flag)?

3. If S=<size> *is* needed, is there a way to minimize the effect from the mail client's perspective?
 From my testruns, it seems Mutt have no problems after I rename the basename, but Thunderbird will refetch the emails, and not delete the old ones, showing duplicate emails.
Refetching emails is not a big problem, I think, but only if the email clients understand that the old ones doesn't exist anymore.

And if anyone has ideas on how to convert to using zlib without the users knowing, I would be glad to hear it!

-- 
Helge Milde
www.monsternett.no




More information about the dovecot mailing list