Index corruption in 2.2.18

Anton Chevychalov ac at stacksoft.ru
Wed Mar 16 09:09:10 UTC 2016


We are using dbox with lz4 compression and dovecot-lda + sieve for delivery.

Mail recieved:
Mar 16 06:27:55 mail2 dovecot: lda(svs at example.com): sieve: msgid=<20160316032754.4C89D2C4 at rdbms.oldstable.office.example.com>: stored mail into mailbox 'INBOX'

Around 08:14:00 user start his thunderbird with local filters. He found one mail without headers.

Around that time user do repair folder in thunderbird:
Mar 16 10:14:44 mail2 dovecot: imap(svs at example.com): Error: read(/mail/boxes/example.com/svs/storage/m.139) failed: Cached message size larger than expected (1572 > 980, box=Logs/Backup, UID=9763, cached Message-Id=<20160316032754.4C89D2C4 at rdbms.oldstable.office.example.com>)
Mar 16 10:14:44 mail2 dovecot: imap(svs at example.com): Error: Corrupted index cache file /mail/boxes/example.com/svs/mailboxes/Logs/Backup/dbox-Mails/dovecot.index.cache: Broken physical size for mail UID 9763
Mar 16 10:14:44 mail2 dovecot: imap(svs at example.com): Error: read(/mail/boxes/example.com/svs/storage/m.139) failed: Cached message size larger than expected (1572 > 980, box=Logs/Backup, UID=9763, cached Message-Id=<20160316032754.4C89D2C4 at rdbms.oldstable.office.example.com>) (FETCH BODY[] for mailbox Logs/Backup UID 9763)
Mar 16 10:14:44 mail2 dovecot: imap(svs at example.com): Disconnected: FETCH read() failed in=14812 out=1077049
Mar 16 10:14:45 mail2 dovecot: imap(svs at example.com): Error: read(/mail/boxes/example.com/svs/storage/m.139): FETCH BODY[] for mailbox Logs/Backup UID 9763 got too little data: 1008 vs 1613
Mar 16 10:14:45 mail2 dovecot: imap(svs at example.com): Error: Corrupted index cache file /mail/boxes/example.com/svs/mailboxes/Logs/Backup/dbox-Mails/dovecot.index.cache: Broken virtual size for mail UID 9763
Mar 16 10:14:45 mail2 dovecot: imap(svs at example.com): Disconnected:
FETCH failed in=837 out=641651

And still in a same state:
Mar 16 11:42:51 mail2 dovecot: imap(svs at example.com): Error: read(/mail/boxes/example.com/svs/storage/m.139): FETCH BODY[] for mailbox Logs/Backup UID 9763 got too little data: 1008 vs 1613
Mar 16 11:42:51 mail2 dovecot: imap(svs at example.com): Error: Corrupted index cache file /mail/boxes/example.com/svs/mailboxes/Logs/Backup/dbox-Mails/dovecot.index.cache: Broken virtual size for mail UID 9763
Mar 16 11:42:51 mail2 dovecot: imap(svs at example.com): Disconnected: FETCH failed in=12462 out=984043

In thunderbird we see raw lz4 data.

I have today backup (duplicate mail on exim to per day mbox). So I can restore that message, but I found older problems in other mailboxes and I can't restore it due to tapes rotation 

I see a lot of fixes in 2.2.19? Was it fixed after 2.2.18?

-- 
Anton Chevychalov


More information about the dovecot mailing list