Bug 996371

Summary: Dist-geo-rep : imaster in cascaded geo-rep fails to do first xsync crawl and consequently fail to sync files to level2 slave
Product: [Community] GlusterFS Reporter: Venky Shankar <vshankar>
Component: geo-replicationAssignee: Csaba Henk <csaba>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: mainlineCC: aavati, csaba, gluster-bugs, rhs-bugs, rwheeler, sdharane, vkoppad
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.5.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 989906 Environment:
Last Closed: 2014-04-17 11:45:46 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 989906    
Bug Blocks: 990900    

Comment 1 Anand Avati 2013-08-13 05:57:17 UTC
REVIEW: http://review.gluster.org/5591 (features/marker: force xtime updates (configurable) for client-pid = -1) posted (#1) for review on master by Venky Shankar (vshankar)

Comment 2 Anand Avati 2013-08-13 05:57:46 UTC
REVIEW: http://review.gluster.org/5592 (gsyncd / geo-rep: "disjoint" cascading geo-replication sessions) posted (#1) for review on master by Venky Shankar (vshankar)

Comment 3 Anand Avati 2013-09-03 09:57:01 UTC
REVIEW: http://review.gluster.org/5591 (features/marker: force xtime updates (configurable) for client-pid = -1) posted (#2) for review on master by Venky Shankar (vshankar)

Comment 4 Anand Avati 2013-09-03 09:58:59 UTC
REVIEW: http://review.gluster.org/5592 (gsyncd / geo-rep: "disjoint" cascading geo-replication sessions) posted (#2) for review on master by Venky Shankar (vshankar)

Comment 5 Anand Avati 2013-09-05 03:43:54 UTC
COMMIT: http://review.gluster.org/5591 committed in master by Anand Avati (avati) 
------
commit a6a74c926be767decbcf55dc7d95228c6a62df12
Author: Venky Shankar <vshankar>
Date:   Mon Aug 12 22:18:53 2013 +0530

    features/marker: force xtime updates (configurable) for client-pid = -1
    
    This is required by Geo-Replication that does auxillary mount
    with client-pid as -1 (which has special treatment at specific
    places in GlusterFS), to trigger xtime updates on the intermediate
    master in a cascading setup.
    
    Marker too had a check to "not" mark updates for geo-replication's
    auxillary mounts. With the new geo-replication design, xtimes are
    not set by the master on the slave for all entities. Due to this
    cascading setups were broken.
    
    This patch introduces "geo-replication.ignore-pid-check" option
    as a "override" for the client-pid check for gsyncd's client-pid.
    When this options is enabled, marker start "marking" even if the
    updates are from the special client.
    
    Geo-Replication on the detection of itself being an intermediate
    master, enables this option.
    
    Change-Id: I9f7140edd12fef5480595ee0f93f35b94cdb8345
    BUG: 996371
    Signed-off-by: Venky Shankar <vshankar>
    Reviewed-on: http://review.gluster.org/5591
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Avra Sengupta <asengupt>
    Tested-by: Avra Sengupta <asengupt>
    Reviewed-by: Anand Avati <avati>

Comment 6 Anand Avati 2013-09-05 03:49:53 UTC
COMMIT: http://review.gluster.org/5592 committed in master by Anand Avati (avati) 
------
commit 2f305eaed9805ff32c95680c5ac83e001d100cdc
Author: Venky Shankar <vshankar>
Date:   Tue Aug 13 11:09:31 2013 +0530

    gsyncd / geo-rep: "disjoint" cascading geo-replication sessions
    
    Slave's xtime is now stored on the master itself (and that too only on
    the root), which implies it cannot be propogated to the cascaded slave.
    Thus the intermediate master now makes use of it's own volume information
    to propogate volume-mark and xtime.
    
    On starting Geo-Replication "geo-replication.ignore-pid-check" marker
    option is enabled, which is an override for the client-pid check in
    marker. This options triggers marker update only for geo-replication
    auxillary mount (client-pid == -1). Since gsyncd not does setxattr()
    directly on the bricks, this option won't trigger a chain of spurious
    metadata updates that would need to be processed by gsyncd.
    
    Change-Id: If50c5ef275dfb6b4ff4fd35be2565587e2fdf3e1
    BUG: 996371
    Original Author: Venky Shankar <vshankar>
    Signed-off-by: Venky Shankar <vshankar>
    Reviewed-on: http://review.gluster.org/5592
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Avra Sengupta <asengupt>
    Tested-by: Avra Sengupta <asengupt>
    Reviewed-by: Anand Avati <avati>

Comment 7 Niels de Vos 2014-04-17 11:45:46 UTC
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.5.0, please reopen this bug report.

glusterfs-3.5.0 has been announced on the Gluster Developers mailinglist [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://thread.gmane.org/gmane.comp.file-systems.gluster.devel/6137
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user