Daniel Demus
2016-Apr-10 08:43 UTC
Segfaults in indexer when after Maildir filename S value is updated
Every now and then the S value in the Maildir filname is wrong, and is automaticcaly fixed by Dovecot while updating the index. It seems the indexer retains a handle pointing to the old filename and crashes immediately afterwards. The index is updated the next time the indexer is run, is this is only an annoyance and somethign that fills up the log. dovecot: indexer-worker(demus): Error: Maildir filename has wrong S value, renamed the file from /home/demus/Maildir/.INBOX.NYTimes/cur/1100506665.M177356P6525V0000000000000302I010100CD_0.server.demus.dk,S=12206:2,S to /home/demus/Maildir/.INBOX.NYTimes/cur/1100506665.M177356P6525V0000000000000302I010100CD_0.server.demus.dk,S=12658:2,S: 1 Time(s) dovecot: indexer-worker(demus): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x79988) [0xb6dc7988] -> /usr/lib/dovecot/libdovecot.so.0(i_warning+0) [0xb6dc7aa8] -> /usr/lib/dovecot/libdovecot.so.0(i_panic+0x64) [0xb6d6a948] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x9d27c) [0xb6ed627c] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x1c8) [0xb6ed67c0] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x568a0) [0xb6e8f8a0] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream+0x68) [0xb6e5f3ac] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x56678) [0xb6e8f678] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x48) [0xb6e5efd4] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_precache+0x124) [0xb6ed7ee8] -> /usr/lib/dovecot/lib20_fts_plugin.so(+0xd5d4) [0xb6b6f5d4] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_precache+0x40) [0xb6e5f804] -> dovecot/indexer-worker(+0x1ee8) [0x7f570ee8] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x68) [0xb6ddc5cc] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x120) [0xb6dddd10] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x34) [0xb6ddc684] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x50) [0xb6ddc8b4] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x14) [0xb6d70c84] -> dovecot/indexer-worker(main+0xe8) [0x7f570880] -> /lib/libc.so.6(__libc_start_main+0x114) [0xb6bd2b54]: 1 Time(s) dovecot: indexer-worker(demus): Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x79988) [0xb6e43988] -> /usr/lib/dovecot/libdovecot.so.0(i_warning+0) [0xb6e43aa8] -> /usr/lib/dovecot/libdovecot.so.0(i_panic+0x64) [0xb6de6948] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x9d27c) [0xb6f5227c] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x1c8) [0xb6f527c0] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x568a0) [0xb6f0b8a0] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream+0x68) [0xb6edb3ac] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x56678) [0xb6f0b678] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x48) [0xb6edafd4] -> /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_precache+0x124) [0xb6f53ee8] -> /usr/lib/dovecot/lib20_fts_plugin.so(+0xd5d4) [0xb6beb5d4] -> /usr/lib/dovecot/libdovecot-storage.so.0(mail_precache+0x40) [0xb6edb804] -> dovecot/indexer-worker(+0x1ee8) [0x7f5eeee8] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x68) [0xb6e585cc] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x120) [0xb6e59d10] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x34) [0xb6e58684] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x50) [0xb6e588b4] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x14) [0xb6decc84] -> dovecot/indexer-worker(main+0xe8) [0x7f5ee880] -> /lib/libc.so.6(__libc_start_main+0x114) [0xb6c4eb54]: 1 Time(s) Regards, Daniel Demus
Nerijus Baliunas
2016-Apr-10 19:30 UTC
Segfaults in indexer when after Maildir filename S value is updated
Hello, it is probably the same crash I reported 2 weeks ago - http://article.gmane.org/gmane.mail.imap.dovecot/85223 Regards, Nerijus On Sun, 10 Apr 2016 10:43:25 +0200 Daniel Demus <daniel-dovecot at demus.dk> wrote:> Every now and then the S value in the Maildir filname is wrong, and is > automaticcaly fixed by Dovecot while updating the index. It seems the > indexer retains a handle pointing to the old filename and crashes > immediately afterwards. The index is updated the next time the indexer > is run, is this is only an annoyance and somethign that fills up the > log. > > dovecot: indexer-worker(demus): Error: Maildir filename has wrong S > value, renamed the file from > /home/demus/Maildir/.INBOX.NYTimes/cur/1100506665.M177356P6525V0000000000000302I010100CD_0.server.demus.dk,S=12206:2,S > to > /home/demus/Maildir/.INBOX.NYTimes/cur/1100506665.M177356P6525V0000000000000302I010100CD_0.server.demus.dk,S=12658:2,S: > 1 Time(s) > dovecot: indexer-worker(demus): Error: Raw backtrace: > /usr/lib/dovecot/libdovecot.so.0(+0x79988) [0xb6dc7988] -> > /usr/lib/dovecot/libdovecot.so.0(i_warning+0) [0xb6dc7aa8] -> > /usr/lib/dovecot/libdovecot.so.0(i_panic+0x64) [0xb6d6a948] -> > /usr/lib/dovecot/libdovecot-storage.so.0(+0x9d27c) [0xb6ed627c] -> > /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x1c8) > [0xb6ed67c0] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x568a0) > [0xb6e8f8a0] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream+0x68) > [0xb6e5f3ac] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x56678) > [0xb6e8f678] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x48) > [0xb6e5efd4] -> > /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_precache+0x124) > [0xb6ed7ee8] -> /usr/lib/dovecot/lib20_fts_plugin.so(+0xd5d4) > [0xb6b6f5d4] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_precache+0x40) > [0xb6e5f804] -> dovecot/indexer-worker(+0x1ee8) [0x7f570ee8] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x68) [0xb6ddc5cc] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x120) > [0xb6dddd10] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x34) [0xb6ddc684] > -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x50) [0xb6ddc8b4] -> > /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x14) [0xb6d70c84] > -> dovecot/indexer-worker(main+0xe8) [0x7f570880] -> > /lib/libc.so.6(__libc_start_main+0x114) [0xb6bd2b54]: 1 Time(s) > dovecot: indexer-worker(demus): Error: Raw backtrace: > /usr/lib/dovecot/libdovecot.so.0(+0x79988) [0xb6e43988] -> > /usr/lib/dovecot/libdovecot.so.0(i_warning+0) [0xb6e43aa8] -> > /usr/lib/dovecot/libdovecot.so.0(i_panic+0x64) [0xb6de6948] -> > /usr/lib/dovecot/libdovecot-storage.so.0(+0x9d27c) [0xb6f5227c] -> > /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x1c8) > [0xb6f527c0] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x568a0) > [0xb6f0b8a0] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream+0x68) > [0xb6edb3ac] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x56678) > [0xb6f0b678] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x48) > [0xb6edafd4] -> > /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_precache+0x124) > [0xb6f53ee8] -> /usr/lib/dovecot/lib20_fts_plugin.so(+0xd5d4) > [0xb6beb5d4] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_precache+0x40) > [0xb6edb804] -> dovecot/indexer-worker(+0x1ee8) [0x7f5eeee8] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x68) [0xb6e585cc] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x120) > [0xb6e59d10] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x34) [0xb6e58684] > -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x50) [0xb6e588b4] -> > /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x14) [0xb6decc84] > -> dovecot/indexer-worker(main+0xe8) [0x7f5ee880] -> > /lib/libc.so.6(__libc_start_main+0x114) [0xb6c4eb54]: 1 Time(s) > > > Regards, > Daniel Demus