Bug 1235216

Summary: tar on a glusterfs mount displays "file changed as we read it" even though the file was not changed
Product: [Community] GlusterFS Reporter: Krutika Dhananjay <kdhananj>
Component: replicateAssignee: bugs <bugs>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: high Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, gluster-bugs, pkarampu, rcyriac, ssampat, vagarwal
Target Milestone: ---Keywords: Reopened, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-3.8rc2 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 1223757
: 1235601 (view as bug list) Environment:
Last Closed: 2016-06-16 13:15:21 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: 1212842, 1223757    
Bug Blocks: 1202842, 1223636, 1235601    

Description Krutika Dhananjay 2015-06-24 10:20:37 UTC
+++ This bug was initially created as a clone of Bug #1223757 +++

+++ This bug was initially created as a clone of Bug #1212842 +++

Description of problem:
-----------------------

tar command on the glusterfs mount point is seen to report the following error on some files -

tar: ./linux-3.19.4/tools/perf/scripts/perl: file changed as we read it

There were no changes made to files while the tar command was in progress. Reproducible on 1x2 volume. Unable to reproduce on a pure distribute volume.

See below for volume information -

# gluster v i test
 
Volume Name: test
Type: Replicate
Volume ID: f844808b-0d2e-40ce-9331-eddfb2b72855
Status: Started
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: vm5-rhsqa13:/rhs/brick5/b1
Brick2: vm6-rhsqa13:/rhs/brick5/b1
Options Reconfigured:
cluster.consistent-metadata: on
features.quota: on
features.uss: enable
client.event-threads: 4
server.event-threads: 5

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

glusterfs-3.7dev-0.965.git2788ddd.el6.x86_64

How reproducible:
------------------

Tried a couple of times, on 6x3 and 1x2 volumes. Successfully reproducible.


Steps to Reproduce:
--------------------

1. Create replicate or distributed-replicate volume and set the option `cluster.consistent-metadata' to on. Start the volume.
2. Fuse mount the volume.
3. Download linux kernel and untar it on the mount point.
4. Compile the kernel and try to create a tar.

Actual results:
----------------

While the tar command is running, the above described messages are seen for many files.

Expected results:
------------------

tar is expected to run successfully.

Comment 1 Krutika Dhananjay 2015-06-24 10:21:55 UTC
http://review.gluster.org/#/c/11373/

Comment 2 Anand Avati 2015-06-25 00:11:03 UTC
COMMIT: http://review.gluster.org/11373 committed in master by Vijay Bellur (vbellur) 
------
commit 4c751009f668910a734cd400c10e8b3bdd6360a1
Author: Krutika Dhananjay <kdhananj>
Date:   Wed Jun 24 08:02:51 2015 +0530

    cluster/afr: Pick gfid from poststat during fresh lookup for read child calculation
    
    Change-Id: I12c1e4f67f4ec4affbe13d7daf871044a8a2a12e
    BUG: 1235216
    Signed-off-by: Krutika Dhananjay <kdhananj>
    Reviewed-on: http://review.gluster.org/11373
    Reviewed-by: Pranith Kumar Karampuri <pkarampu>
    Tested-by: NetBSD Build System <jenkins.org>

Comment 3 Nagaprasad Sathyanarayana 2015-10-25 15:09:32 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 4 Niels de Vos 2016-06-16 13:15:21 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