Hi all,

I hope it's okay to bump this once after four months.

In the meantime we updated to 2.2.26.0 and our problem still persists:
After unsubscribing from a shared mailbox, the subscription instantly 
re-appears.
A pcap was attached to my original mail, in case it has something to do with 
dsync:
http://dovecot.org/pipermail/dovecot/2016-September/105419.html

Is anyone on this mailing list using replication in combination with shared 
folders?
Does this problem exist for anyone else? I would love to hear from people who 
got this working or if anyone else is affected by this.

My original post is at the end of this email; the current doveconf is also 
attached.


Thank you very much,

Karsten

# doveconf -n
# 2.2.26.0 (23d1de6): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.16 (fed8554)
# OS: Linux 3.16.0-4-amd64 x86_64 Debian 8.6
auth_cache_size = 10 M
auth_cache_ttl = 2 hours
default_vsz_limit = 1 G
dict {
  acl = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
lmtp_rcpt_check_quota = yes
login_trusted_networks = xxx
mail_attribute_dict = file:%h/dovecot-attributes
mail_gid = 7777
mail_location = mdbox:%h/mdbox
mail_plugins = " zlib quota acl notify replication"
mail_server_admin = mailto:postmaster@xxx
mail_server_comment = xxx
mail_shared_explicit_inbox = yes
mail_uid = 7777
mailbox_list_index = yes
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 imapflags notify
mdbox_rotate_size = 10 M
namespace {
  hidden = no
  ignore_on_failure = no
  inbox = no
  list = children
  location = mdbox:%%h/mdbox:INDEXPVT=%h/shared/%%u
  prefix = shared/%%u/
  separator = /
  subscriptions = no
  type = shared
}
namespace inbox {
  hidden = no
  inbox = yes
  list = yes
  location =
  mailbox 30dTrash {
    auto = subscribe
    autoexpunge = 30 days
    special_use = \Junk
  }
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  prefix =
  separator = /
  subscriptions = yes
  type = private
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
plugin {
  acl = vfile
  acl_shared_dict = proxy::acl
  mail_replica = tcp:xxx:24245
  quota = dict:User quota::noenforcing:file:%h/dovecot-quota
  quota_grace = 2%%
  quota_rule = *:storage=8G
  quota_status_nouser = DUNNO
  quota_status_overquota = DUNNO
  quota_status_success = DUNNO
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
  sieve_extensions = +notify +imapflags
  sieve_max_actions = 250
  sieve_max_redirects = 200
  zlib_save = gz
  zlib_save_level = 6
}
postmaster_address = postmaster@xxx
protocols = " imap lmtp sieve pop3 sieve"
replication_dsync_parameters = -d -l 30 -U -N
replication_max_conns = 5
service aggregator {
  fifo_listener replication-notify-fifo {
    user = vmail
  }
  unix_listener replication-notify {
    user = vmail
  }
}
service auth {
  unix_listener auth-userdb {
    group = vmail
    user = vmail
  }
}
service dict {
  unix_listener dict {
    group = vmail
    mode = 0660
    user = vmail
  }
}
service doveadm {
  inet_listener {
    port = 24245
  }
}
service imap-login {
  process_min_avail = 16
  service_count = 0
}
service imap {
  executable = imap postlogin
  process_limit = 30000
}
service lmtp {
  inet_listener lmtp {
    port = 24
  }
  vsz_limit = 1 G
}
service managesieve-login {
  inet_listener sieve {
    port = 4190
  }
}
service managesieve {
  process_limit = 1024
}
service pop3-login {
  process_min_avail = 4
  service_count = 0
}
service pop3 {
  process_limit = 2500
}
service postlogin {
  executable = script-login -d rawlog /usr/local/bin/dovecot-postlogin.sh
}
service quota-status {
  client_limit = 1
  executable = quota-status -p postfix
  inet_listener {
    port = 12340
  }
}
service replicator {
  process_min_avail = 1
  unix_listener replicator-doveadm {
    mode = 0600
    user = vmail
  }
}
shutdown_clients = no
ssl_cert = </etc/dovecot/private/fullchain.pem
ssl_key =  # hidden, use -P to show it
syslog_facility = local6
userdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  default_fields = home=/var/vmail/%Ld/%Ln quota_rule=*:bytes=8589934592
  driver = ldap
}
verbose_proctitle = yes
protocol lmtp {
  mail_plugins = " zlib quota acl notify replication sieve quota"
}
protocol lda {
  mail_plugins = " zlib quota acl notify replication sieve"
}
protocol imap {
  imap_metadata = yes
  mail_max_userip_connections = 100
  mail_plugins = " zlib quota acl notify replication imap_quota imap_acl"
}
protocol pop3 {
  mail_max_userip_connections = 10
  mail_plugins = " zlib quota acl notify replication"
}


Am 13.09.2016 um 13:43 schrieb Karsten Heiken:
Hi,

I am running two dovecot servers active/active.
Everything runs pretty great, except for the replication of subscriptions in a 
shared namespace.

When I unsubscribe from a folder the subscription instantly re-appears. The 
timestamp on the subscriptions file is updated, but the entry is still in there.
If the other node is shut down, everything works as expected, which leads me to 
believe that the subscription is re-applied upon a replicator-run.

I attached a tcpdump of a dsync run.
The only action that was executed was to unsubscribe from the folder 
shared/wein...@luis.uni-hannover.de/INBOX.

Is there any other way I might help debugging this?


Thanks,
Karsten


# 2.2.24 (a82c823): /etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.13 (7b14904)
# OS: Linux 2.6.32-44-pve x86_64 Debian 8.5
default_vsz_limit = 512 M
dict {
   acl = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
}
imap_max_line_length = 2 M
lmtp_rcpt_check_quota = yes
mail_attribute_dict = file:%h/Maildir/dovecot-attributes
mail_gid = 7777
mail_location = maildir:%h/Maildir:LAYOUT=fs:DIRNAME=maiLdir
mail_plugins = " zlib quota acl notify replication "
mail_shared_explicit_inbox = yes
mail_uid = 7777
mailbox_list_index = yes
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 imapflags notify
namespace {
   hidden = no
   ignore_on_failure = no
   inbox = no
   list = children
   location = 
maildir:%%h/Maildir:INDEXPVT=%h/shared/%%u:LAYOUT=fs:DIRNAME=maiLdir
   prefix = shared/%%u/
   separator = /
   subscriptions = yes
   type = shared
}
namespace inbox {
   hidden = no
   inbox = yes
   list = yes
   location =
   mailbox 30dTrash {
     auto = subscribe
     autoexpunge = 30 days
     special_use = \Junk
   }
   mailbox Drafts {
     auto = subscribe
     special_use = \Drafts
   }
   mailbox Sent {
     auto = subscribe
     special_use = \Sent
   }
   mailbox Trash {
     auto = subscribe
     special_use = \Trash
   }
   prefix =
   separator = /
   subscriptions = yes
   type = private
}
passdb {
   args = /etc/dovecot/dovecot-ldap.conf.ext
   driver = ldap
}
plugin {
   acl = vfile
   acl_shared_dict = proxy::acl
   mail_replica = tcp:10.6.1.10:24245
   quota = maildir:Postfach-Limit
   quota_grace = 2%%
   quota_rule = *:storage=8G
   quota_status_nouser = DUNNO
   quota_status_overquota = 552 5.2.2 Mailbox is full
   quota_status_success = DUNNO
   sieve = ~/.dovecot.sieve
   sieve_dir = ~/sieve
   sieve_extensions = +notify +imapflags
   sieve_max_actions = 250
   sieve_max_redirects = 200
   zlib_save = gz
   zlib_save_level = 6
}
protocols = " imap lmtp sieve pop3 sieve"
replication_dsync_parameters = -d -l 300 -U -N
service aggregator {
   fifo_listener replication-notify-fifo {
     user = vmail
   }
   unix_listener replication-notify {
     user = vmail
   }
}
service auth {
   unix_listener auth-userdb {
     group = vmail
     user = vmail
   }
}
service dict {
   unix_listener dict {
     group = vmail
     mode = 0660
     user = vmail
   }
}
service doveadm {
   inet_listener {
     port = 24245
   }
}
service imap-login {
   process_min_avail = 16
   service_count = 0
}
service imap {
   executable = imap postlogin
   process_limit = 30000
}
service lmtp {
   inet_listener lmtp {
     port = 24
   }
   vsz_limit = 1 G
}
service managesieve-login {
   inet_listener sieve {
     port = 4190
   }
}
service managesieve {
   process_limit = 1024
}
service pop3-login {
   process_min_avail = 4
   service_count = 0
}
service pop3 {
   process_limit = 2500
}
service postlogin {
   executable = script-login -d rawlog /usr/local/bin/dovecot-postlogin.sh
}
service quota-status {
   client_limit = 1
   executable = quota-status -p postfix
   inet_listener {
     port = 12340
   }
}
service replicator {
   process_min_avail = 1
   unix_listener replicator-doveadm {
     mode = 0600
     user = vmail
   }
}
shutdown_clients = no
ssl_cert = </etc/dovecot/private/fullchain.pem
ssl_key = </etc/dovecot/private/privkey.pem
syslog_facility = local6
userdb {
   args = /etc/dovecot/dovecot-ldap.conf.ext
   default_fields = home=/var/vmail/%Ld/%Ln quota_rule=*:bytes=8589934592
   driver = ldap
}
verbose_proctitle = yes
protocol lmtp {
   mail_plugins = " zlib quota acl notify replication  sieve quota"
}
protocol lda {
   mail_plugins = " zlib quota acl notify replication  sieve"
}
protocol imap {
   imap_metadata = yes
   mail_max_userip_connections = 100
   mail_plugins = " zlib quota acl notify replication  imap_quota imap_acl"
}
protocol pop3 {
   mail_max_userip_connections = 10
   mail_plugins = " zlib quota acl notify replication"
}

Reply via email to