Daniel Demus
2015-Oct-29 08:54 UTC
Indexer crash when fixing incorrectly named Maildir files
Hi, If the indexer encounters, and fixes by renaming, an incorrectly named file, it crashes immediately afterwards. I would guess the old file-name is re-used after re-naming and but isn't checked because it is assumed to exist having come from a listing of directory contents. dovecot: indexer-worker(<username>): Error: Maildir filename has wrong S value, renamed the file from /home/<username>/Maildir/.INBOX.NYTimes/cur/1095923655.M449995P13207V0000000000000302I01010085_0.server.demus.dk,S=11936:2,S to /home/<username>/Maildir/.INBOX.NYTimes/cur/1095923655.M449995P13207V0000000000000302I01010085_0.server.demus.dk,S=12378:2,S: 1 Time(s) dovecot: indexer-worker(<username>): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x737c4) [0x76e327c4] -> /usr/lib/dovecot/libdovecot.so.0(i_warning+0) [0x76e328e4] -> /usr/lib/dovecot/libdovecot.so.0(i_panic+0x64) [0x76dda320] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x998b0) [0x76f388b0] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x1c8) [0x76f38df4] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x5391c) [0x76ef291c] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream+0x68) [0x76ec482c] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x536f4) [0x76ef26f4] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x48) [0x76ec4454] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_precache+0x124) [0x76f3a51c] -> /usr/lib/dovecot/lib20_fts_plugin.so(+0xcf20) [0x76beff20] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_precache+0x40) [0x76ec4c84] -> dovecot/indexer-worker(+0x1eec) [0x54b78eec] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x68) [0x76e46794] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xe8) [0x76e47a1c] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0xc) [0x76e46824] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x50) [0x76e468c8] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x14) [0x76de02f0] -> dovecot/indexer-worker(main+0xe8) [0x54b78880] -> /lib/libc.so.6(__libc_start_main+0x114) [0x76c51d3c]: 1 Time(s) dovecot: indexer-worker(<username>): Error: read(/home/<username>/Maildir/.INBOX.NYTimes/cur/1095923655.M449995P13207V0000000000000302I01010085_0.server.demus.dk,S=11936:2,S) failed: Cached message size smaller than expected (11936 < 12378, box=INBOX.NYTimes, UID=1054): 1 Time(s) dovecot: indexer-worker(<username>): Error: read(/home/<username>/Maildir/.INBOX.NYTimes/cur/1095923655.M449995P13207V0000000000000302I01010085_0.server.demus.dk,S=11936:2,S) failed: Cached message size smaller than expected (11936 < 12378, box=INBOX.NYTimes, UID=1054) (uid=1054, box=INBOX.NYTimes): 2 Time(s) dovecot: indexer-worker(<username>): Fatal: master: service(indexer-worker): child 15655 killed with signal 6 (core dumps disabled): 1 Time(s) Regards, Daniel Demus