Bug 1236212 - Migration does not work when EC is used as a tiered volume.
Summary: Migration does not work when EC is used as a tiered volume.
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: tiering
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Dan Lambright
QA Contact: bugs@gluster.org
URL:
Whiteboard:
Depends On:
Blocks: 1242274 1260923 1330765
TreeView+ depends on / blocked
 
Reported: 2015-06-26 20:45 UTC by Dan Lambright
Modified: 2016-06-16 13:17 UTC (History)
1 user (show)

Fixed In Version: glusterfs-3.8rc2
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 1242274 (view as bug list)
Environment:
Last Closed: 2016-06-16 13:17:09 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Dan Lambright 2015-06-26 20:45:05 UTC
Migration does not work when EC is used as a tiered volume. This is because a DHT sets a virtual xatter without the trusted.* prefix, and posix tries to apply it to the file, and fails. Consequently none of the other xattrs in the list are set, including EC's configuration information which is mandatory.

Comment 1 Anand Avati 2015-06-26 20:46:09 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#1) for review on master by Dan Lambright (dlambrig)

Comment 2 Anand Avati 2015-06-26 20:57:37 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#2) for review on master by Dan Lambright (dlambrig)

Comment 3 Anand Avati 2015-06-28 01:50:19 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#3) for review on master by Dan Lambright (dlambrig)

Comment 4 Anand Avati 2015-06-28 01:53:21 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#4) for review on master by Dan Lambright (dlambrig)

Comment 5 Anand Avati 2015-06-28 22:35:38 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#5) for review on master by Dan Lambright (dlambrig)

Comment 6 Anand Avati 2015-06-29 19:12:59 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#6) for review on master by Dan Lambright (dlambrig)

Comment 7 Anand Avati 2015-06-30 15:36:31 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#7) for review on master by Dan Lambright (dlambrig)

Comment 8 Anand Avati 2015-06-30 18:34:22 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#8) for review on master by Dan Lambright (dlambrig)

Comment 9 Anand Avati 2015-07-02 14:01:01 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#9) for review on master by Dan Lambright (dlambrig)

Comment 10 Anand Avati 2015-07-09 13:30:17 UTC
REVIEW: http://review.gluster.org/11433 (cluster/tier: fixes for migration over ec as cold tier) posted (#10) for review on master by Dan Lambright (dlambrig)

Comment 11 Anand Avati 2015-07-13 16:39:00 UTC
COMMIT: http://review.gluster.org/11433 committed in master by Dan Lambright (dlambrig) 
------
commit 67a53554ed75081612b56a5658fd569dc5aaa785
Author: Dan Lambright <dlambrig>
Date:   Fri Jun 26 16:33:49 2015 -0400

    cluster/tier: fixes for migration over ec as cold tier
    
    An opendir is done in rebalance. The graph constructed when
    EC is used in tiering may have no local volumes (if
    all the hot volumes are on one node and all the others on
    another node). Previously the opendir only sent fops down
    the local subvolumes for migration. They must be sent down
    both the hot and cold subvolumes for tiering.
    
    When setxattr2() received a NULL subvolume; this dereferenced
    an uninitialized variable.
    
    When a lookup is done during creation of the destination
    file, the xattr dict is "polluted" with virtual xattrs.
    These cause subsequent xattrs in the new file to not be
    written by posix. They are required by EC.
    
    The inode gfid for "entry_loc" in gf_defrag_migrate_single_file()
    was not initialized. This made underlying translators
    think the gfid was 0, and failed migration.
    
    Change-Id: I6ccda8ca8e43485b9b354341bbfcb302496f632c
    BUG: 1236212
    Signed-off-by: Dan Lambright <dlambrig>
    Reviewed-on: http://review.gluster.org/11433
    Tested-by: NetBSD Build System <jenkins.org>
    Reviewed-by: Raghavendra G <rgowdapp>
    Reviewed-by: Shyamsundar Ranganathan <srangana>

Comment 12 Nagaprasad Sathyanarayana 2015-10-25 14:49:59 UTC
Fix for this BZ is already present in a GlusterFS release. You can find clone of this BZ, fixed in a GlusterFS release and closed. Hence closing this mainline BZ as well.

Comment 13 Niels de Vos 2016-06-16 13:17:09 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.8.0, please open a new bug report.

glusterfs-3.8.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://blog.gluster.org/2016/06/glusterfs-3-8-released/
[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.