Another quick fix post!
A mailbox for a specific user was not receiving mail on a postfix & dovecot on a Plesk server which I managed. The following error messages were being shown in the mail log:
$ tail -f /var/log/maillog Apr 25 15:04:34 server01 dovecot: service=imap, email@example.com, ip=[192.168.0.1]. Error: /var/qmail/mailnames/exampledomain.com/dan/Maildir/dovecot.index: modseq_hdr.log_offset too large
As you can see the the error is: “modseq_hdr.log_offset too large”.
I’m not sure what caused this (I think it’s related to the dovecot.index file becoming corrupted – but not 100% sure), but this quick solution fixed it.
To fix this, delete all dovecot files (config and index files) from the specific users mail directory:
$ find /var/qmail/mailnames/example.com/dan/Maildir -name "dovecot*" -delete
Restart Postfix & Dovecot (to rebuild the dovecot files):
$ service dovecot restart $ service postfix restart
Warning: This fix removes the dovecot configuration and index files for that specific user. Make sure you back them up before running the above command! You may wish to restore them at a later date.
By magic the mailbox began to receive email!