Re: dsync: expunge from pop3 does not replicate
Here is it # 2.3.2.1 (0719df592): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.2 (5d6d7c92) # OS: Linux 4.4.0-112-generic x86_64 Ubuntu 16.04.4 LTS # Hostname: mda22 auth_cache_negative_ttl = 2 secs auth_cache_size = 16 M auth_cache_ttl = 1 mins auth_master_user_separator = / auth_mechanisms = plain login auth_verbose = yes default_client_limit = 2000 default_process_limit = 2000 default_vsz_limit = 16894 M deliver_log_format = %m %f/%e %s -> %e %p: %$ dict { sqlquota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext sqlsieve = mysql:/etc/dovecot/dovecot-dict-sqlsieve.conf.ext } disable_plaintext_auth = no doveadm_password = # hidden, use -P to show it imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub-flags lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes lmtp_rcpt_check_quota = yes login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c login_trusted_networks = 10.3.13.0/24 10.3.14.0/24 mail_gid = nogroup mail_home = /datastore/maildir/%d/%n mail_location = maildir:~/ mail_plugins = " quota mail_log notify old_stats replication" mail_uid = nobody maildir_copy_with_hardlinks = no 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 namespace inbox { inbox = yes location = mailbox Archive { auto = subscribe special_use = \Archive } mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Inbox { auto = subscribe } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = subscriptions = yes type = private } passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = box msgid from subject size mail_replica = tcp:10.3.13.51:54321 old_stats_command_min_time = 1 mins old_stats_domain_min_time = 12 hours old_stats_ip_min_time = 12 hours old_stats_memory_limit = 16 M old_stats_refresh = 30 secs old_stats_session_min_time = 15 mins old_stats_track_cmds = yes old_stats_user_min_time = 1 hours quota = dict:User quota::proxy::sqlquota quota_exceeded_message = Storage quota for this account has been exceeded, please try again later. quota_grace = 50%% quota_warning = storage=95%% quota-warning 95 %u %d size quota_warning2 = messages=95%% quota-warning 95 %u %d count recipient_delimiter = + sieve = file:/datastore/sieve/%d/%n/;active=/datastore/sieve/%d/%n/active.sieve sieve_before = dict:proxy::sqlsieve;name=before_inbox_forward;bindir=/datastore/sieve/%d/%n/ sieve_max_actions = 32 sieve_max_redirects = 50 sieve_max_script_size = 1M sieve_redirect_envelope_from = recipient sieve_user_log = /datastore/sieve/%d/%n/.sieve.log } pop3_client_workarounds = outlook-no-nuls oe-ns-eoh pop3_reuse_xuidl = yes pop3_save_uidl = yes protocols = " imap lmtp sieve pop3 sieve" replication_max_conns = 100 service aggregator { fifo_listener replication-notify-fifo { mode = 0666 user = nobody } unix_listener replication-notify { mode = 0666 user = nobody } } service auth { inet_listener { port = 12345 ssl = yes } } service dict { unix_listener dict { group = nogroup user = nobody } } service doveadm { inet_listener { port = 54321 ssl = no } } service imap-login { process_limit = 32 process_min_avail = 8 service_count = 0 } service imap { process_limit = 16384 } service lmtp { executable = lmtp -L inet_listener lmtp { port = 24 ssl = no } process_min_avail = 5 } service managesieve-login { inet_listener sieve { port = 4190 } process_min_avail = 2 service_count = 1 vsz_limit = 196 M } service managesieve { process_limit = 2048 } service old-stats { fifo_listener old-stats-mail { mode = 0666 user = nobody } inet_listener { address = 127.0.0.1 port = 24242 } } service pop3 { process_limit = 2048 } service quota-warning { executable = script /etc/dovecot/quota-warning.sh unix_listener quota-warning { mode = 0666 user = nobody } user = nobody } service replicator { process_min_avail = 1 unix_listener replicator-doveadm { mode = 0666 user = nobody } } service stats { idle_kill = 5 mins unix_listener stats-reader { group = nogroup mode = 0666 user = nobody } unix_listener stats-writer { group = nogroup mode = 0666 user = nobody } } ssl_cert = </etc/dovecot/private/mda.vshosting.cloud/fullchain.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it ssl_prefer_server_ciphers = yes submission_host = 10.3.14.30:587 userdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } protocol lmtp { mail_plugins = " quota mail_log notify old_stats replication sieve" } protocol lda { mail_plugins = " quota mail_log notify old_stats replication sieve" } protocol imap { mail_max_userip_connections = 50 mail_plugins = " quota mail_log notify old_stats replication imap_quota imap_old_stats" } protocol sieve { managesieve_max_line_length = 65536 } protocol pop3 { mail_max_userip_connections = 50 } -- Jakub Lánský IT administration/support technician jakub@lansky.biz GSM: +420776172737 Jabber/GTalk: lenny@blesmrt.net -------- Původní zpráva -------- Od: Aki Tuomi <aki.tuomi@dovecot.fi> Komu: Jakub Lánský <jakub@lansky.biz>, dovecot@dovecot.org Předmět: Re: dsync: expunge from pop3 does not replicate Datum: Wed, 25 Jul 2018 14:04:14 +0300 Please provide doveconf -n --- Aki Tuomi Dovecot oy -------- Original message -------- From: Jakub Lánský <jakub@lansky.biz> Date: 25/07/2018 11:37 (GMT+02:00) To: dovecot@dovecot.org Subject: dsync: expunge from pop3 does not replicate Hi, I'm using dovecot 2.3.2.1 on Xenial from upstream packages on two Dovecot servers connected with dsync over TCP. E-mails which are deleted via POP3 protocol are not correctly deleted on second server via dsync. Jul 25 09:29:19 mda11 dovecot: pop3(jakub@***)<7587><8xaJ1c1x9uEqAB7QADwAAAAAAAAAAL7v>: expunge: box=INBOX, msgid=<6a75db5d84ff257216a4340d7c0405b2@blesmrt.eu>, size=3238, from=lenny@***, subject=dovecot pop3 test Nothing happened on the second machine then. After running # doveadm replicator replicate "jakub@***", e-mail got expunged immediately on second server. Jul 25 09:50:56 mda22 dovecot: dsync- local(jakub@***)<Xt6oFy8nWFsjIwAA0YRh9g>: expunge: box=INBOX, msgid=< 6a75db5d84ff257216a4340d7c0405b2@blesmrt.eu>, size=3238, from=lenny@***, subject=dovecot pop3 test Any ideas what to do or test? Thank you
Can you try enabling mail_debug=yes, perform a pop3 session and provide logs?
Aki
On 25.07.2018 15:53, Jakub Lánský wrote:
Here is it
# 2.3.2.1 (0719df592): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.2 (5d6d7c92) # OS: Linux 4.4.0-112-generic x86_64 Ubuntu 16.04.4 LTS # Hostname: mda22 auth_cache_negative_ttl = 2 secs auth_cache_size = 16 M auth_cache_ttl = 1 mins auth_master_user_separator = / auth_mechanisms = plain login auth_verbose = yes default_client_limit = 2000 default_process_limit = 2000 default_vsz_limit = 16894 M deliver_log_format = %m %f/%e %s -> %e %p: %$ dict { sqlquota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext sqlsieve = mysql:/etc/dovecot/dovecot-dict-sqlsieve.conf.ext } disable_plaintext_auth = no doveadm_password = # hidden, use -P to show it imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub-flags lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes lmtp_rcpt_check_quota = yes login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c login_trusted_networks = 10.3.13.0/24 10.3.14.0/24 mail_gid = nogroup mail_home = /datastore/maildir/%d/%n mail_location = maildir:~/ mail_plugins = " quota mail_log notify old_stats replication" mail_uid = nobody maildir_copy_with_hardlinks = no 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 namespace inbox { inbox = yes location = mailbox Archive { auto = subscribe special_use = \Archive } mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Inbox { auto = subscribe } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = subscriptions = yes type = private } passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = box msgid from subject size mail_replica = tcp:10.3.13.51:54321 old_stats_command_min_time = 1 mins old_stats_domain_min_time = 12 hours old_stats_ip_min_time = 12 hours old_stats_memory_limit = 16 M old_stats_refresh = 30 secs old_stats_session_min_time = 15 mins old_stats_track_cmds = yes old_stats_user_min_time = 1 hours quota = dict:User quota::proxy::sqlquota quota_exceeded_message = Storage quota for this account has been exceeded, please try again later. quota_grace = 50%% quota_warning = storage=95%% quota-warning 95 %u %d size quota_warning2 = messages=95%% quota-warning 95 %u %d count recipient_delimiter = + sieve = file:/datastore/sieve/%d/%n/;active=/datastore/sieve/%d/%n/active.sieve sieve_before = dict:proxy::sqlsieve;name=before_inbox_forward;bindir=/datastore/sieve/%d/%n/ sieve_max_actions = 32 sieve_max_redirects = 50 sieve_max_script_size = 1M sieve_redirect_envelope_from = recipient sieve_user_log = /datastore/sieve/%d/%n/.sieve.log } pop3_client_workarounds = outlook-no-nuls oe-ns-eoh pop3_reuse_xuidl = yes pop3_save_uidl = yes protocols = " imap lmtp sieve pop3 sieve" replication_max_conns = 100 service aggregator { fifo_listener replication-notify-fifo { mode = 0666 user = nobody } unix_listener replication-notify { mode = 0666 user = nobody } } service auth { inet_listener { port = 12345 ssl = yes } } service dict { unix_listener dict { group = nogroup user = nobody } } service doveadm { inet_listener { port = 54321 ssl = no } } service imap-login { process_limit = 32 process_min_avail = 8 service_count = 0 } service imap { process_limit = 16384 } service lmtp { executable = lmtp -L inet_listener lmtp { port = 24 ssl = no } process_min_avail = 5 } service managesieve-login { inet_listener sieve { port = 4190 } process_min_avail = 2 service_count = 1 vsz_limit = 196 M } service managesieve { process_limit = 2048 } service old-stats { fifo_listener old-stats-mail { mode = 0666 user = nobody } inet_listener { address = 127.0.0.1 port = 24242 } } service pop3 { process_limit = 2048 } service quota-warning { executable = script /etc/dovecot/quota-warning.sh unix_listener quota-warning { mode = 0666 user = nobody } user = nobody } service replicator { process_min_avail = 1 unix_listener replicator-doveadm { mode = 0666 user = nobody } } service stats { idle_kill = 5 mins unix_listener stats-reader { group = nogroup mode = 0666 user = nobody } unix_listener stats-writer { group = nogroup mode = 0666 user = nobody } } ssl_cert = </etc/dovecot/private/mda.vshosting.cloud/fullchain.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it ssl_prefer_server_ciphers = yes submission_host = 10.3.14.30:587 userdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } protocol lmtp { mail_plugins = " quota mail_log notify old_stats replication sieve" } protocol lda { mail_plugins = " quota mail_log notify old_stats replication sieve" } protocol imap { mail_max_userip_connections = 50 mail_plugins = " quota mail_log notify old_stats replication imap_quota imap_old_stats" } protocol sieve { managesieve_max_line_length = 65536 } protocol pop3 { mail_max_userip_connections = 50 }
Yes, it should incoming mail to inbox, where replication was requested (and mail was replicated succesfully, of course). After expunge via POP3, replication was not called at all. (It doesn't happens on IMAP connections, if I didn't mentioned in previous message) Log: Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: Debug: INBOX: Mailbox opened because: lib-lda delivery Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: Debug: Mailbox <lmtp DATA local>: Opened mail UID=1 because: copying Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: Debug: replication: Replication requested by 'mail_deliver_save', priority=2 Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: <20180726105407.7b9cbf8d@muffycake> lenny@***/lenny@*** pop3 test mail #2 -> lenny@*** 2651: saved mail to INBOX Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***)<2172><>: Debug: auth USER input: jakub@*** uid=65534 quota_rule=*:bytes=3221225472 quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***)<2172><>: Debug: Added userdb setting: plugin/quota_rule=*:bytes=3221225472 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***)<2172><>: Debug: Added userdb setting: plugin/quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): auth USER input: jakub@*** uid=65534 quota_rule=*:bytes=3221225472 quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Added userdb setting: plugin/quota_rule=*:bytes=3221225472 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Added userdb setting: plugin/quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Effective uid=65534, gid=65534, home=/datastore/maildir/***/jakub Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota root: name=User quota backend=dict args=:proxy::sqlquota Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota warning: bytes=3060164198 (95%) messages=0 reverse=no command=quota-warning 95 jakub@*** *** size Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota warning: bytes=0 messages=0 (95%) reverse=no command=quota-warning 95 jakub@*** *** count Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota grace: root=User quota bytes=1610612736 (50%) Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): dict quota: user=jakub@***, uri=proxy::sqlquota, noenforcing=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/ Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): maildir++: root=/datastore/maildir/***/jakub, index=, indexpvt=, control=, inbox=/datastore/maildir/***/jakub, alt= Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): quota: quota_over_flag check: quota_over_script unset - skipping Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Effective uid=65534, gid=65534, home=/datastore/maildir/***/jakub Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota root: name=User quota backend=dict args=:proxy::sqlquota Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota warning: bytes=3060164198 (95%) messages=0 reverse=no command=quota-warning 95 jakub@*** *** size Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota warning: bytes=0 messages=0 (95%) reverse=no command=quota-warning 95 jakub@*** *** count Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota grace: root=User quota bytes=1610612736 (50%) Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: dict quota: user=jakub@***, uri=proxy::sqlquota, noenforcing=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/ Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: maildir++: root=/datastore/maildir/***/jakub, index=, indexpvt=, control=, inbox=/datastore/maildir/***/jakub, alt= Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: quota: quota_over_flag check: quota_over_script unset - skipping Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Namespace : Using permissions from /datastore/maildir/***/jakub: mode=0700 gid=default Jul 26 10:54:11 mda11 dovecot: dsync-local(jakub@***)<uoLWIzOMWVt8CAAALagawQ>: Debug: Mailbox INBOX: Opened mail UID=18 because: prefetch Jul 26 10:54:11 mda11 dovecot: dsync-local(jakub@***)<uoLWIzOMWVt8CAAALagawQ>: Debug: Mailbox INBOX: Opened mail UID=18 because: access Jul 26 10:54:11 mda11 dovecot: dsync-local(jakub@***)<uoLWIzOMWVt8CAAALagawQ>: Debug: Mailbox INBOX: Opened mail UID=18 because: mail stream Jul 26 10:55:28 mda11 dovecot: pop3-login: Login: user=<jakub@***>, method=PLAIN, rip=XXX, lip=XXX, mpid=3245, TLS Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Loading modules from directory: /usr/lib/dovecot/modules Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib10_quota_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib15_notify_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib20_mail_log_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib20_replication_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib90_old_stats_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Added userdb setting: plugin/quota_rule=*:bytes=3221225472 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Added userdb setting: plugin/quota_rule2=*:messages=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Effective uid=65534, gid=65534, home=/datastore/maildir/***/jakub Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota root: name=User quota backend=dict args=:proxy::sqlquota Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota warning: bytes=3060164198 (95%) messages=0 reverse=no command=quota-warning 95 jakub@*** *** size Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota warning: bytes=0 messages=0 (95%) reverse=no command=quota-warning 95 jakub@*** *** count Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota grace: root=User quota bytes=1610612736 (50%) Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: dict quota: user=jakub@***, uri=proxy::sqlquota, noenforcing=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir: ~/ Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: maildir++: root=/datastore/maildir/***/jakub, index=, indexpvt=, control=, inbox=/datastore/maildir/***/jak ub, alt= Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: quota: quota_over_flag check: quota_over_script unset - skipping Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: INBOX: Mailbox opened because: POP3 INBOX Jul 26 10:55:33 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: expunge: box=INBOX, msgid=<20180726105407.7b9cbf8d@muffycake>, size=2651, from=Lenny <lenny@***>, subject=pop3 te st mail #2 Jul 26 10:55:33 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Disconnected: Logged out top=0/0, retr=0/0, del=1/1, size=2718 -- Jakub Lánský IT administration/support technician jakub@lansky.biz GSM: +420776172737 Jabber/GTalk: lenny@blesmrt.net -------- Původní zpráva -------- Od: Aki Tuomi <aki.tuomi@dovecot.fi> Komu: Jakub Lánský <jakub@lansky.biz>, dovecot@dovecot.org Předmět: Re: dsync: expunge from pop3 does not replicate Datum: Thu, 26 Jul 2018 08:46:57 +0300 Can you try enabling mail_debug=yes, perform a pop3 session and provide logs? Aki On 25.07.2018 15:53, Jakub Lánský wrote:
Here is it
# 2.3.2.1 (0719df592): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.2 (5d6d7c92) # OS: Linux 4.4.0-112-generic x86_64 Ubuntu 16.04.4 LTS # Hostname: mda22 auth_cache_negative_ttl = 2 secs auth_cache_size = 16 M auth_cache_ttl = 1 mins auth_master_user_separator = / auth_mechanisms = plain login auth_verbose = yes default_client_limit = 2000 default_process_limit = 2000 default_vsz_limit = 16894 M deliver_log_format = %m %f/%e %s -> %e %p: %$ dict { sqlquota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext sqlsieve = mysql:/etc/dovecot/dovecot-dict-sqlsieve.conf.ext } disable_plaintext_auth = no doveadm_password = # hidden, use -P to show it imap_client_workarounds = delay-newmail tb-extra-mailbox-sep tb-lsub- flags lda_mailbox_autocreate = yes lda_mailbox_autosubscribe = yes lmtp_rcpt_check_quota = yes login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c login_trusted_networks = 10.3.13.0/24 10.3.14.0/24 mail_gid = nogroup mail_home = /datastore/maildir/%d/%n mail_location = maildir:~/ mail_plugins = " quota mail_log notify old_stats replication" mail_uid = nobody maildir_copy_with_hardlinks = no 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 namespace inbox { inbox = yes location = mailbox Archive { auto = subscribe special_use = \Archive } mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Inbox { auto = subscribe } mailbox Junk { auto = subscribe special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = subscriptions = yes type = private } passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { mail_log_events = delete undelete expunge copy mailbox_delete mailbox_rename mail_log_fields = box msgid from subject size mail_replica = tcp:10.3.13.51:54321 old_stats_command_min_time = 1 mins old_stats_domain_min_time = 12 hours old_stats_ip_min_time = 12 hours old_stats_memory_limit = 16 M old_stats_refresh = 30 secs old_stats_session_min_time = 15 mins old_stats_track_cmds = yes old_stats_user_min_time = 1 hours quota = dict:User quota::proxy::sqlquota quota_exceeded_message = Storage quota for this account has been exceeded, please try again later. quota_grace = 50%% quota_warning = storage=95%% quota-warning 95 %u %d size quota_warning2 = messages=95%% quota-warning 95 %u %d count recipient_delimiter = + sieve = file:/datastore/sieve/%d/%n/;active=/datastore/sieve/%d/%n/active.sie ve sieve_before = dict:proxy::sqlsieve;name=before_inbox_forward;bindir=/datastore/siev e/%d/%n/ sieve_max_actions = 32 sieve_max_redirects = 50 sieve_max_script_size = 1M sieve_redirect_envelope_from = recipient sieve_user_log = /datastore/sieve/%d/%n/.sieve.log } pop3_client_workarounds = outlook-no-nuls oe-ns-eoh pop3_reuse_xuidl = yes pop3_save_uidl = yes protocols = " imap lmtp sieve pop3 sieve" replication_max_conns = 100 service aggregator { fifo_listener replication-notify-fifo { mode = 0666 user = nobody } unix_listener replication-notify { mode = 0666 user = nobody } } service auth { inet_listener { port = 12345 ssl = yes } } service dict { unix_listener dict { group = nogroup user = nobody } } service doveadm { inet_listener { port = 54321 ssl = no } } service imap-login { process_limit = 32 process_min_avail = 8 service_count = 0 } service imap { process_limit = 16384 } service lmtp { executable = lmtp -L inet_listener lmtp { port = 24 ssl = no } process_min_avail = 5 } service managesieve-login { inet_listener sieve { port = 4190 } process_min_avail = 2 service_count = 1 vsz_limit = 196 M } service managesieve { process_limit = 2048 } service old-stats { fifo_listener old-stats-mail { mode = 0666 user = nobody } inet_listener { address = 127.0.0.1 port = 24242 } } service pop3 { process_limit = 2048 } service quota-warning { executable = script /etc/dovecot/quota-warning.sh unix_listener quota-warning { mode = 0666 user = nobody } user = nobody } service replicator { process_min_avail = 1 unix_listener replicator-doveadm { mode = 0666 user = nobody } } service stats { idle_kill = 5 mins unix_listener stats-reader { group = nogroup mode = 0666 user = nobody } unix_listener stats-writer { group = nogroup mode = 0666 user = nobody } } ssl_cert = </etc/dovecot/private/mda.vshosting.cloud/fullchain.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it ssl_prefer_server_ciphers = yes submission_host = 10.3.14.30:587 userdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } protocol lmtp { mail_plugins = " quota mail_log notify old_stats replication sieve" } protocol lda { mail_plugins = " quota mail_log notify old_stats replication sieve" } protocol imap { mail_max_userip_connections = 50 mail_plugins = " quota mail_log notify old_stats replication imap_quota imap_old_stats" } protocol sieve { managesieve_max_line_length = 65536 } protocol pop3 { mail_max_userip_connections = 50 }
Hi Aki, did you had any luck with reproducing this? Thanks for answer -- Jakub Lánský IT administration/support technician jakub@lansky.biz GSM: +420776172737 Jabber/GTalk: lenny@blesmrt.net -------- Původní zpráva -------- Od: Jakub Lánský <jakub@lansky.biz> Komu: Aki Tuomi <aki.tuomi@dovecot.fi>, dovecot@dovecot.org Předmět: Re: dsync: expunge from pop3 does not replicate Datum: Thu, 26 Jul 2018 11:03:53 +0200 Yes, it should incoming mail to inbox, where replication was requested (and mail was replicated succesfully, of course). After expunge via POP3, replication was not called at all. (It doesn't happens on IMAP connections, if I didn't mentioned in previous message) Log: Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: Debug: INBOX: Mailbox opened because: lib-lda delivery Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: Debug: Mailbox <lmtp DATA local>: Opened mail UID=1 because: copying Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: Debug: replication: Replication requested by 'mail_deliver_save', priority=2 Jul 26 10:54:11 mda11 dovecot: lmtp(jakub@***)<339><mMJrGzOMWVtTAQAALagawQ>: < 20180726105407.7b9cbf8d@muffycake> lenny@***/lenny@*** pop3 test mail #2 -> lenny@*** 2651: saved mail to INBOX Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***)<2172><>: Debug: auth USER input: jakub@*** uid=65534 quota_rule=*:bytes=3221225472 quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***)<2172><>: Debug: Added userdb setting: plugin/quota_rule=*:bytes=3221225472 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***)<2172><>: Debug: Added userdb setting: plugin/quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): auth USER input: jakub@*** uid=65534 quota_rule=*:bytes=3221225472 quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Added userdb setting: plugin/quota_rule=*:bytes=3221225472 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Added userdb setting: plugin/quota_rule2=*:messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Effective uid=65534, gid=65534, home=/datastore/maildir/***/jakub Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota root: name=User quota backend=dict args=:proxy::sqlquota Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota warning: bytes=3060164198 (95%) messages=0 reverse=no command=quota-warning 95 jakub@*** *** size Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota warning: bytes=0 messages=0 (95%) reverse=no command=quota-warning 95 jakub@*** *** count Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Quota grace: root=User quota bytes=1610612736 (50%) Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): dict quota: user=jakub@***, uri=proxy::sqlquota, noenforcing=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/ Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): maildir++: root=/datastore/maildir/***/jakub, index=, indexpvt=, control=, inbox=/datastore/maildir/***/jakub, alt= Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: remote(10.3.13.52:54321): quota: quota_over_flag check: quota_over_script unset - skipping Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Effective uid=65534, gid=65534, home=/datastore/maildir/***/jakub Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota root: name=User quota backend=dict args=:proxy::sqlquota Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota warning: bytes=3060164198 (95%) messages=0 reverse=no command=quota- warning 95 jakub@*** *** size Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota warning: bytes=0 messages=0 (95%) reverse=no command=quota-warning 95 jakub@*** *** count Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Quota grace: root=User quota bytes=1610612736 (50%) Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: dict quota: user=jakub@***, uri=proxy::sqlquota, noenforcing=0 Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:~/ Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: maildir++: root=/datastore/maildir/***/jakub, index=, indexpvt=, control=, inbox=/datastore/maildir/***/jakub, alt= Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: quota: quota_over_flag check: quota_over_script unset - skipping Jul 26 10:54:11 mda11 dovecot: doveadm(jakub@***): Debug: Namespace : Using permissions from /datastore/maildir/***/jakub: mode=0700 gid=default Jul 26 10:54:11 mda11 dovecot: dsync- local(jakub@***)<uoLWIzOMWVt8CAAALagawQ>: Debug: Mailbox INBOX: Opened mail UID=18 because: prefetch Jul 26 10:54:11 mda11 dovecot: dsync- local(jakub@***)<uoLWIzOMWVt8CAAALagawQ>: Debug: Mailbox INBOX: Opened mail UID=18 because: access Jul 26 10:54:11 mda11 dovecot: dsync- local(jakub@***)<uoLWIzOMWVt8CAAALagawQ>: Debug: Mailbox INBOX: Opened mail UID=18 because: mail stream Jul 26 10:55:28 mda11 dovecot: pop3-login: Login: user=<jakub@***>, method=PLAIN, rip=XXX, lip=XXX, mpid=3245, TLS Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Loading modules from directory: /usr/lib/dovecot/modules Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib10_quota_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib15_notify_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib20_mail_log_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib20_replication_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Module loaded: /usr/lib/dovecot/modules/lib90_old_stats_plugin.so Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Added userdb setting: plugin/quota_rule=*:bytes=3221225472 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Added userdb setting: plugin/quota_rule2=*:messages=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Effective uid=65534, gid=65534, home=/datastore/maildir/***/jakub Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota root: name=User quota backend=dict args=:proxy::sqlquota Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota rule: root=User quota mailbox=* bytes=3221225472 messages=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota warning: bytes=3060164198 (95%) messages=0 reverse=no command=quota- warning 95 jakub@*** *** size Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota warning: bytes=0 messages=0 (95%) reverse=no command=quota-warning 95 jakub@*** *** count Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Quota grace: root=User quota bytes=1610612736 (50%) Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: dict quota: user=jakub@***, uri=proxy::sqlquota, noenforcing=0 Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir: ~/ Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: maildir++: root=/datastore/maildir/***/jakub, index=, indexpvt=, control=, inbox=/datastore/maildir/***/jak ub, alt= Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: quota: quota_over_flag check: quota_over_script unset - skipping Jul 26 10:55:28 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Debug: INBOX: Mailbox opened because: POP3 INBOX Jul 26 10:55:33 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: expunge: box=INBOX, msgid=<20180726105407.7b9cbf8d@muffycake>, size=2651, from=Lenny <lenny@***>, subject=pop3 te st mail #2 Jul 26 10:55:33 mda11 dovecot: pop3(jakub@***)<3245><ZLsWJ+Nx4J8qAB7QADwAAAAAAAAAAL7v>: Disconnected: Logged out top=0/0, retr=0/0, del=1/1, size=2718
participants (2)
-
Aki Tuomi
-
Jakub Lánský