On 21.11.2014 14:04, Tim wrote:
On 21.11.2014 11:58, Toni Mattila wrote:
Hi,
I think your issue is due to your corrupted maildir sizes in filenames so you got corrupted index that way to your mdbox. That is not something you can easily fix afterwords other than fixing the maildir first and then migrate to mdbox.
well, I don't have the maildir files anymore or they are way out of date. I can try to mirror the directory structure with doveadm to create another mdbox instance. maybe this will it also fix. I successfully mirrored all mailboxes with dsync, but this didn't fix anything. My mailclients are still complaining about the virtual size. or broken index cache files. Any thoughts here? Timo maybe?
Best Regards, Toni
On 21.11.2014 11:59, Tim wrote:
On 27 Sep 2014, at 17:48, Tim tim@bastelfreak.de wrote:
unfortunately I'm getting the following two kinds of error messages for all mail boxes in my mail.log:
Error: Corrupted index cache file /home/vmail/%domain/%user/mdbox/mailboxes/%maildir/dbox-Mails/dovecot.index.cache:
Broken virtual size for mail UID 2564
and:
Error: read(/home/vmail/%domain/%user/mdbox/storage/m.108 ): FETCH BODY[] for mailbox %maildir UID 2564 got too little data: 2417 vs 6319 If that happens to all the mails, something went wrong. Did you maybe use zlib plugin while writing the messages (compressed), but now you're trying to read the mails without zlib plugin?
Hi Timo, sorry for the late reply, missed this mail. On 15.10.2014 05:05, Timo Sirainen wrote: the migration from maildir to mdbox is a few weeks in the past so I don't remember correctly. IMHO I migrated from maildir with disabled zlib to mdbox. with mdbox, zlib was active the hole time and it is still active. Here is my doveconf -n output: http://p.bastelfreak.de/l2wq/ . Do you need anything else for debugging?
The error messages may be somewhat confusing. The problem isn't dovecot.index.cache file, but that the message sizes in the m.* files don't match the contents. There's no easy way to fix those, because they should just about never be wrong.