On 1/08/2016 10:01 AM, Stephan Bosch wrote:> Op 7/31/2016 om 4:27 AM schreef Reuben Farrelly: >> Hi, >> >> I've observed some odd behaviour with dsync replication between two >> hosts, specifically to do with sieve script replication.>> Has anyone else experienced the replication problem? Are sieve >> scripts actually replicating in live time for other 2.2.24/2.2.25 >> users as well? For me I didn't notice this till I went looking so I >> wonder if other people are experiencing this but just not aware of it >> yet...? > > I will look at this more soon. > > Regards, > > Stephan.Some further information. On the primary host: thunderstorm home # ls -al */sieve/rules.sieve -rw------- 1 user1 user1 3570 Jul 31 11:45 user1/sieve/rules.sieve -rw------- 1 user2 user2 175 Mar 15 2014 user2/sieve/rules.sieve -rw------- 1 user3 user3 725 Jul 31 09:32 user3/sieve/rules.sieve -rw------- 1 user4 user4 0 Jan 1 1970 user4/sieve/rules.sieve -rw------- 1 user5 user5 0 Jan 1 1970 user5/sieve/rules.sieve -rw-r--r-- 1 user6 user6 3719 Jul 31 11:24 user6/sieve/rules.sieve thunderstorm home # On the secondary host: lightning home # ls -al */sieve/rules.sieve -rw------- 1 user1 user1 3570 Jan 1 1970 user1/sieve/rules.sieve -rw------- 1 user2 user2 175 Mar 14 2014 user2/sieve/rules.sieve -rw------- 1 user3 user3 725 Jul 31 07:32 user3/sieve/rules.sieve -rw------- 1 user4 user4 0 Jan 1 1970 user4/sieve/rules.sieve -rw-r--r-- 1 user5 user5 0 Jan 1 1970 user5/sieve/rules.sieve -rw-r--r-- 1 user6 user6 3719 Jan 1 1970 user6/sieve/rules.sieve lightning home # In other words, the rules did eventually get propagated across, and based on the file sizes they are complete. But there is obviously something amiss with handling of dates (which in turn may relate to how the system determines that the file on each server is up to date or not, I guess). In this case the two systems are in different timezones - the primary is GMT+10 and the secondary GMT+8. Also the status of active users is not always replicated either. On one host the output of 'doveadm sieve list -A' shows my own account as ACTIVE but the other host shows all users - except for my account - as being active, and the sieve script for my account is not being replicated. The other interesting thing is the output of: dovecot sieve list -A While (as I said above) the output of this command is doubled up on the main host, it is not doubled up on the secondary host. Reuben
Op 8/1/2016 om 3:37 AM schreef Reuben Farrelly:> > > On 1/08/2016 10:01 AM, Stephan Bosch wrote: >> Op 7/31/2016 om 4:27 AM schreef Reuben Farrelly: >>> Hi, >>> >>> I've observed some odd behaviour with dsync replication between two >>> hosts, specifically to do with sieve script replication. > >>> Has anyone else experienced the replication problem? Are sieve >>> scripts actually replicating in live time for other 2.2.24/2.2.25 >>> users as well? For me I didn't notice this till I went looking so I >>> wonder if other people are experiencing this but just not aware of it >>> yet...? >> >> I will look at this more soon. >> >> Regards, >> >> Stephan. > > Some further information. > > On the primary host: > > thunderstorm home # ls -al */sieve/rules.sieve > -rw------- 1 user1 user1 3570 Jul 31 11:45 user1/sieve/rules.sieve > -rw------- 1 user2 user2 175 Mar 15 2014 user2/sieve/rules.sieve > -rw------- 1 user3 user3 725 Jul 31 09:32 user3/sieve/rules.sieve > -rw------- 1 user4 user4 0 Jan 1 1970 user4/sieve/rules.sieve > -rw------- 1 user5 user5 0 Jan 1 1970 user5/sieve/rules.sieve > -rw-r--r-- 1 user6 user6 3719 Jul 31 11:24 user6/sieve/rules.sieve > thunderstorm home # > > On the secondary host: > > lightning home # ls -al */sieve/rules.sieve > -rw------- 1 user1 user1 3570 Jan 1 1970 user1/sieve/rules.sieve > -rw------- 1 user2 user2 175 Mar 14 2014 user2/sieve/rules.sieve > -rw------- 1 user3 user3 725 Jul 31 07:32 user3/sieve/rules.sieve > -rw------- 1 user4 user4 0 Jan 1 1970 user4/sieve/rules.sieve > -rw-r--r-- 1 user5 user5 0 Jan 1 1970 user5/sieve/rules.sieve > -rw-r--r-- 1 user6 user6 3719 Jan 1 1970 user6/sieve/rules.sieve > lightning home # > > In other words, the rules did eventually get propagated across, and > based on the file sizes they are complete. > > But there is obviously something amiss with handling of dates (which > in turn may relate to how the system determines that the file on each > server is up to date or not, I guess). In this case the two systems > are in different timezones - the primary is GMT+10 and the secondary > GMT+8. > > Also the status of active users is not always replicated either. On > one host the output of 'doveadm sieve list -A' shows my own account as > ACTIVE but the other host shows all users - except for my account - as > being active, and the sieve script for my account is not being > replicated.This should fix the file timestamps getting set at unix time_t 0: https://github.com/dovecot/pigeonhole/commit/af91dd3f2d78da752292dce27f9e76d2c936868c I haven't been able to replicate the situation where this occurs though, since my current replication setup is very simple. I need to extend my replication setup to test this more thoroughly. So, please test this at your end first. Regards, Stephan.
On 24/08/2016 10:58 AM, Stephan Bosch wrote:> Op 8/1/2016 om 3:37 AM schreef Reuben Farrelly: >> In other words, the rules did eventually get propagated across, and >> based on the file sizes they are complete. >> >> But there is obviously something amiss with handling of dates (which >> in turn may relate to how the system determines that the file on each >> server is up to date or not, I guess). In this case the two systems >> are in different timezones - the primary is GMT+10 and the secondary >> GMT+8. >> >> Also the status of active users is not always replicated either. On >> one host the output of 'doveadm sieve list -A' shows my own account as >> ACTIVE but the other host shows all users - except for my account - as >> being active, and the sieve script for my account is not being >> replicated. > This should fix the file timestamps getting set at unix time_t 0: > > https://github.com/dovecot/pigeonhole/commit/af91dd3f2d78da752292dce27f9e76d2c936868c > > I haven't been able to replicate the situation where this occurs though, > since my current replication setup is very simple. > > I need to extend my replication setup to test this more thoroughly. > > So, please test this at your end first. > > Regards, > > Stephan.Thanks Stephan. I have re-tested and the dates are now all look to be correct on the replicated scripts. We can cross that off as fixed now. There is still a problem with the scripts not being replicated though between replicated hosts. They do eventually catch up many hours later. I don't know what the trigger is for them updating but it's not triggered by delivery attempts (as every time a delivery was attempted the secondary complained about the missing sieve script). Thanks, Reuben