[Dovecot] dict quota problem

Papp Tamas tompos at martos.bme.hu
Fri Apr 29 22:22:41 EEST 2011


On 04/20/2011 05:26 PM, Sven Hartge wrote:
> Papp Tamas<tompos at martos.bme.hu>  wrote:
>
>> On 04/20/2011 01:47 PM, Sven Hartge wrote:
>>> "du" also accounts for the metadata of the filesystem. With Maildir++
>>> you have many files per directory which causes the directory inode to
>>> increase in size. After mails are deleted, the now empty space inside
>>> the directory is not reclaimed (at least not in ext2/3/4, I guess, XFS
>>> behaves the same) and you see a difference in size, since dovecot only
>>> counts the raw size of the mails.
>>>
>>> You can test this for yourself: create a directory, place a 100M big
>>> file inside and check with "du". Then delete that file, create 10,000
>>> files with 10KB size inside, check with "du", delete the files and check
>>> again.
>> Thank you for your prompt answer.
>> Why does dovecot count only the raw size? Does this mean, dict quota is
>> not usable with maildirs? Is this true for sdbox also?
> In addition to the answer from Timo:
>
> Counting all meta-data is also very unintuitive for the user. Imagine a
> user with an INBOX containing 200,000 mails. This will result in a
> _huge_ directory inode for the INBOX folder (about 20MB for XFS). Now he
> deletes all those mails and expects a quota usage of 0 bytes. But the
> quota is still at 20MB, because the directory inode has not been reduced
> by the filesystem.
>
> I guarantee you, you will get numerous support calls.
>
> At least I got them while using filesystem-based quotas.

I'm sorry for the late response.

So, there is no exact or something closer solution with normal maildirs?

Thank you,

tamas


More information about the dovecot mailing list