The EC2 instance that I run Dovecot on (personal mail server) was forcibly "retired" yesterday, and as a result I ended up rebuilding from backups. In the process I switched from Ubuntu Precise to Ubuntu Xenial (12.04 to 16.04), and this in turn caused me to upgrade Dovecot from 2.0.19 to 2.0.22. Now, although accessing mail seems to work OK using my various clients, I am seeing these errors in my logs:
Jan 3 05:56:58 -- dovecot: imap(owen): Panic: file mail-index-sync-keywords.c: line 227 (keywords_update_records): assertion failed: (data_offset >= sizeof(struct mail_index_record)) Jan 3 05:56:58 -- dovecot: imap(owen): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x7aee2) [0x7fe9c08dbee2] -> /usr/lib/dovecot/libdovecot.so.0(+0x7afcd) [0x7fe9c08dbfcd] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7fe9c0880a61] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_index_sync_keywords+0x828) [0x7fe9c0c1fdd8] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_index_sync_record+0xef) [0x7fe9c0c2079f] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_index_sync_map+0x238) [0x7fe9c0c21758] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_index_map+0x71) [0x7fe9c0c18de1] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xd28fd) [0x7fe9c0c2e8fd] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xd2f03) [0x7fe9c0c2ef03] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_index_open+0x78) [0x7fe9c0c2efe8] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_storage_mailbox_open+0x92) [0x7fe9c0c08042] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x5e8d2) [0x7fe9c0bba8d2] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x5e9b8) [0x7fe9c0bba9b8] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x37b86) [0x7fe9c0b93b86] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_open+0x20) [0x7fe9c0b93d00] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_storage_get_status+0x20) [0x7fe9c0c073b0] -> /usr/lib/dovecot/libdovecot-storage.so.0(mailbox_get_status+0x37) [0x7fe9c0b940e7] -> dovecot/imap(imap_status_get+0x77) [0x55d3b4c3f977] -> dovecot/imap(cmd_status+0x1a9) [0x55d3b4c32969] -> dovecot/imap(command_exec+0x9c) [0x55d3b4c3806c] -> dovecot/imap(+0x193e2) [0x55d3b4c363e2] -> dovecot/imap(+0x1946c) [0x55d3b4c3646c] -> dovecot/imap(client_handle_input+0x165) [0x55d3b4c36825] -> dovecot/imap(client_input+0x82) [0x55d3b4c36db2] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x4c) [0x7fe9c08efc6c] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x101) [0x7fe9c08f1101] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x25) [0x7fe9c08efcf5] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7fe9c08efe98] Jan 3 05:56:59 -- dovecot: imap(owen): Fatal: master: service(imap): child 18289 killed with signal 6 (core dumped)
I have deleted the dovecot.* files in the Maildir for all users (did this while Dovecot was stopped, then started it again), but the errors persist. They are especially frequent for one particular user. I can't figure out where the core file is, it doesn't seem to be in my home or in /var/run/dovecot
Here's my dovecot -n output:
# 2.2.22 (fe789d2): /etc/dovecot/dovecot.conf # Pigeonhole version 0.4.13 (7b14904) # OS: Linux 4.4.0-1043-aws x86_64 Ubuntu 16.04.3 LTS mail_location = maildir:~/Maildir namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = } passdb { driver = pam } protocols = " imap" service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0660 user = postfix } } ssl_cert = </etc/letsencrypt/live/mydomain/cert.pem ssl_key = </etc/letsencrypt/live/mydomain/privkey.pem userdb { driver = passwd }
Thanks in advance for any support you can offer!