Alex Ha
2019-Sep-25 15:03 UTC
BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
Hi all! I have two dovecot servers with dsync replication over tcp. Replication works fine except for one user. # doveadm replicator status username priority fast sync full sync success sync failed customer at example.com none 00:00:33 07:03:23 03:22:31 y If i run dsync manually, i get the following error message: dsync-local(customer at example.com): Debug: brain M: -- Mailbox renamed, restart sync -- dsync-local(customer at example.com): Error: BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting dsync-local(customer at example.com): Error: Mailbox INBOX.Foldername sync: mailbox_rename failed: Invalid mailbox name 'Foldername-temp-1': Missing namespace prefix 'INBOX.' For more info see the attached sync_loop.log Thanks for your help, Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20190925/5bda96aa/attachment-0001.html> -------------- next part -------------- # 2.2.36.4 (baf9232c1): /etc/opt/dovecot22/dovecot/dovecot.conf # Pigeonhole version 0.4.24.2 (aaba65b7) # OS: Linux 4.15.0-20-generic x86_64 Ubuntu 18.04 LTS # Hostname: mb1m-m.example.com # NOTE: Send doveconf -n output instead when asking for help. auth_anonymous_username = anonymous auth_cache_negative_ttl = 1 hours auth_cache_size = 0 auth_cache_ttl = 1 hours auth_cache_verify_password_with_worker = no auth_debug = no auth_debug_passwords = no auth_default_realm = default.local auth_failure_delay = 2 secs auth_gssapi_hostname = auth_krb5_keytab = auth_master_user_separator = auth_mechanisms = plain login auth_policy_check_after_auth = yes auth_policy_check_before_auth = yes auth_policy_hash_mech = sha256 auth_policy_hash_nonce = auth_policy_hash_truncate = 12 auth_policy_reject_on_fail = no auth_policy_report_after_auth = yes auth_policy_request_attributes = login=%{requested_username} pwhash=%{hashed_password} remote=%{rip} device_id=%{client_id} protocol=%s auth_policy_server_api_header = auth_policy_server_timeout_msecs = 2000 auth_policy_server_url = auth_proxy_self = auth_realms = auth_socket_path = auth-userdb auth_ssl_require_client_cert = no auth_ssl_username_from_cert = no auth_stats = no auth_use_winbind = no auth_username_chars = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_+@ auth_username_format = %Lu auth_username_translation = auth_verbose = yes auth_verbose_passwords = no auth_winbind_helper_path = /usr/bin/ntlm_auth auth_worker_max_count = 30 base_dir = /run/dovecot22 config_cache_size = 1 M debug_log_path = default_client_limit = 4000 default_idle_kill = 1 mins default_internal_user = dovecot default_login_user = dovenull default_process_limit = 2000 default_vsz_limit = 256 M deliver_log_format = msgid=%m: %$ dict_db_config = director_consistent_hashing = no director_doveadm_port = 0 director_flush_socket = director_mail_servers = director_max_parallel_kicks = 100 director_max_parallel_moves = 100 director_output_buffer_size = 10 M director_ping_idle_timeout = 30 secs director_ping_max_timeout = 1 mins director_servers = director_user_expire = 15 mins director_user_kick_delay = 2 secs director_username_hash = %u disable_plaintext_auth = no dotlock_use_excl = yes doveadm_allowed_commands = doveadm_api_key = doveadm_http_rawlog_dir = doveadm_password = # hidden, use -P to show it doveadm_port = 12346 doveadm_socket_path = doveadm-server doveadm_username = doveadm doveadm_worker_count = 0 dsync_alt_char = _ dsync_commit_msgs_interval = 100 dsync_features = dsync_hashed_headers = Date Message-ID dsync_remote_cmd = ssh -l%{login} %{host} doveadm dsync-server -u%u -U first_valid_gid = 1 first_valid_uid = 500 haproxy_timeout = 3 secs haproxy_trusted_networks = hostname = imap_capability = +SPECIAL-USE imap_client_workarounds = delay-newmail tb-extra-mailbox-sep imap_fetch_failure = disconnect-immediately imap_hibernate_timeout = 0 imap_id_log = imap_id_retain = no imap_id_send = name * imap_idle_notify_interval = 2 mins imap_logout_format = in=%i out=%o imap_max_line_length = 64 k imap_metadata = no imap_urlauth_host = imap_urlauth_logout_format = in=%i out=%o imap_urlauth_port = 143 imapc_cmd_timeout = 5 mins imapc_connection_retry_count = 1 imapc_connection_retry_interval = 1 secs imapc_features = imapc_host = imapc_list_prefix = imapc_master_user = imapc_max_idle_time = 29 mins imapc_max_line_length = 0 imapc_password = imapc_port = 143 imapc_rawlog_dir = imapc_sasl_mechanisms = imapc_ssl = no imapc_ssl_verify = yes imapc_user = import_environment = TZ CORE_OUTOFMEM CORE_ERROR info_log_path = instance_name = dovecot last_valid_gid = 0 last_valid_uid = 0 lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes lda_original_recipient_header = libexec_dir = /opt/dovecot22/libexec/dovecot listen = *, :: lmtp_address_translate = lmtp_hdr_delivery_address = final lmtp_proxy = no lmtp_rcpt_check_quota = no lmtp_save_to_detail_mailbox = no lmtp_user_concurrency_limit = 0 lock_method = fcntl log_path = syslog log_timestamp = "%b %d %H:%M:%S " login_access_sockets = login_greeting = Dovecot ready. login_log_format = %$: %s login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c session=<%{session}> login_plugin_dir = /opt/dovecot22/lib/dovecot/login login_plugins = login_proxy_max_disconnect_delay = 0 login_proxy_notify_path = proxy-notify login_source_ips = login_trusted_networks = 10.11.100.0/24 mail_access_groups = mail_always_cache_fields = mail_attachment_detection_options = mail_attachment_dir = mail_attachment_fs = sis posix mail_attachment_hash = %{sha1} mail_attachment_min_size = 128 k mail_attribute_dict = mail_cache_compress_continued_percentage = 200 mail_cache_compress_delete_percentage = 20 mail_cache_compress_header_continue_count = 4 mail_cache_compress_min_size = 32 k mail_cache_fields = flags mail_cache_min_mail_count = 0 mail_cache_record_max_size = 64 k mail_cache_unaccessed_field_drop = 30 days mail_chroot = mail_debug = no mail_fsync = optimized mail_full_filesystem_access = no mail_gid = mail_home = mail_index_log2_max_age = 2 days mail_index_log_rotate_max_size = 1 M mail_index_log_rotate_min_age = 5 mins mail_index_log_rotate_min_size = 32 k mail_index_rewrite_max_log_bytes = 128 k mail_index_rewrite_min_log_bytes = 8 k mail_location = maildir:~/Maildir mail_log_prefix = "%s(%u): " mail_max_keyword_length = 50 mail_max_lock_timeout = 0 mail_max_userip_connections = 10 mail_never_cache_fields = imap.envelope mail_nfs_index = no mail_nfs_storage = no mail_plugin_dir = /opt/dovecot22/lib/dovecot mail_plugins = " quota notify replication" mail_prefetch_count = 0 mail_privileged_group = mail_save_crlf = no mail_server_admin = mail_server_comment = mail_shared_explicit_inbox = no mail_sort_max_read_count = 0 mail_temp_dir = /tmp mail_temp_scan_interval = 1 weeks mail_uid = mail_vsize_bg_after_count = 0 mailbox_idle_check_interval = 30 secs mailbox_list_index = no mailbox_list_index_include_inbox = no mailbox_list_index_very_dirty_syncs = no maildir_broken_filename_sizes = no maildir_copy_with_hardlinks = yes maildir_empty_new = no maildir_stat_dirs = no maildir_very_dirty_syncs = no managesieve_client_workarounds = managesieve_implementation_string = Dovecot Pigeonhole managesieve_logout_format = bytes=%i/%o managesieve_max_compile_errors = 5 managesieve_max_line_length = 65536 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 master_user_separator = mbox_dirty_syncs = yes mbox_dotlock_change_timeout = 2 mins mbox_lazy_writes = yes mbox_lock_timeout = 5 mins mbox_md5 = apop3d mbox_min_index_size = 0 mbox_read_locks = fcntl mbox_very_dirty_syncs = no mbox_write_locks = dotlock fcntl mdbox_preallocate_space = no mdbox_purge_preserve_alt = no mdbox_rotate_interval = 0 mdbox_rotate_size = 2 M mmap_disable = no namespace { disabled = no hidden = no ignore_on_failure = no inbox = yes list = yes location = mailbox Drafts { auto = subscribe autoexpunge = 0 autoexpunge_max_mails = 0 comment = driver = special_use = \Drafts } mailbox Junk { auto = subscribe autoexpunge = 0 autoexpunge_max_mails = 0 comment = driver = special_use = \Junk } mailbox Sent { auto = subscribe autoexpunge = 0 autoexpunge_max_mails = 0 comment = driver = special_use = \Sent } mailbox Trash { auto = subscribe autoexpunge = 0 autoexpunge_max_mails = 0 comment = driver = special_use = \Trash } order = 0 prefix = INBOX. separator = . subscriptions = yes type = private } passdb { args = /etc/opt/dovecot22/dovecot/dovecot-sql.conf.ext auth_verbose = default default_fields = deny = no driver = sql master = no mechanisms = name = override_fields = pass = no result_failure = continue result_internalfail = continue result_success = return-ok skip = never username_filter = } plugin { mail_replica = tcp:192.168.11.2 quota = maildir:User quota quota_warning = storage=90%% quota-warning 90 %u recipient_delimiter = sieve = file:~/.sieve;active=~/.dovecot.sieve sieve_max_script_size = 1M sieve_quota_max_scripts = 20 } pop3_client_workarounds = outlook-no-nuls oe-ns-eoh pop3_delete_type = default pop3_deleted_flag = pop3_enable_last = no pop3_fast_size_lookups = no pop3_lock_session = no pop3_logout_format = top=%t/%p, retr=%r/%b, del=%d/%m, size=%s pop3_no_flag_updates = no pop3_reuse_xuidl = no pop3_save_uidl = no pop3_uidl_duplicates = allow pop3_uidl_format = %08Xu%08Xv pop3c_features = pop3c_host = pop3c_master_user = pop3c_password = pop3c_port = 110 pop3c_quick_received_date = no pop3c_rawlog_dir = pop3c_ssl = no pop3c_ssl_verify = yes pop3c_user = %u postmaster_address = postmaster@%d protocols = imap pop3 lmtp sieve quota_full_tempfail = no rawlog_dir = recipient_delimiter = rejection_reason = Your message to <%t> was automatically rejected:%n%r rejection_subject = Rejected: %s replication_dsync_parameters = -d -N -l 30 -U replication_full_sync_interval = 1 days replication_max_conns = 10 replicator_host = replicator replicator_port = 0 sendmail_path = /usr/sbin/sendmail service aggregator { chroot = . client_limit = 0 drop_priv_before_exec = no executable = aggregator extra_groups = fifo_listener replication-notify-fifo { group = mode = 0600 user = vmail } group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = unix_listener replication-notify { group = mode = 0600 user = vmail } user = $default_internal_user vsz_limit = 18446744073709551615 B } service anvil { chroot = empty client_limit = 12560 drop_priv_before_exec = no executable = anvil extra_groups = group = idle_kill = 4294967295 secs privileged_group = process_limit = 1 process_min_avail = 1 protocol = service_count = 0 type = anvil unix_listener anvil-auth-penalty { group = mode = 0600 user = } unix_listener anvil { group = mode = 0600 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service auth-worker { chroot = client_limit = 1 drop_priv_before_exec = no executable = auth -w extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 1 type = unix_listener auth-worker { group = mode = 0600 user = $default_internal_user } user = vsz_limit = 18446744073709551615 B } service auth { chroot = client_limit = 12560 drop_priv_before_exec = no executable = auth extra_groups = group = idle_kill = 0 privileged_group = process_limit = 1 process_min_avail = 0 protocol = service_count = 0 type = unix_listener auth-client { group = mode = 0600 user = $default_internal_user } unix_listener auth-login { group = mode = 0600 user = $default_internal_user } unix_listener auth-master { group = mode = 0600 user = } unix_listener auth-userdb { group = vmail mode = 0660 user = vmail } unix_listener login/login { group = mode = 0666 user = } unix_listener token-login/tokenlogin { group = mode = 0666 user = } user = $default_internal_user vsz_limit = 4 G } service config { chroot = client_limit = 0 drop_priv_before_exec = no executable = config extra_groups = group = idle_kill = 4294967295 secs privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = config unix_listener config { group = mode = 0600 user = } user = vsz_limit = 2 G } service dict-async { chroot = client_limit = 0 drop_priv_before_exec = no executable = dict extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = unix_listener dict-async { group = mode = 0600 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service dict { chroot = client_limit = 1 drop_priv_before_exec = no executable = dict extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = unix_listener dict { group = mode = 0600 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service director { chroot = . client_limit = 0 drop_priv_before_exec = no executable = director extra_groups = fifo_listener login/proxy-notify { group = mode = 00 user = } group = idle_kill = 4294967295 secs inet_listener { address = haproxy = no port = 0 reuse_port = no ssl = no } privileged_group = process_limit = 1 process_min_avail = 0 protocol = service_count = 0 type = unix_listener director-admin { group = mode = 0600 user = } unix_listener director-userdb { group = mode = 0600 user = } unix_listener login/director { group = mode = 00 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service dns_client { chroot = client_limit = 1 drop_priv_before_exec = no executable = dns-client extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = unix_listener dns-client { group = mode = 0666 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service doveadm { chroot = client_limit = 1 drop_priv_before_exec = no executable = doveadm-server extra_groups = group = idle_kill = 0 inet_listener { address = haproxy = no port = 12346 reuse_port = no ssl = no } privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 1 type = unix_listener doveadm-server { group = mode = 0600 user = } user = vsz_limit = 18446744073709551615 B } service imap-hibernate { chroot = client_limit = 0 drop_priv_before_exec = no executable = imap-hibernate extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = imap service_count = 0 type = unix_listener imap-hibernate { group = mode = 0600 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service imap-login { chroot = login client_limit = 0 drop_priv_before_exec = no executable = imap-login extra_groups = group = idle_kill = 0 inet_listener imap { address = haproxy = no port = 143 reuse_port = no ssl = no } inet_listener imaps { address = haproxy = no port = 993 reuse_port = no ssl = yes } privileged_group = process_limit = 0 process_min_avail = 0 protocol = imap service_count = 1 type = login user = $default_login_user vsz_limit = 18446744073709551615 B } service imap-urlauth-login { chroot = token-login client_limit = 0 drop_priv_before_exec = no executable = imap-urlauth-login extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = imap service_count = 1 type = login unix_listener imap-urlauth { group = mode = 0666 user = } user = $default_login_user vsz_limit = 18446744073709551615 B } service imap-urlauth-worker { chroot = client_limit = 1 drop_priv_before_exec = no executable = imap-urlauth-worker extra_groups = group = idle_kill = 0 privileged_group = process_limit = 1024 process_min_avail = 0 protocol = imap service_count = 1 type = unix_listener imap-urlauth-worker { group = mode = 0600 user = $default_internal_user } user = vsz_limit = 18446744073709551615 B } service imap-urlauth { chroot = client_limit = 1 drop_priv_before_exec = no executable = imap-urlauth extra_groups = group = idle_kill = 0 privileged_group = process_limit = 1024 process_min_avail = 0 protocol = imap service_count = 1 type = unix_listener token-login/imap-urlauth { group = mode = 0666 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service imap { chroot = client_limit = 1 drop_priv_before_exec = no executable = imap extra_groups = group = idle_kill = 0 privileged_group = process_limit = 5000 process_min_avail = 0 protocol = imap service_count = 1 type = unix_listener imap-master { group = mode = 0600 user = } unix_listener login/imap { group = mode = 0666 user = } user = vsz_limit = 18446744073709551615 B } service indexer-worker { chroot = client_limit = 1 drop_priv_before_exec = no executable = indexer-worker extra_groups = group = idle_kill = 0 privileged_group = process_limit = 10 process_min_avail = 0 protocol = service_count = 0 type = unix_listener indexer-worker { group = mode = 0600 user = $default_internal_user } user = vsz_limit = 18446744073709551615 B } service indexer { chroot = client_limit = 0 drop_priv_before_exec = no executable = indexer extra_groups = group = idle_kill = 0 privileged_group = process_limit = 1 process_min_avail = 0 protocol = service_count = 0 type = unix_listener indexer { group = mode = 0666 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service ipc { chroot = empty client_limit = 0 drop_priv_before_exec = no executable = ipc extra_groups = group = idle_kill = 0 privileged_group = process_limit = 1 process_min_avail = 0 protocol = service_count = 0 type = unix_listener ipc { group = mode = 0600 user = } unix_listener login/ipc-proxy { group = mode = 0600 user = $default_login_user } user = $default_internal_user vsz_limit = 18446744073709551615 B } service lmtp { chroot = client_limit = 1 drop_priv_before_exec = no executable = lmtp extra_groups = group = idle_kill = 0 inet_listener lmtp { address = haproxy = no port = 24 reuse_port = no ssl = no } privileged_group = process_limit = 0 process_min_avail = 0 protocol = lmtp service_count = 0 type = unix_listener lmtp { group = mode = 0666 user = } user = vsz_limit = 18446744073709551615 B } service log { chroot = client_limit = 0 drop_priv_before_exec = no executable = log extra_groups = group = idle_kill = 4294967295 secs privileged_group = process_limit = 1 process_min_avail = 0 protocol = service_count = 0 type = log unix_listener log-errors { group = mode = 0600 user = } user = vsz_limit = 18446744073709551615 B } service managesieve-login { chroot = login client_limit = 0 drop_priv_before_exec = no executable = managesieve-login extra_groups = group = idle_kill = 0 inet_listener sieve { address = haproxy = no port = 4190 reuse_port = no ssl = no } privileged_group = process_limit = 0 process_min_avail = 0 protocol = sieve service_count = 1 type = login user = $default_login_user vsz_limit = 18446744073709551615 B } service managesieve { chroot = client_limit = 1 drop_priv_before_exec = no executable = managesieve extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = sieve service_count = 1 type = unix_listener login/sieve { group = mode = 0666 user = } user = vsz_limit = 18446744073709551615 B } service pop3-login { chroot = login client_limit = 0 drop_priv_before_exec = no executable = pop3-login extra_groups = group = idle_kill = 0 inet_listener pop3 { address = haproxy = no port = 110 reuse_port = no ssl = no } inet_listener pop3s { address = haproxy = no port = 995 reuse_port = no ssl = yes } privileged_group = process_limit = 0 process_min_avail = 0 protocol = pop3 service_count = 1 type = login user = $default_login_user vsz_limit = 18446744073709551615 B } service pop3 { chroot = client_limit = 1 drop_priv_before_exec = no executable = pop3 extra_groups = group = idle_kill = 0 privileged_group = process_limit = 1024 process_min_avail = 0 protocol = pop3 service_count = 1 type = unix_listener login/pop3 { group = mode = 0666 user = } user = vsz_limit = 18446744073709551615 B } service quota-warning { chroot = client_limit = 0 drop_priv_before_exec = no executable = script /usr/local/sbin/quota-warning.py extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = unix_listener quota-warning { group = mode = 0600 user = vmail } user = vmail vsz_limit = 18446744073709551615 B } service replicator { chroot = client_limit = 0 drop_priv_before_exec = no executable = replicator extra_groups = group = idle_kill = 4294967295 secs privileged_group = process_limit = 1 process_min_avail = 1 protocol = service_count = 0 type = unix_listener replicator-doveadm { group = vmail mode = 0660 user = $default_internal_user } unix_listener replicator { group = mode = 0600 user = $default_internal_user } user = vsz_limit = 18446744073709551615 B } service ssl-params { chroot = client_limit = 0 drop_priv_before_exec = no executable = ssl-params extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = startup unix_listener login/ssl-params { group = mode = 0666 user = } unix_listener ssl-params { group = mode = 0666 user = } user = vsz_limit = 18446744073709551615 B } service stats { chroot = empty client_limit = 0 drop_priv_before_exec = no executable = stats extra_groups = fifo_listener stats-mail { group = mode = 0600 user = } fifo_listener stats-user { group = mode = 0600 user = } group = idle_kill = 4294967295 secs privileged_group = process_limit = 1 process_min_avail = 0 protocol = service_count = 0 type = unix_listener stats { group = mode = 0600 user = } user = $default_internal_user vsz_limit = 18446744073709551615 B } service submission-login { chroot = client_limit = 0 drop_priv_before_exec = no executable = extra_groups = group = idle_kill = 0 inet_listener submission { address = haproxy = no port = 0 reuse_port = no ssl = no } privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = user = vsz_limit = 18446744073709551615 B } service submission { chroot = client_limit = 0 drop_priv_before_exec = no executable = extra_groups = group = idle_kill = 0 privileged_group = process_limit = 0 process_min_avail = 0 protocol = service_count = 0 type = user = vsz_limit = 18446744073709551615 B } shutdown_clients = yes ssl = yes ssl_alt_cert = ssl_alt_key = ssl_ca = </etc/ssl/certs/RapidSSL_RSA_CA_2018.pem ssl_cert = </etc/ssl/certs/example.com.crt ssl_cert_username_field = commonName ssl_cipher_list = ALL:!kRSA:!SRP:!kDHd:!DSS:!aNULL:!eNULL:!EXPORT:!DES:!3DES:!MD5:!PSK:!RC4:!ADH:!LOW at STRENGTH ssl_client_ca_dir = ssl_client_ca_file = ssl_client_cert = ssl_client_key = ssl_crypto_device = ssl_dh_parameters_length = 4096 ssl_key = # hidden, use -P to show it ssl_key_password = ssl_options = ssl_parameters_regenerate = 0 ssl_prefer_server_ciphers = yes ssl_protocols = !SSLv3 ssl_require_crl = yes ssl_verify_client_cert = no state_dir = /var/opt/dovecot22/lib stats_carbon_interval = 30 secs stats_carbon_name = stats_carbon_server = stats_command_min_time = 1 mins stats_domain_min_time = 12 hours stats_ip_min_time = 12 hours stats_memory_limit = 16 M stats_session_min_time = 15 mins stats_user_min_time = 1 hours submission_host = syslog_facility = mail userdb { args = /etc/opt/dovecot22/dovecot/dovecot-sql.conf.ext auth_verbose = default default_fields = driver = sql name = override_fields = result_failure = continue result_internalfail = continue result_success = return-ok skip = never } valid_chroot_dirs = verbose_proctitle = yes verbose_ssl = no version_ignore = no protocol lmtp { mail_plugins = " quota notify replication sieve" } protocol lda { mail_plugins = " quota notify replication sieve" } protocol imap { mail_max_userip_connections = 150 mail_plugins = " quota notify replication imap_quota" } protocol sieve { managesieve_implementation_string = Dovecot Pigeonhole } protocol pop3 { mail_max_userip_connections = 100 } -------------- next part -------------- A non-text attachment was scrubbed... Name: sync_loop.log Type: text/x-log Size: 1035283 bytes Desc: not available URL: <https://dovecot.org/pipermail/dovecot/attachments/20190925/5bda96aa/attachment-0001.bin>
Alex Ha
2019-Oct-15 14:29 UTC
BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
Hi all! I'm using Dovecot 2.2.36.4. Maybe someone can help, this bug makes the replication unusable for me. Thanks, Alex On Wed, Sep 25, 2019 at 5:03 PM Alex Ha <alex.handle at gmail.com> wrote:> Hi all! > > I have two dovecot servers with dsync replication over tcp. > Replication works fine except for one user. > > # doveadm replicator status > username > priority fast sync full sync success sync failed > customer at example.com > none 00:00:33 07:03:23 03:22:31 y > > If i run dsync manually, i get the following error message: > > dsync-local(customer at example.com): Debug: brain M: -- Mailbox renamed, > restart sync -- > dsync-local(customer at example.com): Error: BUG: Mailbox renaming algorithm > got into a potentially infinite loop, aborting > dsync-local(customer at example.com): Error: Mailbox INBOX.Foldername sync: > mailbox_rename failed: Invalid mailbox name 'Foldername-temp-1': Missing > namespace prefix 'INBOX.' > > For more info see the attached sync_loop.log > > Thanks for your help, > > Alex >-------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20191015/dbdfb544/attachment.html>
Aki Tuomi
2019-Oct-16 09:46 UTC
BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
You could try fix this by manually renaming the problematic folder. This is a bug though. Aki On 15.10.2019 17.29, Alex Ha via dovecot wrote:> Hi all! > I'm using Dovecot?2.2.36.4. > Maybe someone can help, this bug makes the replication unusable for me. > > Thanks, > Alex > > > On Wed, Sep 25, 2019 at 5:03 PM Alex Ha <alex.handle at gmail.com > <mailto:alex.handle at gmail.com>> wrote: > > Hi all! > > I have two dovecot servers with dsync replication over tcp. > Replication works fine except for one user. > > # doveadm replicator status > username???????????????????????????????????????????????????????????????????????????????????????????????? > priority fast sync full sync success sync failed > customer at example.com > <mailto:customer at example.com>??????????????????????????????????????????????????????????????????????????? > none???? 00:00:33? 07:03:23? 03:22:31???? y > > If i run dsync manually, i get the following error message: > > dsync-local(customer at example.com <mailto:customer at example.com>): > Debug: brain M: -- Mailbox renamed, restart sync -- > dsync-local(customer at example.com <mailto:customer at example.com>): > Error: BUG: Mailbox renaming algorithm got into a potentially > infinite loop, aborting > dsync-local(customer at example.com <mailto:customer at example.com>): > Error: Mailbox INBOX.Foldername sync: mailbox_rename failed: > Invalid mailbox name 'Foldername-temp-1': Missing namespace prefix > 'INBOX.' > > For more info see the attached sync_loop.log > > Thanks for your help, > > Alex >-------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20191016/2e546a1d/attachment.html>
Timo Sirainen
2019-Oct-16 14:55 UTC
BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
On 25 Sep 2019, at 17.03, Alex Ha via dovecot <dovecot at dovecot.org <mailto:dovecot at dovecot.org>> wrote:> > Hi all! > > I have two dovecot servers with dsync replication over tcp. > Replication works fine except for one user. > > # doveadm replicator status > username priority fast sync full sync success sync failed > customer at example.com <mailto:customer at example.com> none 00:00:33 07:03:23 03:22:31 y > > If i run dsync manually, i get the following error message: > > dsync-local(customer at example.com <mailto:customer at example.com>): Debug: brain M: -- Mailbox renamed, restart sync -- > dsync-local(customer at example.com <mailto:customer at example.com>): Error: BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting > dsync-local(customer at example.com <mailto:customer at example.com>): Error: Mailbox INBOX.Foldername sync: mailbox_rename failed: Invalid mailbox name 'Foldername-temp-1': Missing namespace prefix 'INBOX.' >I've never fixed this because I haven't figured out how to reproduce it. If it happens with you all the time, could you try: - Get a copy of both replica sides, e.g. under /tmp/replica1 and /tmp/replica2 - Make sure dsync still crashes with them, e.g. doveadm -o mail=maildir:/tmp/replica1 sync maildir:/tmp/replica2 - Delete all mails and dovecot.index* files (but not dovecot.mailbox.log) - Make sure dsync still crashes - Send me the replicas - they should no longer contain anything sensitive As for fixing, you could see if deleting dovecot.mailbox.log from both replicas happens to fix this. -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20191016/143a32d2/attachment.html>
Alex Ha
2019-Oct-17 11:01 UTC
BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
On Wed, Oct 16, 2019 at 4:55 PM Timo Sirainen <timo at sirainen.com> wrote:> On 25 Sep 2019, at 17.03, Alex Ha via dovecot <dovecot at dovecot.org> wrote: > > > Hi all! > > I have two dovecot servers with dsync replication over tcp. > Replication works fine except for one user. > > # doveadm replicator status > username > priority fast sync full sync success sync failed > customer at example.com > none 00:00:33 07:03:23 03:22:31 y > > If i run dsync manually, i get the following error message: > > dsync-local(customer at example.com): Debug: brain M: -- Mailbox renamed, > restart sync -- > dsync-local(customer at example.com): Error: BUG: Mailbox renaming algorithm > got into a potentially infinite loop, aborting > dsync-local(customer at example.com): Error: Mailbox INBOX.Foldername sync: > mailbox_rename failed: Invalid mailbox name 'Foldername-temp-1': Missing > namespace prefix 'INBOX.' > > I've never fixed this because I haven't figured out how to reproduce it. > If it happens with you all the time, could you try: > > - Get a copy of both replica sides, e.g. under /tmp/replica1 and > /tmp/replica2 > - Make sure dsync still crashes with them, e.g. doveadm -o > mail=maildir:/tmp/replica1 sync maildir:/tmp/replica2 > - Delete all mails and dovecot.index* files (but not dovecot.mailbox.log) > - Make sure dsync still crashes > - Send me the replicas - they should no longer contain anything sensitive > > As for fixing, you could see if deleting dovecot.mailbox.log from both > replicas happens to fix this. > >Unfortunatley deleting dovecot.mailbox.log on both replicas did not fix the problem. Alex -------------- next part -------------- An HTML attachment was scrubbed... URL: <https://dovecot.org/pipermail/dovecot/attachments/20191017/24a85cd4/attachment.html>
Reasonably Related Threads
- BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
- BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
- BUG: Mailbox renaming algorithm got into a potentially infinite loop, aborting
- doveadm mailbox: rc=0 on error
- dsync problem: Error: Can't rename mailbox INBOX