Replication: Can't unsubscribe from shared mailbox
Karsten Heiken
heiken at luis.uni-hannover.de
Mon Jan 16 14:19:16 UTC 2017
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 at 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 at 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/weinrot at 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"
> }
>
More information about the dovecot
mailing list