Hi guys, I'm running dovecot/postfix on my Debian Jessie maschine: # dovecot --version 2.2.13 doveconf -n output: http://p.bastelfreak.de/HsVwS/ today I migrated from maildir(located at /var/vmail) to mdbox with these commands: rsync -av -f"+ */" -f"- *" /var/vmail/ /home/vmail/ rm /home/vmail/*/*/Maildir -rf for i in $(doveadm user \*); do u=$(echo $i | cut -d@ -f1); d=$(echo $i |cut -d@ -f2); dsync -v -u $i mirror mdbox:/home/vmail/$d/$u/mdbox; done Then I changed the mail_location to mdbox:/home/vmail/%d/%n/mdbox and did the following commands: service dovecot restart for i in $(doveadm user \*); do u=$(echo $i | cut -d@ -f1); d=$(echo $i |cut -d@ -f2); dsync -v -u $i mirror maildir:/var/vmail/$d/$u/Mail; done doveadm index -A all INBOX for i in $(doveadm user \*); do doveadm -Dv fts rescan -u $i;done 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 please let me know if you have any suggestions for fixing this issue or if you need more information. kind regards, Tim
Hi guys, does nobody has any thoughts on this error? On 28.09.2014 02:48, Tim wrote:> Hi guys, > > I'm running dovecot/postfix on my Debian Jessie maschine: > > # dovecot --version > 2.2.13 > doveconf -n output: http://p.bastelfreak.de/HsVwS/ > > today I migrated from maildir(located at /var/vmail) to mdbox with these > commands: > rsync -av -f"+ */" -f"- *" /var/vmail/ /home/vmail/ > rm /home/vmail/*/*/Maildir -rf > for i in $(doveadm user \*); do u=$(echo $i | cut -d@ -f1); d=$(echo $i > |cut -d@ -f2); dsync -v -u $i mirror mdbox:/home/vmail/$d/$u/mdbox; done > > Then I changed the mail_location to mdbox:/home/vmail/%d/%n/mdbox and > did the following commands: > > service dovecot restart > for i in $(doveadm user \*); do u=$(echo $i | cut -d@ -f1); d=$(echo $i > |cut -d@ -f2); dsync -v -u $i mirror maildir:/var/vmail/$d/$u/Mail; done > doveadm index -A all INBOX > for i in $(doveadm user \*); do doveadm -Dv fts rescan -u $i;done > > 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 > > please let me know if you have any suggestions for fixing this issue or > if you need more information. > > kind regards, Tim
Timo Sirainen
2014-Oct-15 03:05 UTC
Corrupted index cache after migrating from maildir to mdbox
On 27 Sep 2014, at 17:48, Tim <tim at 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 6319If 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? 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.