Bug 1286985 - Tier: ec xattrs are set on a newly created file present in the non-ec hot tier
Tier: ec xattrs are set on a newly created file present in the non-ec hot tier
Status: CLOSED CURRENTRELEASE
Product: GlusterFS
Classification: Community
Component: disperse (Show other bugs)
3.7.6
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Pranith Kumar K
:
Depends On: 1286910
Blocks: 1286927
  Show dependency treegraph
 
Reported: 2015-12-01 04:45 EST by Pranith Kumar K
Modified: 2016-04-19 03:49 EDT (History)
2 users (show)

See Also:
Fixed In Version: glusterfs-3.7.7
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1286910
Environment:
Last Closed: 2016-04-19 03:49:29 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Pranith Kumar K 2015-12-01 04:45:41 EST
+++ This bug was initially created as a clone of Bug #1286910 +++

Description of problem:
A newly created file on a tiered volume with distributed-disperse cold tier and dist-rep hot tier has EC xattrs set on it even though it exists on a hot tier.

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


How reproducible:
Every time

Steps to Reproduce:
1. Create a distributed-disperse (2x(4+2)) volume and attach a dist-rep hot tier to it
2. Start the volume and FUSE mount it.
3. Create a file on the mount point. Internally, tier first creates a linkto file on the cold tier and then creates the actual data file on the hot tier.
4. Check the xattrs set on the file on the hot tier bricks

Actual results:
The file has EC xattrs set on it

Expected results:
No EC xattrs should be present on files in non-EC subvols

Additional info:

--- Additional comment from Vijay Bellur on 2015-12-01 01:12:10 EST ---

REVIEW: http://review.gluster.org/12831 (cluster/ec: Create copy of dict for setting internal xattrs) posted (#1) for review on master by Pranith Kumar Karampuri (pkarampu@redhat.com)
Comment 1 Vijay Bellur 2015-12-01 05:08:44 EST
REVIEW: http://review.gluster.org/12835 (cluster/ec: Create copy of dict for setting internal xattrs) posted (#1) for review on release-3.7 by Pranith Kumar Karampuri (pkarampu@redhat.com)
Comment 2 Vijay Bellur 2015-12-01 05:28:17 EST
REVIEW: http://review.gluster.org/12835 (cluster/ec: Create copy of dict for setting internal xattrs) posted (#2) for review on release-3.7 by Pranith Kumar Karampuri (pkarampu@redhat.com)
Comment 3 Vijay Bellur 2015-12-01 12:22:03 EST
COMMIT: http://review.gluster.org/12835 committed in release-3.7 by Xavier Hernandez (xhernandez@datalab.es) 
------
commit 1a88359040ef1c68bcbe86a01d13a996a8adbb27
Author: Pranith Kumar K <pkarampu@redhat.com>
Date:   Tue Dec 1 10:59:41 2015 +0530

    cluster/ec: Create copy of dict for setting internal xattrs
    
               Backport of http://review.gluster.com/12831
    
    Problem:
    Ec takes a ref of the request xdata and sets trusted.ec.version/algo etc xattrs
    as part of it. But this request xdata could be using same dictionary to do the
    operation on multiple subvolumes, due to which other subvolumes will have
    internal xattrs of ec in it and will be created on subvols where they are not
    supposed to appear.
    
    Fix:
    Take a copy of the request xdata/dict to prevent this from happening.
    
    Most of the debugging work and test script is contributed by Nitya.
    
    BUG: 1286985
    Change-Id: Ie9b7d9f063434789f6c5902c3a68ececdc3c7efa
    Signed-off-by: Pranith Kumar K <pkarampu@redhat.com>
    Reviewed-on: http://review.gluster.org/12835
    Tested-by: NetBSD Build System <jenkins@build.gluster.org>
    Tested-by: Gluster Build System <jenkins@build.gluster.com>
    Reviewed-by: Xavier Hernandez <xhernandez@datalab.es>
Comment 4 Kaushal 2016-04-19 03:49:29 EDT
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.7.7, please open a new bug report.

glusterfs-3.7.7 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] https://www.gluster.org/pipermail/gluster-users/2016-February/025292.html
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user

Note You need to log in before you can comment on or make changes to this bug.