Bug 1591193 - lookup not assigning gfid if file is not present in all bricks of replica
Summary: lookup not assigning gfid if file is not present in all bricks of replica
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: replicate
Version: mainline
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Ravishankar N
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks: 1592666 1597117 1598121
TreeView+ depends on / blocked
 
Reported: 2018-06-14 09:09 UTC by Ravishankar N
Modified: 2018-10-23 15:11 UTC (History)
3 users (show)

Fixed In Version: glusterfs-5.0
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
: 1592666 1597117 1598121 (view as bug list)
Environment:
Last Closed: 2018-10-23 15:11:37 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:


Attachments (Terms of Use)

Description Ravishankar N 2018-06-14 09:09:44 UTC
Description of problem:


    commit 20fa80057eb430fd72b4fa31b9b65598b8ec1265 introduced a regression
    wherein if a file is present in only 1 brick of replica *and* doesn't
    have a gfid associated with it, it doesn't get healed upon the next
    lookup from the client. 


Found this while automating a glusto-test case which adds files directly from the backend and expects lookup to assign gfid and complete the heal.

Steps to reproduce:
- Create a 1x3 vol and add different files to different bricks of the replica directly on the backend.
- Try a lookup on the files individually from the client. It will fail with ESTALE.

Comments:
While adding files directly to the bricks is not a supported usecase,  we could hit this in the client FOP path too if the bricks go down at the right time etc.

Comment 1 Worker Ant 2018-06-14 09:18:42 UTC
REVIEW: https://review.gluster.org/20271 (afr: heal gfids when file is not present on all bricks) posted (#1) for review on master by Ravishankar N

Comment 2 Ravishankar N 2018-06-14 09:26:22 UTC
Correction:

s/ESTALE/ENODATA in the bug description

Comment 3 Worker Ant 2018-06-19 06:05:48 UTC
COMMIT: https://review.gluster.org/20271 committed in master by "Pranith Kumar Karampuri" <pkarampu@redhat.com> with a commit message- afr: heal gfids when file is not present on all bricks

commit 20fa80057eb430fd72b4fa31b9b65598b8ec1265 introduced a regression
wherein if a file is present in only 1 brick of replica *and* doesn't
have a gfid associated with it, it doesn't get healed upon the next
lookup from the client. Fix it.

Change-Id: I7d1111dcb45b1b8b8340a7d02558f05df70aa599
fixes: bz#1591193
Signed-off-by: Ravishankar N <ravishankar@redhat.com>

Comment 4 Worker Ant 2018-07-02 06:00:51 UTC
REVIEW: https://review.gluster.org/20431 (afr: heal gfids when file is not present on all bricks) posted (#1) for review on release-4.1 by Ravishankar N

Comment 5 Worker Ant 2018-07-02 06:11:12 UTC
REVISION POSTED: https://review.gluster.org/20431 (afr: heal gfids when file is not present on all bricks) posted (#2) for review on release-4.1 by Ravishankar N

Comment 6 Ravishankar N 2018-07-04 12:12:19 UTC
patch 20431 above has been sent against 1597117

Comment 7 Shyamsundar 2018-10-23 15:11:37 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-5.0, please open a new bug report.

glusterfs-5.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] https://lists.gluster.org/pipermail/announce/2018-October/000115.html
[2] https://www.gluster.org/pipermail/gluster-users/


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