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 }