diff options
| -rw-r--r-- | geo-replication/syncdaemon/master.py | 1 | ||||
| -rw-r--r-- | geo-replication/syncdaemon/resource.py | 12 | 
2 files changed, 13 insertions, 0 deletions
diff --git a/geo-replication/syncdaemon/master.py b/geo-replication/syncdaemon/master.py index 58df1495..12eadb10 100644 --- a/geo-replication/syncdaemon/master.py +++ b/geo-replication/syncdaemon/master.py @@ -147,6 +147,7 @@ class NormalMixin(object):      def set_slave_xtime(self, path, mark):          self.slave.server.set_xtime(path, self.uuid, mark) +        self.slave.server.set_xtime_remote(path, self.uuid, mark)  class PartialMixin(NormalMixin):      """a variant tuned towards operation with a master diff --git a/geo-replication/syncdaemon/resource.py b/geo-replication/syncdaemon/resource.py index 297cdabc..1010247a 100644 --- a/geo-replication/syncdaemon/resource.py +++ b/geo-replication/syncdaemon/resource.py @@ -432,6 +432,18 @@ class Server(object):          Xattr.lsetxattr(path, '.'.join([cls.GX_NSPACE, uuid, 'xtime']), struct.pack('!II', *mark))      @classmethod +    @_pathguard +    def set_xtime_remote(cls, path, uuid, mark): +        """ +        set @mark as xtime for @uuid on @path +        the difference b/w this and set_xtime() being +        set_xtime() being overloaded to set the xtime +        on the brick (this method sets xtime on the +        remote slave) +        """ +        Xattr.lsetxattr(path, '.'.join([cls.GX_NSPACE, uuid, 'xtime']), struct.pack('!II', *mark)) + +    @classmethod      def set_xtime_vec(cls, path, mark_dct):          """vectored (or dictered) version of set_xtime  | 
