On Thu, 2009-10-15 at 10:55 +0200, Mikkel wrote:
In any case if there are expunged messages, files containing them would be recreated (nightly or something). That'll unfragment the files.
It would be nice if this recreation interval (nightly, weekly, monthly?) was made tunable.
It's actually left up to sysadmin to run "doveadm purge -a" from cronjob.
Some users would have mailboxes a several hundred megabytes and having to recreate thousands of these every night because of a single mail getting expunged a day could result in a huge performance hit.
It doesn't matter what the user's full mailbox size is. It matters how many of these max. ~2 MB dbox files have expunged messages. Typically users would expunge only new mails, so typically there would be only a single file that needs to be recreated.
The errors I get are like these two:
dovecot: Oct 01 15:13:05 Error: POP3(account@domain): Transaction log file /local/account_homedir/Maildir/dovecot.index.log: marked corrupted
This alone isn't an error, just says that error happened earlier.
dovecot: Oct 01 15:13:57 Error: IMAP(another_account@domain): Corrupted transaction log file /local/another_homedir/Maildir/dovecot.index.log seq 229: duplicate transaction log sequence (229) (sync_offset=32860)
Hmm. This means that Dovecot thought that dovecot.index.log file was rotated, but when it reopened it it actually had the same sequence number in the header. What NFS server are you using? One possible reason for this is if file's inode number suddenly changes.