Erik de Waard
2019-Oct-18 13:36 UTC
Coredump v2.3.8 specific msg fetch, corrupted record in index cache, Broken physical size
Hi, i'm getting a coredump on a specific msg, i've attached the gdb.
file on disk i noticed W=<vsize> is missing.
1571209735.M744550P1608.rwvirtual65,S=15886:2,S
Best regards,
mail.log
Oct 18 14:41:39 rwvirtual10 dovecot:
imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>:
Error: Mailbox INBOX.Debug: UID=1041: read(/data/mail/
company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S)
failed: Cached message size smaller than expected (15886 < 16367,
box=INBOX.Debug, UID=1041) (read reason=mail stream)
Oct 18 14:41:39 rwvirtual10 dovecot:
imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>:
Error: Corrupted record in index cache file /data/indexes/
johndoe at company.nl/.Debug/dovecot.index.cache: UID 1041: Broken physical
size in mailbox INBOX.Debug: read(/data/mail/
company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S)
failed: Cached message size smaller than expected (15886 < 16367,
box=INBOX.Debug, UID=1041)
Oct 18 14:41:39 rwvirtual10 dovecot:
imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>:
Panic: file istream.c: line 315 (i_stream_read_memarea): assertion failed:
(old_size <= _stream->pos - _stream->skip)
Oct 18 14:41:39 rwvirtual10 dovecot:
imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>:
Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0xe5c31)
[0x7f5237d8cc31] -> /usr/lib/dovecot/libdovecot.so.0(+0xe5cd1)
[0x7f5237d8ccd1] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0)
[0x7f5237ce4103] ->
/usr/lib/dovecot/libdovecot.so.0(i_stream_read_memarea+0x300)
[0x7f5237d9abd0] -> /usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x35)
[0x7f5237d9aca5] ->
/usr/lib/dovecot/libdovecot.so.0(i_stream_read_data+0x3d) [0x7f5237d9b64d]
-> /usr/lib/dovecot/libdovecot.so.0(+0xc4da1) [0x7f5237d6bda1] ->
/usr/lib/dovecot/libdovecot.so.0(+0xc5d4b) [0x7f5237d6cd4b] ->
/usr/lib/dovecot/libdovecot.so.0(message_parser_parse_next_block+0x65)
[0x7f5237d6da05] ->
/usr/lib/dovecot/libdovecot.so.0(message_parser_parse_body+0x31)
[0x7f5237d6dcf1] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xc19d4)
[0x7f52381099d4] ->
/usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x3aa)
[0x7f5238109e9a] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x74b25)
[0x7f52380bcb25] ->
/usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream_because+0x70)
[0x7f52380833a0] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x748d7)
[0x7f52380bc8d7] ->
/usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x44)
[0x7f5238082ea4] -> dovecot/imap [johndoe at company.nl 10.0.10.36
FETCH](+0x21523) [0x561f6425f523] -> dovecot/imap [johndoe at company.nl
10.0.10.36 FETCH](+0x1f759) [0x561f6425d759] -> dovecot/imap [
johndoe at company.nl 10.0.10.36 FETCH](imap_fetch_more+0x39) [0x561f6425eb99]
-> dovecot/imap [johndoe at company.nl 10.0.10.36 FETCH](cmd_fetch+0x342)
[0x561f6424ef32] -> dovecot/imap [johndoe at company.nl 10.0.10.36
FETCH](command_exec+0x7c) [0x561f6425bb0c] -> dovecot/imap [
johndoe at company.nl 10.0.10.36 FETCH](+0x1bb72) [0x561f64259b72] ->
dovecot/imap [johndoe at company.nl 10.0.10.36 FETCH](+0x1bc04)
[0x561f64259c04] -> dovecot/imap [johndoe at company.nl 10.0.10.36
FETCH](client_handle_input+0x1a5) [0x561f6425a025] -> dovecot/imap [
johndoe at company.nl 10.0.10.36 FETCH](client_input+0x82) [0x561f6425a6c2]
->
/usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x75) [0x7f5237da6845] ->
/usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x11b)
[0x7f5237da825b] ->
/usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x59) [0x7f5237da6959]
Oct 18 14:41:39 rwvirtual10 dovecot:
imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>:
Fatal: master: service(imap): child 15868 killed with signal 6 (core dumps
disabled - https://dovecot.org/bugreport.html#coredumps)
-------------- next part --------------
An HTML attachment was scrubbed...
URL:
<https://dovecot.org/pipermail/dovecot/attachments/20191018/190bd85a/attachment-0001.html>
-------------- next part --------------
# 2.3.8 (9df20d2db): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.8 (b7b03ba2)
# OS: Linux 4.9.0-9-amd64 x86_64 Debian 9.11
# Hostname: rwvirtual10.colo.company.nl
auth_cache_negative_ttl = 0
auth_cache_size = 10 M
auth_cache_ttl = 1 days
auth_username_chars =
"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@#"
default_client_limit = 1500
default_vsz_limit = 1 G
disable_plaintext_auth = no
info_log_path = /var/log/mail.debug
listen = *
log_timestamp = "%Y-%m-%d %H:%M:%S "
login_trusted_networks = 10.0.10.0/24
mail_debug = yes
mail_fsync = never
mail_max_userip_connections = 100
mail_prefetch_count = 10
mail_privileged_group = mail
mmap_disable = yes
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 = INBOX.
separator = .
type = private
}
passdb {
args = username_format=%{rip} /etc/dovecot/passdb
default_fields = noauthenticate=y
driver = passwd-file
}
passdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
plugin {
sieve_execute_bin_dir = /etc/dovecot/sieve-executables
sieve_global_extensions = +vnd.dovecot.execute
sieve_plugins = sieve_extprograms
}
protocols = imap lmtp
service anvil {
unix_listener anvil-auth-penalty {
mode = 0600
}
}
service auth {
user = root
}
service imap-login {
client_limit = 6000
process_limit = 4
process_min_avail = 4
service_count = 0
vsz_limit = 600 M
}
service imap {
client_limit = 1
process_limit = 1024
service_count = 50
}
service lmtp {
inet_listener lmtp {
port = 24
}
}
ssl = no
ssl_cert = </etc/dovecot/dovecot.crt
ssl_key = # hidden, use -P to show it
userdb {
driver = prefetch
}
userdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
verbose_proctitle = yes
protocol lmtp {
mail_fsync = optimized
mail_plugins = " sieve"
plugin {
sieve = ~/filters.sieve
sieve_after = /etc/dovecot/sieve/after.sieve
sieve_before = /etc/dovecot/sieve/before.sieve
}
userdb {
args = /etc/dovecot/dovecot-sql-lmtp.conf
driver = sql
name =
}
}
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gdb
Type: application/octet-stream
Size: 14879 bytes
Desc: not available
URL:
<https://dovecot.org/pipermail/dovecot/attachments/20191018/190bd85a/attachment-0001.obj>
Erik de Waard
2019-Oct-19 08:29 UTC
Coredump v2.3.8 specific msg fetch, corrupted record in index cache, Broken physical size
Hi, maildir_broken_filename_sizes = yes Does prevent the crash coredump On Fri, Oct 18, 2019 at 3:36 PM Erik de Waard <erikdewaard at gmail.com> wrote:> Hi, i'm getting a coredump on a specific msg, i've attached the gdb. > > file on disk i noticed W=<vsize> is missing. > 1571209735.M744550P1608.rwvirtual65,S=15886:2,S > > Best regards, > > > mail.log > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>: > Error: Mailbox INBOX.Debug: UID=1041: read(/data/mail/ > company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S) > failed: Cached message size smaller than expected (15886 < 16367, > box=INBOX.Debug, UID=1041) (read reason=mail stream) > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>: > Error: Corrupted record in index cache file /data/indexes/ > johndoe at company.nl/.Debug/dovecot.index.cache: UID 1041: Broken physical > size in mailbox INBOX.Debug: read(/data/mail/ > company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S) > failed: Cached message size smaller than expected (15886 < 16367, > box=INBOX.Debug, UID=1041) > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>: > Panic: file istream.c: line 315 (i_stream_read_memarea): assertion failed: > (old_size <= _stream->pos - _stream->skip) > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>: > Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0xe5c31) > [0x7f5237d8cc31] -> /usr/lib/dovecot/libdovecot.so.0(+0xe5cd1) > [0x7f5237d8ccd1] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) > [0x7f5237ce4103] -> > /usr/lib/dovecot/libdovecot.so.0(i_stream_read_memarea+0x300) > [0x7f5237d9abd0] -> /usr/lib/dovecot/libdovecot.so.0(i_stream_read+0x35) > [0x7f5237d9aca5] -> > /usr/lib/dovecot/libdovecot.so.0(i_stream_read_data+0x3d) [0x7f5237d9b64d] > -> /usr/lib/dovecot/libdovecot.so.0(+0xc4da1) [0x7f5237d6bda1] -> > /usr/lib/dovecot/libdovecot.so.0(+0xc5d4b) [0x7f5237d6cd4b] -> > /usr/lib/dovecot/libdovecot.so.0(message_parser_parse_next_block+0x65) > [0x7f5237d6da05] -> > /usr/lib/dovecot/libdovecot.so.0(message_parser_parse_body+0x31) > [0x7f5237d6dcf1] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0xc19d4) > [0x7f52381099d4] -> > /usr/lib/dovecot/libdovecot-storage.so.0(index_mail_init_stream+0x3aa) > [0x7f5238109e9a] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x74b25) > [0x7f52380bcb25] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_stream_because+0x70) > [0x7f52380833a0] -> /usr/lib/dovecot/libdovecot-storage.so.0(+0x748d7) > [0x7f52380bc8d7] -> > /usr/lib/dovecot/libdovecot-storage.so.0(mail_get_virtual_size+0x44) > [0x7f5238082ea4] -> dovecot/imap [johndoe at company.nl 10.0.10.36 > FETCH](+0x21523) [0x561f6425f523] -> dovecot/imap [johndoe at company.nl > 10.0.10.36 FETCH](+0x1f759) [0x561f6425d759] -> dovecot/imap [ > johndoe at company.nl 10.0.10.36 FETCH](imap_fetch_more+0x39) > [0x561f6425eb99] -> dovecot/imap [johndoe at company.nl 10.0.10.36 > FETCH](cmd_fetch+0x342) [0x561f6424ef32] -> dovecot/imap [ > johndoe at company.nl 10.0.10.36 FETCH](command_exec+0x7c) [0x561f6425bb0c] > -> dovecot/imap [johndoe at company.nl 10.0.10.36 FETCH](+0x1bb72) > [0x561f64259b72] -> dovecot/imap [johndoe at company.nl 10.0.10.36 > FETCH](+0x1bc04) [0x561f64259c04] -> dovecot/imap [johndoe at company.nl > 10.0.10.36 FETCH](client_handle_input+0x1a5) [0x561f6425a025] -> > dovecot/imap [johndoe at company.nl 10.0.10.36 FETCH](client_input+0x82) > [0x561f6425a6c2] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x75) > [0x7f5237da6845] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x11b) > [0x7f5237da825b] -> > /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x59) [0x7f5237da6959] > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl)<15868><qjTFpy6VPsMKAAok>: > Fatal: master: service(imap): child 15868 killed with signal 6 (core dumps > disabled - https://dovecot.org/bugreport.html#coredumps) > > >-------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20191019/624f5806/attachment.html>
Timo Sirainen
2019-Oct-20 09:25 UTC
Coredump v2.3.8 specific msg fetch, corrupted record in index cache, Broken physical size
On 18 Oct 2019, at 15.36, Erik de Waard via dovecot <dovecot at dovecot.org> wrote:> > Hi, i'm getting a coredump on a specific msg, i've attached the gdb. > > file on disk i noticed W=<vsize> is missing. > 1571209735.M744550P1608.rwvirtual65,S=15886:2,S..> mail.log > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl <mailto:johndoe at company.nl>)<15868><qjTFpy6VPsMKAAok>: Error: Mailbox INBOX.Debug: UID=1041: read(/data/mail/company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S <http://company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S>) failed: Cached message size smaller than expected (15886 < 16367, box=INBOX.Debug, UID=1041) (read reason=mail stream) > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl <mailto:johndoe at company.nl>)<15868><qjTFpy6VPsMKAAok>: Error: Corrupted record in index cache file /data/indexes/johndoe at company.nl/.Debug/dovecot.index.cache <http://johndoe at company.nl/.Debug/dovecot.index.cache>: UID 1041: Broken physical size in mailbox INBOX.Debug: read(/data/mail/company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S <http://company.nl/users/johndoe/Maildir/.Debug/cur/1571209735.M744550P1608.rwvirtual65,S=15886:2,S>) failed: Cached message size smaller than expected (15886 < 16367, box=INBOX.Debug, UID=1041) > Oct 18 14:41:39 rwvirtual10 dovecot: imap(johndoe at company.nl <mailto:johndoe at company.nl>)<15868><qjTFpy6VPsMKAAok>: Panic: file istream.c: line 315 (i_stream_read_memarea): assertion failed: (old_size <= _stream->pos - _stream->skip)The missing W shouldn't matter, but the S size is wrong. So the error is expected, but the panic isn't. I tried to reproduce this, but I couldn't get the panic to happen. Do you still have the file? Could you send it to me? You can also put it through https://dovecot.org/tools/maildir-obfuscate.pl which should remove all sensitive content but hopefully still contain enough to reproduce the bug. -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20191020/9ebca031/attachment.html>
Reasonably Related Threads
- help with samba4 settings
- domain users "primary group" does not take effect in UNIX attributes (NIS)
- Domain Admins default ownership is BUILTIN\Administrators
- Freebsd 3.5->4 New Server Profile Paths Lost
- How to Delete an user and Purge attachements with a common directory mail_attachment_dir with SIS for all users.