Sieve scripts not replicated

Jean-Luc Wasmer dovecot at jl.wasmer.ca
Sat Oct 13 17:28:36 EEST 2018


Hi,

I also experience this on dovecot 2.3.2.1 / pigeonhole 0.5.2.

JL

On 2018-10-12 16:32, Tony wrote:
> Hi,
> 
> FWIW this was also reported back in August[1] - experienced with
> 2.3.2.1 (not sure if earlier 2.3 releases were affected) and currently
> reproducible with latest 2.3.3 stable release.
> 
> [1] https://www.dovecot.org/pipermail/dovecot/2018-August/112548.html
> 
> Cheers,
> Tony
> 
> 
> On 2018-10-12 04:26, Pascal wrote:
>> Hello,
>> 
>> I use dovecot replication and the sieve scripts are not replicated.
>> Mail replication is working fine.
>> 
>> Log when sieve script (with Rainloop webmail) is created:
>> Oct 12 12:57:57 srv1 dovecot: managesieve-login: Login:
>> user=<hativ at example.com>, method=PLAIN, rip=91.67.174.186,
>> lip=195.201.251.57, mpid=5360, TLS, session=<OXvK9QV4fOBbQ666>
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Loading
>> modules from directory: /usr/local/lib/dovecot
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib01_acl_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib10_mail_crypt_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib10_quota_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib15_notify_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib20_mail_log_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib20_quota_clone_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Module
>> loaded: /usr/local/lib/dovecot/lib20_replication_plugin.so
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Added
>> userdb setting: plugin/mail_crypt_private_password=<hidden>
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Added
>> userdb setting: plugin/mail_crypt_save_version=0
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Added
>> userdb setting: plugin/quota_rule=*:bytes=0
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug:
>> Effective uid=998, gid=998, home=/srv/mail/example.com/hativ
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Quota
>> root: name= backend=count args=
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Quota
>> rule: root= mailbox=* bytes=0 messages=0
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: Quota
>> grace: root= bytes=0 (10%)
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug:
>> Namespace INBOX: type=private, prefix=, sep=, inbox=yes, hidden=no,
>> list=yes, subscriptions=yes location=sdbox:~/
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: fs:
>> root=/srv/mail/example.com/hativ, index=, indexpvt=, control=, inbox=,
>> alt=
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl:
>> initializing backend with data: vfile
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl:
>> acl username = hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl:
>> owner = 1
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl
>> vfile: Global ACLs disabled
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug:
>> Namespace Shared: type=shared, prefix=Shared/%u/, sep=, inbox=no,
>> hidden=no, list=children, subscriptions=yes
>> location=sdbox:%h/:INDEXPVT=~/shares/%u
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: shared:
>> root=/usr/local/var/run/dovecot, index=, indexpvt=, control=, inbox=,
>> alt=
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl:
>> initializing backend with data: vfile
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl:
>> acl username = hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl:
>> owner = 0
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: acl
>> vfile: Global ACLs disabled
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: quota:
>> quota_over_flag check: quota_over_script unset - skipping
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> Pigeonhole version 0.5.3 (f018bbab) initializing
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> include: sieve_global is not set; it is currently not possible to
>> include `:global' scripts.
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> Sieve Extprograms plugin for Pigeonhole version 0.5.3 (f018bbab)
>> loaded
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> Sieve imapsieve plugin for Pigeonhole version 0.5.3 (f018bbab) loaded
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file storage: Using active Sieve script path:
>> /srv/mail/example.com/hativ/.dovecot.sieve
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file storage: Using script storage path:
>> /srv/mail/example.com/hativ/sieve
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file storage: Using permissions from
>> /srv/mail/example.com/hativ/sieve: mode=0700 gid=-1
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file storage: Relative path to sieve storage in active link: sieve/
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file storage: sync: Synchronization active
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file storage: Using Sieve script path:
>> /srv/mail/example.com/hativ/sieve/tmp/rainloop.user_1539341877.M470670P5360.srv1.sieve
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file script: Opened script `rainloop.user' from
>> `/srv/mail/example.com/hativ/sieve/tmp/rainloop.user_1539341877.M470670P5360.srv1.sieve'
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug:
>> replication: Replication requested by
>> 'sieve_storage_sync_transaction_begin', priority=1
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug: sieve:
>> file script: Opened script `rainloop.user' from
>> `/srv/mail/example.com/hativ/sieve/rainloop.user.sieve'
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Debug:
>> replication: Replication requested by
>> 'sieve_storage_sync_transaction_begin', priority=1
>> Oct 12 12:57:57 srv1 dovecot:
>> managesieve(hativ at example.com)<5360><OXvK9QV4fOBbQ666>: Disconnected:
>> Logged out bytes=865/124
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: auth
>> PASS input: user=hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com)<5361><>:
>> Debug: auth USER input: hativ at example.com mail_crypt_private_password
>> mail_crypt_save_version=0 quota_rule=*:bytes=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com)<5361><>:
>> Debug: Added userdb setting:
>> plugin/mail_crypt_private_password=<hidden>
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com)<5361><>:
>> Debug: Added userdb setting: plugin/mail_crypt_save_version=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com)<5361><>:
>> Debug: Added userdb setting: plugin/quota_rule=*:bytes=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): auth PASS input: user=hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): auth USER input: hativ at example.com
>> mail_crypt_private_password mail_crypt_save_version=0
>> quota_rule=*:bytes=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Added userdb setting:
>> plugin/mail_crypt_private_password=<hidden>
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Added userdb setting:
>> plugin/mail_crypt_save_version=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Added userdb setting:
>> plugin/quota_rule=*:bytes=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Effective uid=998, gid=998,
>> home=/srv/mail/example.com/hativ
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Quota root: name= backend=count args=
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Quota rule: root= mailbox=* bytes=0
>> messages=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Quota grace: root= bytes=0 (10%)
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Namespace INBOX: type=private, prefix=,
>> sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes
>> location=sdbox:~/
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): fs: root=/srv/mail/example.com/hativ,
>> index=, indexpvt=, control=, inbox=, alt=
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: initializing backend with data: vfile
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: acl username = hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: owner = 1
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl vfile: Global ACLs disabled
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Namespace Shared: type=shared,
>> prefix=Shared/%u/, sep=, inbox=no, hidden=no, list=children,
>> subscriptions=yes location=sdbox:%h/:INDEXPVT=~/shares/%u
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): shared: root=/usr/local/var/run/dovecot,
>> index=, indexpvt=, control=, inbox=, alt=
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: initializing backend with data: vfile
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: acl username = hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: owner = 0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl vfile: Global ACLs disabled
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): quota: quota_over_flag check:
>> quota_over_script unset - skipping
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Effective uid=998, gid=998, home=/srv/mail/example.com/hativ
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: Quota
>> root: name= backend=count args=
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: Quota
>> rule: root= mailbox=* bytes=0 messages=0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: Quota
>> grace: root= bytes=0 (10%)
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace INBOX: type=private, prefix=, sep=, inbox=yes, hidden=no,
>> list=yes, subscriptions=yes location=sdbox:~/
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: fs:
>> root=/srv/mail/example.com/hativ, index=, indexpvt=, control=, inbox=,
>> alt=
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> initializing backend with data: vfile
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> acl username = hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl: 
>> owner = 1
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: Global ACLs disabled
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace Shared: type=shared, prefix=Shared/%u/, sep=, inbox=no,
>> hidden=no, list=children, subscriptions=yes
>> location=sdbox:%h/:INDEXPVT=~/shares/%u
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> shared: root=/usr/local/var/run/dovecot, index=, indexpvt=, control=,
>> inbox=, alt=
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> initializing backend with data: vfile
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> acl username = hativ at example.com
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl: 
>> owner = 0
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: Global ACLs disabled
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> quota: quota_over_flag check: quota_over_script unset - skipping
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file /srv/mail/example.com/hativ/mailboxes/dovecot-acl not
>> found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Archiv/dbox-Mails/dovecot-acl
>> not found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Templates/dbox-Mails/dovecot-acl
>> not found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Offen/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Trash/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Junk/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Sent/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Drafts/dbox-Mails/dovecot-acl
>> not found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/INBOX/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace : Using permissions from /srv/mail/example.com/hativ:
>> mode=0700 gid=default
>> Oct 12 12:57:57 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace Shared/: Using permissions from : mode=0700 gid=default
>> Oct 12 12:57:57 srv1 dovecot:
>> dsync-local(hativ at example.com)<gHffIzV+wFvxFAAA69eCHA>: Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/INBOX/dbox-Mails/dovecot-acl not
>> found
>> 
>> According to the two lines "Debug: replication: Replication requested
>> by 'sieve_storage_sync_transaction_begin', priority=1" it should work,
>> but the sieve script doesn't show up on the second server.
>> 
>> Then I try to change the script (disabling it), here the log:
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: auth
>> PASS input: user=hativ at example.com
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com)<5509><>:
>> Debug: auth USER input: hativ at example.com mail_crypt_private_password
>> mail_crypt_save_version=0 quota_rule=*:bytes=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com)<5509><>:
>> Debug: Added userdb setting:
>> plugin/mail_crypt_private_password=<hidden>
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com)<5509><>:
>> Debug: Added userdb setting: plugin/mail_crypt_save_version=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com)<5509><>:
>> Debug: Added userdb setting: plugin/quota_rule=*:bytes=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): auth PASS input: user=hativ at example.com
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): auth USER input: hativ at example.com
>> mail_crypt_private_password mail_crypt_save_version=0
>> quota_rule=*:bytes=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Added userdb setting:
>> plugin/mail_crypt_private_password=<hidden>
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Added userdb setting:
>> plugin/mail_crypt_save_version=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Added userdb setting:
>> plugin/quota_rule=*:bytes=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Effective uid=998, gid=998,
>> home=/srv/mail/example.com/hativ
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Quota root: name= backend=count args=
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Quota rule: root= mailbox=* bytes=0
>> messages=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Quota grace: root= bytes=0 (10%)
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Namespace INBOX: type=private, prefix=,
>> sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes
>> location=sdbox:~/
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): fs: root=/srv/mail/example.com/hativ,
>> index=, indexpvt=, control=, inbox=, alt=
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: initializing backend with data: vfile
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: acl username = hativ at example.com
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: owner = 1
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl vfile: Global ACLs disabled
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): Namespace Shared: type=shared,
>> prefix=Shared/%u/, sep=, inbox=no, hidden=no, list=children,
>> subscriptions=yes location=sdbox:%h/:INDEXPVT=~/shares/%u
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): shared: root=/usr/local/var/run/dovecot,
>> index=, indexpvt=, control=, inbox=, alt=
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: initializing backend with data: vfile
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: acl username = hativ at example.com
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl: owner = 0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): acl vfile: Global ACLs disabled
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> remote(mail2.example.com): quota: quota_over_flag check:
>> quota_over_script unset - skipping
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Effective uid=998, gid=998, home=/srv/mail/example.com/hativ
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: Quota
>> root: name= backend=count args=
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: Quota
>> rule: root= mailbox=* bytes=0 messages=0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: Quota
>> grace: root= bytes=0 (10%)
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace INBOX: type=private, prefix=, sep=, inbox=yes, hidden=no,
>> list=yes, subscriptions=yes location=sdbox:~/
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: fs:
>> root=/srv/mail/example.com/hativ, index=, indexpvt=, control=, inbox=,
>> alt=
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> initializing backend with data: vfile
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> acl username = hativ at example.com
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl: 
>> owner = 1
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: Global ACLs disabled
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace Shared: type=shared, prefix=Shared/%u/, sep=, inbox=no,
>> hidden=no, list=children, subscriptions=yes
>> location=sdbox:%h/:INDEXPVT=~/shares/%u
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> shared: root=/usr/local/var/run/dovecot, index=, indexpvt=, control=,
>> inbox=, alt=
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> initializing backend with data: vfile
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl:
>> acl username = hativ at example.com
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl: 
>> owner = 0
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: Global ACLs disabled
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> quota: quota_over_flag check: quota_over_script unset - skipping
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file /srv/mail/example.com/hativ/mailboxes/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Archiv/dbox-Mails/dovecot-acl
>> not found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Templates/dbox-Mails/dovecot-acl
>> not found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Offen/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Trash/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Junk/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Sent/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/Drafts/dbox-Mails/dovecot-acl
>> not found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/INBOX/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace : Using permissions from /srv/mail/example.com/hativ:
>> mode=0700 gid=default
>> Oct 12 13:03:59 srv1 dovecot: doveadm(hativ at example.com): Debug:
>> Namespace Shared/: Using permissions from : mode=0700 gid=default
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: acl
>> vfile: file
>> /srv/mail/example.com/hativ/mailboxes/INBOX/dbox-Mails/dovecot-acl not
>> found
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> Pigeonhole version 0.5.3 (f018bbab) initializing
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> include: sieve_global is not set; it is currently not possible to
>> include `:global' scripts.
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> Sieve Extprograms plugin for Pigeonhole version 0.5.3 (f018bbab)
>> loaded
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> Sieve imapsieve plugin for Pigeonhole version 0.5.3 (f018bbab) loaded
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> file storage: Using active Sieve script path:
>> /srv/mail/example.com/hativ/.dovecot.sieve
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> file storage: Using script storage path:
>> /srv/mail/example.com/hativ/sieve
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> file storage: Using permissions from
>> /srv/mail/example.com/hativ/sieve: mode=0700 gid=-1
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> file storage: Relative path to sieve storage in active link: sieve/
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug: sieve:
>> file storage: sync: Synchronization active
>> Oct 12 13:03:59 srv1 dovecot:
>> dsync-local(hativ at example.com)<aS7nDJ9/wFuFFQAA69eCHA>: Debug:
>> doveadm-sieve: Value missing for key
>> `vendor/vendor.dovecot/pvt/server/sieve/default' (last change:
>> 2018-10-12 13:03:59)
>> 
>> Maybe the line "Debug: doveadm-sieve: Value missing for key
>> `vendor/vendor.dovecot/pvt/server/sieve/default' (last change:
>> 2018-10-12 13:03:59)" gives an hint?
>> 
>> root at srv1 ~ # doveadm replicator dsync-status
>> username type status
>> 
>> root at srv2 ~ # doveadm replicator dsync-status
>> username type status
>> 
>> root at srv1 ~ # doveadm replicator status
>> Queued 'sync' requests 0
>> Queued 'high' requests 0
>> Queued 'low' requests 0
>> Queued 'failed' requests 0
>> Queued 'full resync' requests 0
>> Waiting 'failed' requests 0
>> Total number of known users   5
>> 
>> root at srv2 ~ #  doveadm replicator status
>> Queued 'sync' requests 0
>> Queued 'high' requests 0
>> Queued 'low' requests 0
>> Queued 'failed' requests 0
>> Queued 'full resync' requests 0
>> Waiting 'failed' requests 0
>> Total number of known users   5
>> 
>> root at srv1 ~ # doveadm sieve list -u hativ at example.com
>> rainloop.user
>> 
>> root at srv2 ~ # doveadm sieve list -u hativ at example.com
>> 
>> 
>> Relevant configuration:
>> service replicator {
>>   process_min_avail = 1
>> 
>>   unix_listener replicator-doveadm {
>>     mode = 0600
>>     user = $mail_uid
>>   }
>> }
>> 
>> service replicator {
>>   process_min_avail = 1
>> 
>>   unix_listener replicator-doveadm {
>>     mode = 0600
>>     user = $mail_uid
>>   }
>> }
>> 
>> plugin {
>>   # Replication
>>   mail_replica = tcps:mail2.example.com
>> 
>>   # Sieve
>>   imapsieve_mailbox1_name = Junk
>>   imapsieve_mailbox1_causes = COPY
>>   imapsieve_mailbox1_before = 
>> file:/etc/dovecot/sieve/report-spam.sieve
>>   imapsieve_mailbox2_name = *
>>   imapsieve_mailbox2_from = Junk
>>   imapsieve_mailbox2_causes = COPY
>>   imapsieve_mailbox2_before = file:/etc/dovecot/sieve/report-ham.sieve
>>   sieve = file:~/sieve;active=~/.dovecot.sieve
>>   sieve_after = /etc/dovecot/sieve-after
>>   sieve_before = /etc/dovecot/sieve-before
>>   sieve_global_extensions = +vnd.dovecot.pipe
>>   sieve_pipe_bin_dir = /usr/bin/
>>   sieve_plugins = sieve_extprograms sieve_imapsieve
>> }
>> 
>> Greetings
>> 
>> Pascal


More information about the dovecot mailing list