Bug 1272460

Summary: Disk usage mismatching after self-heal
Product: [Community] GlusterFS Reporter: Ravishankar N <ravishankar>
Component: replicateAssignee: Ravishankar N <ravishankar>
Status: CLOSED CURRENTRELEASE QA Contact: RajeshReddy <rmekala>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, mselvaga, mzywusko, rmekala
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.8rc2 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1275907 1275921 (view as bug list) Environment:
Last Closed: 2016-06-16 13:40:19 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: 1275907, 1275921    

Description Ravishankar N 2015-10-16 12:55:57 UTC
Description of problem:
Reported by Manikandan Selvaganesh <mselvaga>

How reproducible:
Always

Steps to Reproduce:
1.Create a 1x2 replica and mount it
2. Kill a brick
3. From the mount ,dd if=/dev/zero of=file bs=1024 count=40240
4. restart the brick, trigger heal
5. check disk usage (du -sh) of the bricks.

Actual results:
disk usage discrepancy

Expected results:
disk usage must be nearly identical.

Comment 1 Vijay Bellur 2015-10-16 12:59:47 UTC
REVIEW: http://review.gluster.org/12371 (afr: write zeros to sink for non-sparse files) posted (#1) for review on master by Ravishankar N (ravishankar)

Comment 2 Vijay Bellur 2015-10-19 11:06:40 UTC
REVIEW: http://review.gluster.org/12371 (afr: write zeros to sink for non-sparse files) posted (#2) for review on master by Ravishankar N (ravishankar)

Comment 3 Vijay Bellur 2015-10-21 16:40:51 UTC
REVIEW: http://review.gluster.org/12371 (afr: write zeros to sink for non-sparse files) posted (#3) for review on master by Ravishankar N (ravishankar)

Comment 4 Vijay Bellur 2015-10-27 10:58:12 UTC
REVIEW: http://review.gluster.org/12371 (afr: write zeros to sink for non-sparse files) posted (#4) for review on master by Ravishankar N (ravishankar)

Comment 5 Vijay Bellur 2015-10-28 00:44:24 UTC
REVIEW: http://review.gluster.org/12371 (afr: write zeros to sink for non-sparse files) posted (#5) for review on master by Ravishankar N (ravishankar)

Comment 6 Vijay Bellur 2015-10-28 13:39:46 UTC
COMMIT: http://review.gluster.org/12371 committed in master by Jeff Darcy (jdarcy) 
------
commit 641b3a9164227db52df1aab05795c90d06b315f2
Author: Ravishankar N <ravishankar>
Date:   Wed Oct 21 21:05:46 2015 +0530

    afr: write zeros to sink for non-sparse files
    
    Problem: If a file is created with zeroes ('dd', 'fallocate' etc.) when
    a brick is down, the self-heal does not write the zeroes to the sink
    after it comes up. Consequenty, there is a mismatch in disk-usage
    amongst the bricks of the replica.
    
    Fix: If we definitely know that the file is not sparse, then write the
    zeroes to the sink even if the checksums match.
    
    Change-Id: Ic739b3da5dbf47d99801c0e1743bb13aeb3af864
    BUG: 1272460
    Signed-off-by: Ravishankar N <ravishankar>
    Reviewed-on: http://review.gluster.org/12371
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>
    Tested-by: Gluster Build System <jenkins.com>

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