Bug 1612054

Summary: Test case bug-1586020-mark-dirty-for-entry-txn-on-quorum-failure.t failure
Product: [Community] GlusterFS Reporter: Karthik U S <ksubrahm>
Component: replicateAssignee: Karthik U S <ksubrahm>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, pasik, pkarampu, ravishankar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: glusterfs-5.0 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-23 15:16:17 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:

Description Karthik U S 2018-08-03 11:04:25 UTC
Description of problem:

The test case tests/bugs/replicate/bug-1586020-mark-dirty-for-entry-txn-on-quorum-failure.t will fail in some scenarios for the tests

EXPECT "000000000000000000000001" get_hex_xattr trusted.afr.dirty $B0/${V0}2
EXPECT "000000010000000100000000" get_hex_xattr trusted.afr.$V0-client-0 $B0/${V0}2/file$i
EXPECT "000000010000000100000000" get_hex_xattr trusted.afr.$V0-client-1 $B0/${V0}2/file$i

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


How reproducible:


Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Worker Ant 2018-08-03 11:33:18 UTC
REVIEW: https://review.gluster.org/20631 (cluster/afr: Fix bug-1586020-mark-dirty-for-entry-txn-on-quorum-failure.t) posted (#1) for review on master by Karthik U S

Comment 2 Worker Ant 2018-08-20 14:18:06 UTC
COMMIT: https://review.gluster.org/20631 committed in master by "Atin Mukherjee" <amukherj> with a commit message- cluster/afr: Fix bug-1586020-mark-dirty-for-entry-txn-on-quorum-failure.t

Problem:
In line #13 of the test case, it checks whether the file is present
on first 2 bricks or not. If it is not present on even one of the bricks
it will break the loop and checks for the dirty marking on the parent
on the 3rd brick and checks for file not present on the 1st and 2nd
bricks. The below scenario can happen in this case:
- File gets created on 1st and 3rd bricks
- In line #13 it sees file is not present on both 1st & 2nd bricks and
  breaks the loop
- In line #51 test fails because the file will be present on the 1st brick
- In line #53 test will fail because the file creation was not failed on
  quorum bricks and dirty marking will not be there on the parent on 3rd
  brick

Fix:
Don't break from the loop if file is present on either brick 1 or brick 2.

Change-Id: I918068165e4b9124c1de86cfb373801b5b432bd9
fixes: bz#1612054
Signed-off-by: karthik-us <ksubrahm>

Comment 3 Shyamsundar 2018-10-23 15:16:17 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/