Bug 1286017

Summary: We need to skip data self-heal for arbiter bricks
Product: [Community] GlusterFS Reporter: Ravishankar N <ravishankar>
Component: replicateAssignee: Ravishankar N <ravishankar>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.8rc2 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1286169 (view as bug list) Environment:
Last Closed: 2016-06-16 13:47:06 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:    
Bug Blocks: 1286169    

Description Ravishankar N 2015-11-27 09:04:26 UTC
Description of problem:

The arbiter brick anyway stores zero-byte files. There's no point of sending writes to the arbiter brick, only for it to unwind the writes without performing any action.

Comment 1 Vijay Bellur 2015-11-27 09:05:48 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#1) for review on master by Ravishankar N (ravishankar)

Comment 2 Vijay Bellur 2015-12-10 13:04:18 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#2) for review on master by Ravishankar N (ravishankar)

Comment 3 Vijay Bellur 2016-01-11 13:04:45 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#3) for review on master by Ravishankar N (ravishankar)

Comment 4 Vijay Bellur 2016-01-11 13:08:14 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#4) for review on master by Ravishankar N (ravishankar)

Comment 5 Vijay Bellur 2016-01-11 15:49:04 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#5) for review on master by Ravishankar N (ravishankar)

Comment 6 Vijay Bellur 2016-01-12 10:44:51 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#6) for review on master by Ravishankar N (ravishankar)

Comment 7 Vijay Bellur 2016-01-18 10:43:08 UTC
REVIEW: http://review.gluster.org/12777 (afr: skip healing data blocks for arbiter) posted (#7) for review on master by Ravishankar N (ravishankar)

Comment 8 Vijay Bellur 2016-01-18 13:44:53 UTC
COMMIT: http://review.gluster.org/12777 committed in master by Pranith Kumar Karampuri (pkarampu) 
------
commit b95ad51e00d6076d37809bcc50b89fee1cf248ef
Author: Ravishankar N <ravishankar>
Date:   Mon Jan 11 12:58:16 2016 +0000

    afr: skip healing data blocks for arbiter
    
    1 ....but still do other parts of data-self-heal like restoring the time
    and undo pending xattrs.
    
    2. Perform undo_pending inside inodelks.
    
    3. If arbiter is the only sink, do these other parts of data-self-heal
    inside a single lock-unlock sequence.
    
    Change-Id: I64c9d5b594375f852bfb73dee02c66a9a67a7176
    BUG: 1286017
    Signed-off-by: Ravishankar N <ravishankar>
    Reviewed-on: http://review.gluster.org/12777
    Smoke: Gluster Build System <jenkins.com>
    NetBSD-regression: NetBSD Build System <jenkins.org>
    CentOS-regression: Gluster Build System <jenkins.com>
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>

Comment 9 Niels de Vos 2016-06-16 13:47:06 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