2.3.11.3: dsync failure
Alexander Tsoy
alexander at tsoy.me
Sun Aug 16 00:53:24 EEST 2020
Hello!
dovecot 2.3.11.3 fails to backup/sync my mailbox. The mailbox is
currently in mdbox format and is (mostly) lz4-compressed. See the trace
below (I've added newlines to the output):
# doveadm -v backup -u username mdbox:/var/vmail/username_new/mdbox
dsync(username): Panic: file istream.c: line 332 (i_stream_read_memarea): assertion failed: (!stream->blocking)
dsync(username): Error: Raw backtrace:
#0 default_fatal_finish[0x7f1179173b29] ->
#1 fatal_handler_real[0x7f1179173be0] ->
#2 default_fatal_handler[0x7f1179173c3d] ->
#3 i_panic[0x7f1179173e27] ->
#4 i_stream_read_memarea[0x7f1179187b29] ->
#5 read_more[0x7f117919519b] ->
#6 read_from_buffer[0x7f117919535a] ->
#7 i_stream_seekable_read[0x7f117919582e] ->
#8 i_stream_seekable_stat[0x7f1179195cdf] ->
#9 i_stream_stat[0x7f1179188764] ->
#10 i_stream_limit_stat[0x7f1179192380] ->
#11 i_stream_stat[0x7f1179188764] ->
#12 i_stream_default_stat[0x7f117918a0a3] ->
#13 i_stream_default_get_size[0x7f117918a282] ->
#14 i_stream_get_size[0x7f1179188811] ->
#15 mdbox_save_begin[0x7f11792edb85] ->
#16 zlib_mail_save_compress_begin[0x7f117891b2ad] ->
#17 mailbox_save_begin[0x7f11792c8f22] ->
#18 mail_storage_try_copy[0x7f11792b2443] ->
#19 mail_storage_copy[0x7f11792b2604] ->
#20 mdbox_copy[0x7f11792ee96f] ->
#21 mailbox_copy_int[0x7f11792c9611] ->
#22 mailbox_copy[0x7f11792c98c2] ->
#23 dsync_mailbox_save_body[0x5629fd7936a5] ->
#24 dsync_mailbox_save_newmails[0x5629fd793dc3] ->
#25 dsync_mailbox_import_mail[0x5629fd793eb0] ->
#26 dsync_brain_recv_mail[0x5629fd78b982] ->
#27 dsync_brain_sync_mails[0x5629fd78bd79] ->
#28 dsync_brain_run_real[0x5629fd78576c] ->
#29 dsync_brain_run[0x5629fd7859a5] ->
#30 cmd_dsync_run_local[0x5629fd75e8d3] ->
#31 cmd_dsync_run[0x5629fd75f3a8] ->
#32 doveadm_mail_next_user[0x5629fd762f81] ->
#33 doveadm_mail_single_user[0x5629fd763311] ->
#34 doveadm_mail_cmd_exec[0x5629fd763963] ->
#35 doveadm_mail_cmd[0x5629fd763c22] ->
#36 doveadm_mail_try_run[0x5629fd7641e1] ->
#37 main[0x5629fd78051d] ->
#38 __libc_start_main[0x7f1178d56c00] ->
#39 _start[0x5629fd74cb20]
Aborted
Tried different output compression types: gz, xz, zstd. dovecot
2.3.10.1 doesn't seem to have such problem. But since I already have
some messages compressed with zstd, I would like to do migration using
2.3.11.x. Please let me know if I can provide any further information.
I'm not on the list, so please CC me on reply.
$ sudo dovecot -n
# 2.3.11.3 (502c39af9): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.5.11 (d71e0372)
# OS: Linux 5.4.58-gentoo x86_64 Gentoo Base System release 2.6
# Hostname: xxxxxxxx.xx
auth_mechanisms = plain login
default_client_limit = 50
default_process_limit = 10
imap_idle_notify_interval = 29 mins
mail_fsync = always
mail_location = mdbox:~/mdbox
mail_plugins = " zlib"
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext
mdbox_preallocate_space = 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 =
separator = /
subscriptions = yes
}
passdb {
args = scheme=CRYPT username_format=%n /etc/dovecot/users
driver = passwd-file
}
plugin {
sieve = file:~/sieve;active=~/.dovecot.sieve
zlib_save = xz
zlib_save_level = 9
}
protocols = imap lmtp
service auth-worker {
user = $default_internal_user
}
service auth {
unix_listener auth-client {
mode = 0660
user = mail
}
user = $default_internal_user
}
service imap-login {
inet_listener imaps {
port = 0
}
}
ssl = required
ssl_cert = </etc/ssl/dovecot/server.crt
ssl_dh = # hidden, use -P to show it
ssl_key = # hidden, use -P to show it
ssl_prefer_server_ciphers = yes
userdb {
args = username_format=%n /etc/dovecot/users
driver = passwd-file
}
protocol lmtp {
mail_plugins = " zlib sieve"
}
protocol lda {
mail_plugins = " zlib sieve"
}
local_name imap.xxxx.xx {
ssl_cert = </etc/ssl/dovecot/imap.xxxx.xx.crt
ssl_key = # hidden, use -P to show it
}
local_name imap.xxxxxxxx.xx {
ssl_cert = </etc/ssl/dovecot/imap.xxxxxxxx.xx.crt
ssl_key = # hidden, use -P to show it
}
More information about the dovecot
mailing list