Marco Giunta
2018-Feb-02 13:39 UTC
Dovecot 2.3.0, Panic: file mailbox-attribute.c: line 362 (mailbox_attribute_get_stream): assertion failed: (value_r->value != NULL || value_r->value_stream != NULL)
Hi at all, I have a RHEL7 server with Dovecot 2.3.0 (new installation). I've a problem when trying to dsync from a Dovecot 2.2.24 server. If I try to sync any user with a folder with ACL, dsycn crash with panic: Source server: dsync-local(USERNAME): Debug: sieve: file storage: sync: Synchronization active dovecot: dsync-local(USERNAME): Debug: acl vfile: reading file /var/spool/mail/U/USERNAME/dovecot-acl dsync-local(USERNAME): Error: read(DEST_SERVER.example.com) failed: EOF (last sent=mail_change (EOL), last recv=mailbox) Destination server: Feb 2 14:15:23 DEST_SERVER dovecot: dsync-server(USERNAME): Panic: file mailbox-attribute.c: line 362 (mailbox_attribute_get_stream): assertion failed: (value_r->value != NULL || value_r->value_stream != NULL) Feb 2 14:15:23 DEST_SERVER dovecot: dsync-server(USERNAME): Error: Raw backtrace: /usr/lib64/dovecot/libdovecot.so.0(+0xc8cc4) [0x7fa861bc0cc4] -> /usr/lib64/dovecot/libdovecot.so.0(+0xc8d7e) [0x7fa861bc0d7e] -> /usr/lib64/dovecot/libdovecot.so.0(i_fatal+0) [0x7fa861b34190] -> /usr/lib64/dovecot/libdovecot-storage.so.0(+0x55cbc) [0x7fa861ec1cbc] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](dsync_mailbox_import_attribute+0x4d) [0x55b9d4ce215d] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](dsync_brain_sync_mails+0x2ef) [0x55b9d4cddbdf] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](dsync_brain_run+0x2b0) [0x55b9d4cd93e0] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](+0x43a10) [0x55b9d4cd9a10] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](+0x5837f) [0x55b9d4cee37f] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_call_io+0x65) [0x7fa861bd82b5] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x10f) [0x7fa861bd9b5f] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run+0x52) [0x7fa861bd83b2] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7fa861bd85d8] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](+0x28369) [0x55b9d4cbe369] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](+0x29c07) [0x55b9d4cbfc07] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](+0x3f969) [0x55b9d4cd5969] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_call_io+0x65) [0x7fa861bd82b5] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x10f) [0x7fa861bd9b5f] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run+0x52) [0x7fa861bd83b2] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_run+0x38) [0x7fa861bd85d8] -> /usr/lib64/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7fa861b56b23] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](main+0x1b6) [0x55b9d4cb0536] -> /lib64/libc.so.6(__libc_start_main+0xf5) [0x7fa861756c05] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests recv:attributes](+0x1a5f5) [0x55b9d4cb05f5] Feb 2 14:15:23 DEST_SERVER dovecot: dsync-server(USERNAME): Fatal: master: service(doveadm): child 2149 killed with signal 6 (core dumped) Coredump and configuration attached. On source server I run this command: # doveadm -D backup -f -u USERNAME -x 'Archives*' tcp:DEST_SERVER.example.com but same panic if try to sync from destination server: # doveadm -D backup -fR -u USERNAME -x 'Archives*' tcp:SOURCE_SERVER.example.com Same panic also syncing any user with acl and using different acl_shared_dict (file or fs:posix) in dovecot configuration. Thanks, Marco -- Marco Giunta - ITCS SysAdmin Via Bonomea, 265 34136 - Trieste, Italy Tel: +39-040-3787-503 Fax: +39-040-3787-244 -------------- next part -------------- # 2.3.0 (c8b89eb): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.0.1 (d33dca2) # OS: Linux 3.10.0-693.17.1.el7.x86_64 x86_64 CentOS Linux release 7.4.1708 (Core) auth_master_user_separator = * auth_mechanisms = plain login auth_username_format = %Ln auth_verbose = yes auth_verbose_passwords = sha1:6 doveadm_password = # hidden, use -P to show it doveadm_port = 26001 first_valid_uid = 200 hostname = server-02.example.com imap_client_workarounds = delay-newmail imapc_features = rfc822.size fetch-headers imapc_host = posta-01.example.com imapc_master_user = dovesuper imapc_password = # hidden, use -P to show it imapc_user = %u lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes lda_original_recipient_header = Delivered-To listen = * lmtp_hdr_delivery_address = original lmtp_lhlo_dsn = yes lmtp_rcpt_check_quota = yes login_trusted_networks = 10.0.0.172/30 10.0.0.212/30 10.0.0.0/23 mail_fsync = always mail_gid = vmail mail_home = /srv/mail/%1n/%n mail_location = mdbox:~/dbox:ALT=/srv/archives/%1n/%n/dbox:INDEX=/srv/indexes/%1n/%n:VOLATILEDIR=/var/tmp/dovecot-volatile/%1n/%n mail_plugins = acl mailbox_alias quota fts fts_solr mail_prefetch_count = 20 mail_server_admin = mailto:postmaster at example.com mail_shared_explicit_inbox = yes mail_uid = vmail 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 vacation-seconds spamtest spamtestplus editheader imapflags notify mbox_write_locks = fcntl mdbox_rotate_interval = 1 days mdbox_rotate_size = 64 M mmap_disable = yes namespace inbox { inbox = yes location = mailbox Archives { auto = subscribe special_use = \Archive } mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = separator = / } namespace others { list = children location = mdbox:%%h/dbox:ALT=/srv/archives/%%1n/%%n/dbox:INDEX=/srv/indexes/%%1n/%%n:INDEXPVT=/srv/indexes/%1n/%n/shared/%%n:VOLATILEDIR=/var/tmp/dovecot-volatile/%1n/%n/shared/%%n prefix = Other Users/%%n/ separator = / subscriptions = no type = shared } passdb { args = /etc/dovecot/passwd.masterusers default_fields = userdb_master_user=%{login_user} driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-ldap.conf.masterusers.acl default_fields = userdb_acl_defaults_from_inbox=yes userdb_mail=mdbox:/srv/mail/%1{login_user}/%{login_user}/dbox:ALT=/srv/archives/%1{login_user}/%{login_user}/dbox:INDEX=/srv/indexes/%1{login_user}/%{login_user}:INDEXPVT=/srv/indexes/%1n/%n/master/%{login_user}:VOLATILEDIR=/var/tmp/dovecot-volatile/%1n/%n/master/%{login_user} driver = ldap master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-ldap.conf.masterusers.noacl default_fields = userdb_master_user=%{login_user} userdb_mail=mdbox:/srv/mail/%1{login_user}/%{login_user}/dbox:ALT=/srv/archives/%1{login_user}/%{login_user}/dbox:INDEX=/srv/indexes/%1{login_user}/%{login_user}:INDEXPVT=/srv/indexes/%1n/%n/master/%{login_user}:VOLATILEDIR=/var/tmp/dovecot-volatile/%1n/%n/master/%{login_user} driver = ldap master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile:/srv/shared/dovecot/global-acls:cache_secs=300 acl_shared_dict = file:/srv/shared/dovecot/shared-mailboxes.dict fts = solr fts_autoindex = yes fts_autoindex_max_recent_msgs = 20 fts_index_timeout = 60 fts_solr = url=http://localhost:8983/solr/dovecot/ last_login_dict = fs:posix:prefix=~/ last_login_key = lastlogin mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = uid box msgid from mailbox_alias_new = INBOX_spam mailbox_alias_new2 = Junk E-mail mailbox_alias_new3 = Posta indesiderata mailbox_alias_new4 = Deleted Messages mailbox_alias_new5 = Posta eliminata mailbox_alias_new6 = Sent Messages mailbox_alias_new7 = Posta inviata mailbox_alias_old = Junk mailbox_alias_old2 = Junk mailbox_alias_old3 = Junk mailbox_alias_old4 = Trash mailbox_alias_old5 = Trash mailbox_alias_old6 = Sent mailbox_alias_old7 = Sent quota = count:User quota quota2 = count:Archive quota quota2_rule = *:storage=25GB quota2_warning = storage=95%% quota2-warning 95 %n quota2_warning2 = storage=90%% quota2-warning 90 %n quota2_warning3 = storage=80%% quota2-warning 80 %n quota_rule = *:storage=5GB quota_rule2 = Trash:storage=+10%% quota_rule3 = Archives/*:ignore quota_status_nouser = DUNNO quota_status_overquota = 552 5.2.2 Quota exceeded (mailbox for user is full) quota_status_success = DUNNO quota_vsizes = yes quota_warning = storage=100%% quota-warning 100 %n quota_warning2 = storage=95%% quota-warning 95 %n quota_warning3 = storage=90%% quota-warning 90 %n quota_warning4 = storage=80%% quota-warning 80 %n sieve = file:~/sieve;active=~/.dovecot.sieve sieve_before = /etc/dovecot/sieve/spinsa.sieve sieve_default = /etc/dovecot/sieve/dovecot.sieve sieve_editheader_forbid_add = X-SPINSA-Spam-Score sieve_editheader_forbid_delete = X-SPINSA-Spam-Score sieve_extensions = +notify +imapflags +vacation-seconds +spamtest +spamtestplus +editheader sieve_max_redirects = 16 sieve_spamtest_max_value = 10 sieve_spamtest_status_header = X-SPINSA-Spam-Score sieve_spamtest_status_type = score sieve_vacation_min_period = 0s } pop3_client_workarounds = outlook-no-nuls oe-ns-eoh postmaster_address = postmaster at example.com protocols = imap pop3 lmtp sieve rejection_reason = Your message to <%t> was automatically rejected for the following reason - il tuo messaggio a <%t> ? stato rifiutato per il seguente motivo:%n%n%r rejection_subject = Rejected - Messaggio rifiutato: %s service auth { inet_listener { port = 49494 } unix_listener auth-userdb { user = vmail } } service dict { unix_listener dict { mode = 0660 user = vmail } } service doveadm { inet_listener { port = 12345 } } service imap-login { process_min_avail = 4 service_count = 0 } service imap { process_limit = 2048 } service lmtp { inet_listener lmtp { port = 24 } process_limit = 25 process_min_avail = 10 user = vmail } service managesieve-login { inet_listener sieve { port = 4190 } inet_listener sieve_deprecated { port = 2000 } process_min_avail = 4 service_count = 0 vsz_limit = 256 M } service quota-status { client_limit = 1 executable = /usr/libexec/dovecot/quota-status -p postfix inet_listener { port = 25001 } } service quota-warning { executable = script /srv/shared/bin/dovecot-quota-warning.sh unix_listener quota-warning { user = vmail } user = vmail } service quota2-warning { executable = script /srv/shared/bin/dovecot-quota2-warning.sh unix_listener quota2-warning { user = vmail } user = vmail } shutdown_clients = no ssl = required ssl_cert = </etc/pki/dovecot/certs/server-02-crt.pem ssl_client_ca_file = /etc/pki/tls/cert.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it submission_host = smtp.example.com:25 syslog_facility = local2 userdb { driver = prefetch } userdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } verbose_proctitle = yes protocol lmtp { mail_plugins = acl mailbox_alias quota fts fts_solr sieve postmaster_address = postmaster at example.com } protocol quota-status { auth_master_user_separator = } protocol imap { mail_max_userip_connections = 50 mail_plugins = acl mailbox_alias quota fts fts_solr imap_quota imap_acl last_login mail_log notify } protocol sieve { mail_max_userip_connections = 50 } protocol pop3 { mail_max_userip_connections = 50 } -------------- next part -------------- #0 0x00007fa86176a1f7 in raise () from /lib64/libc.so.6 No symbol table info available. #1 0x00007fa86176b8e8 in abort () from /lib64/libc.so.6 No symbol table info available. #2 0x00007fa861bc0c8b in default_fatal_finish (type=<optimized out>, status=status at entry=0) at failures.c:228 backtrace = 0x55b9d50b41e8 "/usr/lib64/dovecot/libdovecot.so.0(+0xc8cc4) [0x7fa861bc0cc4] -> /usr/lib64/dovecot/libdovecot.so.0(+0xc8d7e) [0x7fa861bc0d7e] -> /usr/lib64/dovecot/libdovecot.so.0(i_fatal+0) [0x7fa861b34190] -> /usr"... recursed = 0 #3 0x00007fa861bc0d7e in i_internal_fatal_handler (ctx=0x7ffcb5414e40, format=<optimized out>, args=<optimized out>) at failures.c:718 status = 0 #4 0x00007fa861b34190 in i_panic (format=format at entry=0x7fa861f68608 "file %s: line %d (%s): assertion failed: (%s)") at failures.c:306 ctx = {type = LOG_TYPE_PANIC, exit_status = 0, timestamp = 0x0, timestamp_usecs = 0, log_prefix = 0x0} args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7ffcb5414f30, reg_save_area = 0x7ffcb5414e70}} #5 0x00007fa861ec1cbc in mailbox_attribute_get_stream (box=<optimized out>, type=type at entry=MAIL_ATTRIBUTE_TYPE_SHARED, key=key at entry=0x55b9d510c7f0 "vendor/vendor.dovecot/pvt/acl/user=ANY_USER", value_r=value_r at entry=0x7ffcb5414f90) at mailbox-attribute.c:362 ret = <optimized out> __func__ = "mailbox_attribute_get_stream" #6 0x000055b9d4ce215d in dsync_mailbox_import_lookup_attr (attr_r=<synthetic pointer>, key=0x55b9d510c7f0 "vendor/vendor.dovecot/pvt/acl/user=ANY_USER", type=MAIL_ATTRIBUTE_TYPE_SHARED, importer=0x55b9d515cde8) at dsync-mailbox-import.c:346 lookup_attr = {type = (unknown: 3574646672), key = 0x7fa861bf3276 <p_strdup+54> "[]A\\\303\017\037D", value = 0x55b9d510c510 "p\277\316?U", value_stream = 0x7ffcb5415030, last_change = 94256631957392, modseq = 94256627647196, deleted = 160, exported = 139} attr = <optimized out> attr_change = <optimized out> value = {value = 0x0, value_stream = 0x0, last_change = 1506673342, flags = (unknown: 0)} #7 dsync_mailbox_import_attribute (importer=0x55b9d515cde8, attr=0x55b9d510c7b8) at dsync-mailbox-import.c:565 local_attr = 0x0 result = 0x55b9d4cfa603 "" ret = <optimized out> #8 0x000055b9d4cddbdf in dsync_brain_recv_mailbox_attribute (brain=0x55b9d510eb68) at dsync-brain-mails.c:98 Missing separate debuginfos, use: debuginfo-install cyrus-sasl-lib-2.1.26-21.el7.x86_64 dovecot-pigeonhole-2.3.0-4.sissa.x86_64 expat-2.1.0-10.el7_3.x86_64 glibc-2.17-196.el7_4.2.x86_64 libgcc-4.8.5-16.el7_4.1.x86_64 nspr-4.13.1-1.0.el7_3.x86_64 nss-3.28.4-15.el7_4.x86_64 nss-softokn-freebl-3.28.3-8.el7_4.x86_64 nss-util-3.28.4-3.el7.x86_64 openldap-2.4.44-5.el7.x86_64 zlib-1.2.7-17.el7.x86_64 attr = 0x55b9d510c7b8 input = 0x0 ret = <optimized out> #9 dsync_brain_sync_mails (brain=brain at entry=0x55b9d510eb68) at dsync-brain-mails.c:386 changed = false __func__ = "dsync_brain_sync_mails" #10 0x000055b9d4cd93e0 in dsync_brain_run_real (changed_r=0x7ffcb5415157, brain=0x55b9d510eb68) at dsync-brain.c:671 ret = true orig_state = DSYNC_STATE_SYNC_MAILS orig_box_recv_state = DSYNC_BOX_STATE_ATTRIBUTES orig_box_send_state = DSYNC_BOX_STATE_MAIL_REQUESTS changed = false #11 dsync_brain_run (brain=brain at entry=0x55b9d510eb68, changed_r=changed_r at entry=0x7ffcb5415157) at dsync-brain.c:704 _data_stack_cur_id = 5 #12 0x000055b9d4cd9a10 in dsync_brain_run_io (context=0x55b9d510eb68) at dsync-brain.c:110 changed = false try_pending = true #13 0x000055b9d4cee37f in dsync_ibc_stream_input (ibc=0x55b9d510c510) at dsync-ibc-stream.c:232 ibc = 0x55b9d510c510 #14 0x00007fa861bd82b5 in io_loop_call_io (io=0x55b9d510cf80) at ioloop.c:614 ioloop = 0x55b9d50c5720 t_id = 4 __func__ = "io_loop_call_io" #15 0x00007fa861bd9b5f in io_loop_handler_run_internal (ioloop=ioloop at entry=0x55b9d50c5720) at ioloop-epoll.c:222 ctx = 0x55b9d50c5920 events = <optimized out> list = 0x55b9d510cfe0 io = <optimized out> tv = {tv_sec = 4, tv_usec = 597363} events_count = <optimized out> msecs = <optimized out> ret = 1 i = 0 call = <optimized out> __func__ = "io_loop_handler_run_internal" #16 0x00007fa861bd83b2 in io_loop_handler_run (ioloop=ioloop at entry=0x55b9d50c5720) at ioloop.c:666 __func__ = "io_loop_handler_run" #17 0x00007fa861bd85d8 in io_loop_run (ioloop=0x55b9d50c5720) at ioloop.c:639 __func__ = "io_loop_run" #18 0x000055b9d4cbe369 in cmd_dsync_server_run (_ctx=0x55b9d50c5358, user=0x55b9d50f2628) at doveadm-dsync.c:1187 ctx = 0x55b9d50c5358 cctx = 0x7ffcb5415410 cli = false ibc = 0x55b9d510c510 brain = 0x55b9d510eb68 temp_prefix = 0x55b9d50b3ed8 state_str = 0x0 sync_type = <optimized out> name = <optimized out> process_title_prefix = 0x55b9d50b3eb0 "10.0.11.137 " mail_error = 32680 #19 0x000055b9d4cbfc07 in doveadm_mail_next_user (ctx=ctx at entry=0x55b9d50c5358, error_r=error_r at entry=0x7ffcb5415408) at doveadm-mail.c:432 cctx = <optimized out> input = {parent_event = 0x0, module = 0x0, service = 0x55b9d4cf77e6 "doveadm", username = 0x55b9d50b103a "USERNAME", session_id = 0x0, session_id_prefix = 0x0, session_create_time = 0, local_ip = {family = 2, u = {ip6 = {__in6_u = {__u6_addr8 = "\223z\v\205", '\000' <repeats 11 times>, __u6_addr16 = {31379, 34059, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {2232122003, 0, 0, 0}}}, ip4 = {s_addr = 2232122003}}}, remote_ip = {family = 2, u = {ip6 = {__in6_u = { __u6_addr8 = "\223z\v\211", '\000' <repeats 11 times>, __u6_addr16 = {31379, 35083, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {2299230867, 0, 0, 0}}}, ip4 = { s_addr = 2299230867}}}, local_port = 12345, remote_port = 55314, userdb_fields = 0x0, flags_override_add = (unknown: 0), flags_override_remove = (unknown: 0), no_userdb_lookup = false, debug = false, conn_secured = false, conn_ssl_secured = false} error = 0x0 ip = <optimized out> ret = <optimized out> __func__ = "doveadm_mail_next_user" #20 0x000055b9d4cc06f8 in doveadm_mail_single_user (ctx=ctx at entry=0x55b9d50c5358, error_r=error_r at entry=0x7ffcb5415408) at doveadm-mail.c:462 cctx = <optimized out> __func__ = "doveadm_mail_single_user" #21 0x000055b9d4cd5969 in doveadm_mail_cmd_server_run (conn=<optimized out>, mctx=0x55b9d50c5358) at client-connection-tcp.c:282 error = 0x8 <Address 0x8 out of bounds> ret = <optimized out> #22 doveadm_cmd_handle (cctx=0x7ffcb5415410, argv=0x55b9d50b1070, argc=2, cmd_name=<optimized out>, conn=0x55b9d50d6588) at client-connection-tcp.c:343 mail_cmd = 0x55b9d50c5b58 mctx = 0x55b9d50c5358 cmd_ver2 = <optimized out> prev_ioloop = 0x55b9d50b9c60 cmd = 0x0 #23 client_handle_command (args=<optimized out>, conn=0x55b9d50d6588) at client-connection-tcp.c:412 cctx = {cmd = 0x0, argc = 0, argv = 0x0, username = 0x55b9d50b103a "USERNAME", local_ip = {family = 2, u = {ip6 = {__in6_u = { __u6_addr8 = "\223z\v\205", '\000' <repeats 11 times>, __u6_addr16 = {31379, 34059, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {2232122003, 0, 0, 0}}}, ip4 = { s_addr = 2232122003}}}, remote_ip = {family = 2, u = {ip6 = {__in6_u = {__u6_addr8 = "\223z\v\211", '\000' <repeats 11 times>, __u6_addr16 = {31379, 35083, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {2299230867, 0, 0, 0}}}, ip4 = {s_addr = 2299230867}}}, local_port = 12345, remote_port = 55314, conn_type = DOVEADM_CONNECTION_TYPE_TCP, input = 0x55b9d50befd8, output = 0x55b9d50c16f0} flags = <optimized out> cmd_name = <optimized out> argc = <optimized out> #24 client_connection_tcp_input (conn=0x55b9d50d6588) at client-connection-tcp.c:558 args = <optimized out> _data_stack_cur_id = 3 line = <optimized out> ok = true minor = 0 #25 0x00007fa861bd82b5 in io_loop_call_io (io=0x55b9d50d43d0) at ioloop.c:614 ioloop = 0x55b9d50b9c60 t_id = 2 __func__ = "io_loop_call_io" #26 0x00007fa861bd9b5f in io_loop_handler_run_internal (ioloop=ioloop at entry=0x55b9d50b9c60) at ioloop-epoll.c:222 ctx = 0x55b9d50ba270 events = <optimized out> list = 0x55b9d50d4430 io = <optimized out> tv = {tv_sec = 2147483, tv_usec = 0} events_count = <optimized out> msecs = <optimized out> ret = 1 i = 0 call = <optimized out> __func__ = "io_loop_handler_run_internal" #27 0x00007fa861bd83b2 in io_loop_handler_run (ioloop=ioloop at entry=0x55b9d50b9c60) at ioloop.c:666 __func__ = "io_loop_handler_run" #28 0x00007fa861bd85d8 in io_loop_run (ioloop=0x55b9d50b9c60) at ioloop.c:639 __func__ = "io_loop_run" #29 0x00007fa861b56b23 in master_service_run (service=0x55b9d50b9af0, callback=callback at entry=0x55b9d4cd8450 <client_connected>) at master-service.c:767 No locals. #30 0x000055b9d4cb0536 in main (argc=1, argv=0x55b9d50b9890) at main.c:146 set_roots = {0x55b9d4f1b740 <doveadm_setting_parser_info>, 0x0} input = {roots = 0x7ffcb54155d0, config_path = 0x0, preserve_environment = false, preserve_user = false, preserve_home = false, never_exec = false, use_sysexits = false, parse_full_config = false, module = 0x55b9d4cf77e6 "doveadm", service = 0x55b9d4cf77e6 "doveadm", username = 0x0, local_ip = {family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, remote_ip = {family = 0, u = {ip6 = {__in6_u = {__u6_addr8 = '\000' <repeats 15 times>, __u6_addr16 = {0, 0, 0, 0, 0, 0, 0, 0}, __u6_addr32 = {0, 0, 0, 0}}}, ip4 = {s_addr = 0}}}, local_name = 0x0} output = {specific_services = 0x0, service_uses_local = false, service_uses_remote = false, used_local = false, used_remote = false, permission_denied = false} error = 0x7fa8618af2c0 <intel_02_known> "\006\004 " c = <optimized out>
Marco Giunta
2018-Feb-05 10:04 UTC
Dovecot 2.3.0, Panic: file mailbox-attribute.c: line 362 (mailbox_attribute_get_stream): assertion failed: (value_r->value != NULL || value_r->value_stream != NULL)
Hi, If I downgrade to Dovecot 2.2.33.2, there are no problems to sync users with ACL Thanks, Marco On 2018-02-02 14:39, Marco Giunta wrote:> Hi at all, > I have a RHEL7 server with Dovecot 2.3.0 (new installation). I've a > problem when trying to dsync from a Dovecot 2.2.24 server. > > If I try to sync any user with a folder with ACL, dsycn crash with panic: > > Source server: > > dsync-local(USERNAME): Debug: sieve: file storage: sync: Synchronization > active > dovecot: dsync-local(USERNAME): Debug: acl vfile: reading file > /var/spool/mail/U/USERNAME/dovecot-acl > dsync-local(USERNAME): Error: read(DEST_SERVER.example.com) failed: EOF > (last sent=mail_change (EOL), last recv=mailbox) > > Destination server: > > Feb? 2 14:15:23 DEST_SERVER dovecot: dsync-server(USERNAME): Panic: file > mailbox-attribute.c: line 362 (mailbox_attribute_get_stream): assertion > failed: (value_r->value != NULL || value_r->value_stream != NULL) > Feb? 2 14:15:23 DEST_SERVER dovecot: dsync-server(USERNAME): Error: Raw > backtrace: /usr/lib64/dovecot/libdovecot.so.0(+0xc8cc4) [0x7fa861bc0cc4] > -> /usr/lib64/dovecot/libdovecot.so.0(+0xc8d7e) [0x7fa861bc0d7e] -> > /usr/lib64/dovecot/libdovecot.so.0(i_fatal+0) [0x7fa861b34190] -> > /usr/lib64/dovecot/libdovecot-storage.so.0(+0x55cbc) [0x7fa861ec1cbc] -> > dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](dsync_mailbox_import_attribute+0x4d) [0x55b9d4ce215d] > -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](dsync_brain_sync_mails+0x2ef) [0x55b9d4cddbdf] -> > dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](dsync_brain_run+0x2b0) [0x55b9d4cd93e0] -> > dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](+0x43a10) [0x55b9d4cd9a10] -> dovecot/doveadm-server > [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](+0x5837f) [0x55b9d4cee37f] -> > /usr/lib64/dovecot/libdovecot.so.0(io_loop_call_io+0x65) > [0x7fa861bd82b5] -> > /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x10f) > [0x7fa861bd9b5f] -> > /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run+0x52) > [0x7fa861bd83b2] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_run+0x38) > [0x7fa861bd85d8] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX > send:mail_requests recv:attributes](+0x28369) [0x55b9d4cbe369] -> > dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](+0x29c07) [0x55b9d4cbfc07] -> dovecot/doveadm-server > [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](+0x3f969) [0x55b9d4cd5969] -> > /usr/lib64/dovecot/libdovecot.so.0(io_loop_call_io+0x65) > [0x7fa861bd82b5] -> > /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x10f) > [0x7fa861bd9b5f] -> > /usr/lib64/dovecot/libdovecot.so.0(io_loop_handler_run+0x52) > [0x7fa861bd83b2] -> /usr/lib64/dovecot/libdovecot.so.0(io_loop_run+0x38) > [0x7fa861bd85d8] -> > /usr/lib64/dovecot/libdovecot.so.0(master_service_run+0x13) > [0x7fa861b56b23] -> dovecot/doveadm-server [10.0.11.137 USERNAME INBOX > send:mail_requests recv:attributes](main+0x1b6) [0x55b9d4cb0536] -> > /lib64/libc.so.6(__libc_start_main+0xf5) [0x7fa861756c05] -> > dovecot/doveadm-server [10.0.11.137 USERNAME INBOX send:mail_requests > recv:attributes](+0x1a5f5) [0x55b9d4cb05f5] > Feb? 2 14:15:23 DEST_SERVER dovecot: dsync-server(USERNAME): Fatal: > master: service(doveadm): child 2149 killed with signal 6 (core dumped) > > > Coredump and configuration attached. > > > On source server I run this command: > > # doveadm -D backup -f -u USERNAME -x 'Archives*' > tcp:DEST_SERVER.example.com > > but same panic if try to sync from destination server: > > # doveadm -D backup -fR -u USERNAME -x 'Archives*' > tcp:SOURCE_SERVER.example.com > > > Same panic also syncing any user with acl and using different > acl_shared_dict (file or fs:posix) in dovecot configuration. > > Thanks, > ? Marco > >-- Marco Giunta - ITCS SysAdmin Via Bonomea, 265 34136 - Trieste, Italy Tel: +39-040-3787-503 Fax: +39-040-3787-244