diff options
author | Aravinda VK <avishwan@redhat.com> | 2015-07-28 14:52:00 +0530 |
---|---|---|
committer | Venky Shankar <vshankar@redhat.com> | 2015-11-09 06:40:25 -0800 |
commit | 56d3a29d1ffb637806313f9f93c39f700b57c47e (patch) | |
tree | e50f060f8c5d603fed880b275cb50b2b204319ff | |
parent | 8356e4281c2953a7f35bf0b4bce194b0c678b6a5 (diff) |
geo-rep: Update last_synced_time in XSync
During XSync crawl, last_synced time in status file was not updated.
This patch fixes the issue by updating status file when stime xattr
is updated after Xsync or Changelog Crawl.
Change-Id: I4dc3a2d4c3d8378a939da0868caf1aef4f789599
Signed-off-by: Aravinda VK <avishwan@redhat.com>
BUG: 1279306
Reviewed-on: http://review.gluster.org/11771
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Reviewed-by: Jeff Darcy <jdarcy@redhat.com>
(cherry picked from commit ee0b1a3bf11a4d05696212d91c932ddb7c7091ee)
Reviewed-on: http://review.gluster.org/12545
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Venky Shankar <vshankar@redhat.com>
-rw-r--r-- | geo-replication/syncdaemon/master.py | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/geo-replication/syncdaemon/master.py b/geo-replication/syncdaemon/master.py index 407e4b29580..be8449bec8c 100644 --- a/geo-replication/syncdaemon/master.py +++ b/geo-replication/syncdaemon/master.py @@ -995,13 +995,6 @@ class GMasterChangelogMixin(GMasterCommon): if done: xtl = (int(change.split('.')[-1]) - 1, 0) self.upd_stime(xtl) - chkpt_time = gconf.configinterface.get_realtime( - "checkpoint") - checkpoint_time = 0 - if chkpt_time is not None: - checkpoint_time = int(chkpt_time) - - self.status.set_last_synced(xtl, checkpoint_time) map(self.changelog_done_func, changes) self.archive_and_purge_changelogs(changes) @@ -1029,13 +1022,6 @@ class GMasterChangelogMixin(GMasterCommon): if done: xtl = (int(change.split('.')[-1]) - 1, 0) self.upd_stime(xtl) - chkpt_time = gconf.configinterface.get_realtime( - "checkpoint") - checkpoint_time = 0 - if chkpt_time is not None: - checkpoint_time = int(chkpt_time) - - self.status.set_last_synced(xtl, checkpoint_time) map(self.changelog_done_func, changes) self.archive_and_purge_changelogs(changes) break @@ -1060,6 +1046,15 @@ class GMasterChangelogMixin(GMasterCommon): if not stime == URXTIME: self.sendmark(path, stime) + # Update last_synced_time in status file based on stime + chkpt_time = gconf.configinterface.get_realtime( + "checkpoint") + checkpoint_time = 0 + if chkpt_time is not None: + checkpoint_time = int(chkpt_time) + + self.status.set_last_synced(stime, checkpoint_time) + def update_worker_remote_node(self): node = sys.argv[-1] node_data = node.split("@") |