Bug 1104707

Summary: Dist-geo-rep : some of the files not accessible on slave after the geo-rep sync from master to slave.
Product: [Community] GlusterFS Reporter: Ravishankar N <ravishankar>
Component: geo-replicationAssignee: Ravishankar N <ravishankar>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: mainlineCC: aavati, avishwan, bugs, csaba, david.macdonald, gluster-bugs, nlevinki, nsathyan, ssamanta
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: glusterfs-3.6.0beta1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1102747
: 1104959 (view as bug list) Environment:
Last Closed: 2014-11-11 08:34:15 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: 1102747    
Bug Blocks: 1104959    

Comment 1 Anand Avati 2014-06-04 14:27:26 UTC
REVIEW: http://review.gluster.org/7978 (features/gfid-access: calloc gfid and set in xdata) posted (#1) for review on master by Ravishankar N (ravishankar)

Comment 2 Anand Avati 2014-06-04 15:14:08 UTC
REVIEW: http://review.gluster.org/7978 (features/gfid-access: calloc gfid and set in xdata) posted (#2) for review on master by Ravishankar N (ravishankar)

Comment 3 Anand Avati 2014-06-08 14:53:14 UTC
COMMIT: http://review.gluster.org/7978 committed in master by Vijay Bellur (vbellur) 
------
commit bf5a9778c4c05ddd1f2b371abb3d5f70fedf4752
Author: Ravishankar N <ravishankar>
Date:   Wed Jun 4 19:53:50 2014 +0530

    features/gfid-access: calloc gfid and set in xdata
    
    Problem: the gfid passed to ga_fill_tmp_loc() was a stack variable which
    the function set in the xdata dictionary. Accessing it in a later point
    in time gave unexpected values.
    
    This was easy to hit when AFR was involved like so:
    ga_mknod()--->xxx-->afr_mknod():
    In afr_mknod transaction, once the stack-winds for the lock-phase are sent,
    the gfid in xdata becomes out of scope. When we send the actual op i.e.
    afr_mknod_wind(), the gfid in xdata is stale, causing posix to set junk
    gfids on the files.
    
    Fix:
    calloc the gfid and set it in the dict.
    
    Thanks to Pranith for the RCA!
    
    Change-Id: I0291fce34745268dc63095fc41fe31c7213dd5e1
    BUG: 1104707
    Signed-off-by: Ravishankar N <ravishankar>
    Reviewed-on: http://review.gluster.org/7978
    Reviewed-by: Raghavendra G <rgowdapp>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>
    Reviewed-by: Venky Shankar <vshankar>
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Vijay Bellur <vbellur>

Comment 4 Niels de Vos 2014-09-22 12:41:59 UTC
A beta release for GlusterFS 3.6.0 has been released. Please verify if the release solves this bug report for you. In case the glusterfs-3.6.0beta1 release does not have a resolution for this issue, leave a comment in this bug and move the status to ASSIGNED. If this release fixes the problem for you, leave a note and change the status to VERIFIED.

Packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update (possibly an "updates-testing" repository) infrastructure for your distribution.

[1] http://supercolony.gluster.org/pipermail/gluster-users/2014-September/018836.html
[2] http://supercolony.gluster.org/pipermail/gluster-users/

Comment 5 Niels de Vos 2014-11-11 08:34:15 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.6.1, please reopen this bug report.

glusterfs-3.6.1 has been announced [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://supercolony.gluster.org/pipermail/gluster-users/2014-November/019410.html
[2] http://supercolony.gluster.org/mailman/listinfo/gluster-users