Blob Blame History Raw
From 9057c377c18284f481a82f35219befb0f89de486 Mon Sep 17 00:00:00 2001
From: Kotresh HR <khiremat@redhat.com>
Date: Wed, 15 Feb 2017 03:44:17 -0500
Subject: [PATCH 290/294] geo-rep: Fix xsync crawl

If stime is set to (0, 0) on master brick root, it
is expected to do complete sync ignoring the stime
set on sub directories. But while initializing the
stime variable for comparison, it was initailized
to (-1, 0) instead of (0, 0). Fixed the same.

The stime is set to (0, 0) with the 'reset-sync-time' option
while deleting session.

'gluster vol geo-rep master fedora1::slave delete reset-sync-time'

The scenario happens when geo-rep session is deleted as above and
for some reason the session is re-established with same slave volume
after deleting data on slave volume.

> Change-Id: Ie5bc8f008dead637a09495adeef5577e2b33bc90
> BUG: 1422760
> Signed-off-by: Kotresh HR <khiremat@redhat.com>
> Reviewed-on: https://review.gluster.org/16629
> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
> CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
> Smoke: Gluster Build System <jenkins@build.gluster.org>
> Reviewed-by: Aravinda VK <avishwan@redhat.com>

Change-Id: Ie5bc8f008dead637a09495adeef5577e2b33bc90
BUG: 1205162
Signed-off-by: Kotresh HR <khiremat@redhat.com>
Reviewed-on: https://code.engineering.redhat.com/gerrit/97943
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
---
 geo-replication/syncdaemon/master.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/geo-replication/syncdaemon/master.py b/geo-replication/syncdaemon/master.py
index b65abf9..6437dcc 100644
--- a/geo-replication/syncdaemon/master.py
+++ b/geo-replication/syncdaemon/master.py
@@ -149,7 +149,9 @@ class NormalMixin(object):
                 xt = _xtime_now()
                 rsc.server.aggregated.set_xtime(path, self.uuid, xt)
             else:
-                xt = opts['default_xtime']
+                zero_zero = (0, 0)
+                if xt != zero_zero:
+                    xt = opts['default_xtime']
         return xt
 
     def keepalive_payload_hook(self, timo, gap):
-- 
2.9.3