[Dovecot] Maildir++ quota inconsistency

Marcus Jodorf dovecot at killfile.de
Fri Sep 1 04:00:37 EEST 2006


Anand Buddhdev wrote:
> But the issue is this:
>
> I have my user accounts in a mysql database. In the quota column, if I
> store the value '275', Dovecot interprets that as 275 kB, and if
> Dovecot was the first to create the maildirsize file, it will
> write '275000S' into the file. Exim on the other hand, will interpret
> that quota as 275 bytes. Of course, with Exim, I can work all kinds of
> magic, and append '000' to the value it gets back from the query.

This is nearly the problem which gave me a bloody nose trying to use dovecot 
lda for the first time a few days ago.

I have my setup in a postgres db and had quota up and running with maildrop 
or postfix + vda-patch without any problems before.
Both of these possibilities are compatible to one another concerning the 
actual quota values and do it the same way using bytes as your Exim as I 
understand.
So usage of courier/postfix+vda/Exim and for sure some others on the same 
set of quota data should be no problem at all. All interchangeable. No 
problems up till now.

Now I tried dovecot lda (using dirsize for starters, because mainly I used 
postfix+vda which doesn't need courier-style maildirsize-files) and 
suddenly my users had a quota of 50000 GB storage instead of 50 GB. Not 
really that funny.

Ok, no problem with postgres. So I set up a new view for dovecot with a 
suitable division to cut down the numbers for dovecot.
Slightly ugly but does the trick.

But then it got really ugly.
All accounts with unlimited quota were locked and all mail for them bounced.
Surprisingly there is an even more malicious incompatibility to all other 
programs using quota: dovecot takes values of '0' for quota literally as 
zero. All the others take it for unlimited quota. Nice surprise. Most 
definitely not funny.

Sadly, I had to dump dovecot lda after this unpleasant experience till it 
behaves at least a little bit more like all the others.

Marcus


More information about the dovecot mailing list