Assertion in istream.c::167 in POP3 mode when maildir content has wrong S value (using 2.2.13)
Rolf Eike Beer
eike at sf-mail.de
Wed Aug 20 14:13:57 UTC 2014
Hi,
the affected machine is running 2.2.13 on Gentoo x86_64. For me it looks like
the old size is still in some struct or whereever even after the file has been
renamed. I see that there are many commits following 2.2.13, is that possibly
already fixed or do I need to dig in the code?
The original problem seems to be that maildrop uses the file size before piping
the mail into spamassassin even if the mail is bigger afterwards. Not relevant
here, but in case anyone wonders how this happens.
Greetings,
Eike
Error: Cached message size smaller than expected (81118 < 81308)
Error: Maildir filename has wrong S value, renamed the file from /var/vpopmail/domains/example.org/user/.maildir/cur/1408452738.16341.mail,S=81118:2, to /var/vpopmail/domains/example.org/user/.maildir/cur/1408452738.16341.mail,S=81308:2,
Error: Corrupted index cache file /var/vpopmail/domains/example.org/user/.maildir/dovecot.index.cache: Broken physical size for mail UID 65
Panic: file istream.c: line 167 (i_stream_read): assertion failed: (old_size <= _stream->pos - _stream->skip)
Error: Raw backtrace: /usr/lib64/dovecot/libdovecot.so.0(+0x6bbef) [0x7f50652a4bef]
-> /usr/lib64/dovecot/libdovecot.so.0(+0x6bc4e) [0x7f50652a4c4e]
-> /usr/lib64/dovecot/libdovecot.so.0(i_fatal+0) [0x7f506525e2be]
-> /usr/lib64/dovecot/libdovecot.so.0(i_stream_read+0x214) [0x7f50652ad904]
-> /usr/lib64/dovecot/libdovecot.so.0(i_stream_read_data+0x3d) [0x7f50652adfed]
-> /usr/lib64/dovecot/libdovecot.so.0(message_get_body_size+0x9d) [0x7f5065299b3d]
-> /usr/lib64/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x200) [0x7f506556f700]
-> /usr/lib64/dovecot/libdovecot-storage.so.0(+0x2dd0f) [0x7f506553cd0f]
-> /usr/lib64/dovecot/libdovecot-storage.so.0(mail_get_stream+0x4b) [0x7f506554915b]
-> /usr/lib64/dovecot/libdovecot-storage.so.0(+0x2dae7) [0x7f506553cae7]
-> dovecot/pop3(client_create+0x56d) [0x40622d]
-> dovecot/pop3() [0x404ea3]
-> dovecot/pop3() [0x40508f]
-> /usr/lib64/dovecot/libdovecot.so.0(+0x28346) [0x7f5065261346]
-> /usr/lib64/dovecot/libdovecot.so.0(+0x28841) [0x7f5065261841]
-> /usr/lib64/dovecot/libdovecot.so.0(io_loop_call_io+0x4e) [0x7f50652b58de]
-> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0xd7) [0x7f50652b68b7]
-> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run+0x9) [0x7f50652b5969]
-> /usr/lib64/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7f50652b59e8]
-> /usr/lib64/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7f50652635a3]
-> dovecot/pop3(main+0x233) [0x404bf3]
-> /lib64/libc.so.6(__libc_start_main+0xf5) [0x7f5064eb6db5]
-> dovecot/pop3() [0x404d49]
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://dovecot.org/pipermail/dovecot/attachments/20140820/cc0cef16/attachment.sig>
More information about the dovecot
mailing list