Bug 1200914

Summary: pathinfo is wrong for striped replicated volumes
Product: [Community] GlusterFS Reporter: Joe Julian <joe>
Component: fuseAssignee: bugs <bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: mainlineCC: bchilds, bugs, jthottan, kdhananj, mbukatov, rkavunga
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: All   
OS: All   
Whiteboard:
Fixed In Version: glusterfs-3.9.0 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2017-03-27 18:19:04 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:

Description Joe Julian 2015-03-11 15:58:25 UTC
Description of problem:
Retrieving the pathinfo for a file on a striped replicated volume only shows the first stripe subvolume.

Version-Release number of selected component (if applicable):
3.6.2

How reproducible:
Always

Steps to Reproduce:
1. gluster volume create yuck stripe 3 replica 2 questor:/tmp/yuck_brick{1,2,3,4,5,6} force
2. gluster volume start yuck
3. mount -t glusterfs localhost:yuck /mnt
4. dd if=/dev/urandom of=/mnt/testfile bs=3M count=1024
5. getfattr -m trusted.glusterfs.pathinfo /mnt/testfile

Actual results:
# file: mnt/testfile
trusted.glusterfs.pathinfo="(<DISTRIBUTE:yuck-dht> (<STRIPE:yuck-stripe-0:[131072]> (<REPLICATE:yuck-replicate-0> <POSIX(/tmp/yuck_brick2):questor:/tmp/yuck_brick2/testfile> <POSIX(/tmp/yuck_brick1):questor:/tmp/yuck_brick1/testfile>))"


Expected results:
# file: mnt/testfile
trusted.glusterfs.pathinfo="(<DISTRIBUTE:yuck-dht> (<STRIPE:yuck-stripe-0:[131072]> (<REPLICATE:yuck-replicate-0> <POSIX(/tmp/yuck_brick1):questor:/tmp/yuck_brick1/testfile> <POSIX(/tmp/yuck_brick2):questor:/tmp/yuck_brick2/testfile>)(<REPLICATE:yuck-replicate-1> <POSIX(/tmp/yuck_brick3):questor:/tmp/yuck_brick3/testfile> <POSIX(/tmp/yuck_brick4):questor:/tmp/yuck_brick4/testfile>)(<REPLICATE:yuck-replicate-2> <POSIX(/tmp/yuck_brick5):questor:/tmp/yuck_brick5/testfile> <POSIX(/tmp/yuck_brick6):questor:/tmp/yuck_brick6/testfile>))"

Additional info:
This is blocking hadoop feature development

Comment 1 Bradley Childs 2015-03-11 16:26:03 UTC
Shouldn't the pathinfo also include the start:stop position for each block on the volume also?

Comment 2 Anand Avati 2015-06-25 02:22:23 UTC
REVIEW: http://review.gluster.org/11375 (stripe: Fix wrong pathinfo in striped-replicated volume) posted (#4) for review on master by Ekasit Kijsipongse (ekasit.kijsipongse.th)

Comment 3 Anand Avati 2015-06-25 03:34:22 UTC
REVIEW: http://review.gluster.org/11392 (stripe: Fix wrong pathinfo in striped-replicated volume) posted (#1) for review on release-3.6 by Ekasit Kijsipongse (ekasit.kijsipongse.th)

Comment 4 Vijay Bellur 2016-08-16 12:50:18 UTC
REVIEW: http://review.gluster.org/11375 (stripe: Fix wrong pathinfo in striped-replicated volume) posted (#5) for review on master by Niels de Vos (ndevos)

Comment 5 Niels de Vos 2016-08-16 12:51:30 UTC
3.6 is nearing its End-Of-Life, only important security still make a chance on getting fixed. Moving this to the mainline 'version'. If this needs to get fixed in 3.7 or 3.8 this bug should get cloned.

Note that stripe is not actively maintained (as probably guessed from the response time in this bug and patch). Sharding is the replacement for most (currently) workloads. In future stripe will be completely removed and sharding will be the only option (improvements are coming to cover all workloads).

Comment 6 Vijay Bellur 2016-08-16 19:47:07 UTC
COMMIT: http://review.gluster.org/11375 committed in master by Jeff Darcy (jdarcy) 
------
commit a42644198431b37c9fcad2b1ff4f98b4df16c91e
Author: Ekasit Kijsipongse <ekasit.kijsipongse.th>
Date:   Wed Jun 24 16:12:19 2015 +0700

    stripe: Fix wrong pathinfo in striped-replicated volume
    
    Change-Id: I05b3ba6757d5b786daf7cb3a64e6ac6676e9c997
    BUG: 1200914
    Signed-off-by: Ekasit Kijsipongse <ekasit.kijsipongse.th>
    Reviewed-on: http://review.gluster.org/11375
    Tested-by: Gluster Build System <jenkins.org>
    Reviewed-by: Niels de Vos <ndevos>
    NetBSD-regression: NetBSD Build System <jenkins.org>
    CentOS-regression: Gluster Build System <jenkins.org>
    Smoke: Gluster Build System <jenkins.org>
    Reviewed-by: Jeff Darcy <jdarcy>

Comment 7 Shyamsundar 2017-03-27 18:19:04 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.9.0, please open a new bug report.

glusterfs-3.9.0 has been announced on the Gluster mailinglists [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://lists.gluster.org/pipermail/gluster-users/2016-November/029281.html
[2] https://www.gluster.org/pipermail/gluster-users/