Dovecot v2.3.13 reporting (very) incorrect vsize for some maildir folders

Timo Sirainen timo at sirainen.com
Thu May 20 15:59:55 EEST 2021


On 20. May 2021, at 14.12, Eirik Rye <rye at trojka.no> wrote:
> 
> 
>> On 20 May 2021, at 13:44, Timo Sirainen <timo at sirainen.com> wrote:
>> 
>> You can also look at the folder-level vsizes to see which one is causing the differences (or are they all doubled?)
> 
> In this user's case, it is only the Trash-folder that has the wrong vsize calculation:
> 
> # doveadm mailbox status -u <username> 'messages vsize' '*'
> Drafts messages=0 vsize=0
> Sent messages=0 vsize=0
> Trash messages=14870 vsize=14584428026
> Spam messages=3 vsize=227701
> INBOX messages=1866 vsize=1640766021
> 
> The other mailboxes (INBOX and Spam) are both within what I consider reasonable in terms of differences in virtual/physical sizes:
> 
> # du -bs /mail/<username>/Maildir/cur
> 1603071610      /mail/<username>/Maildir/cur
> # du -bs /mail/<username>/Maildir/.Spam
> 241489  /mail/<username>/Maildir/.Spam
> 
> But the Trash mailbox is physically HALF the size of what Dovecot reports:
> 
> # du -bs /mail/<username>/Maildir/.Trash
> 7200481589      /mail/<username>/Maildir/.Trash
> 
> The message count reported by dovecot (14870) is correct, however:
> 
> # ls /mail/<username>/Maildir/.Trash/cur | wc -l
> 14870
> 
> With the other users I have noticed the same issue, it's a different mailbox and not Trash.

Well, next step could be to compare individual mail sizes. It would require writing some kind of a script to do the comparison though. But for example you could look at both physical & virtual sizes in dovecot first to see if there's a big difference:

doveadm fetch -u user 'guid storageid size.physical size.virtual' mailbox Trash

I think either guid or storageid or both have the Maildir base filename. You could also compare those to the ls -l output.



More information about the dovecot mailing list