[Bugs] [Bug 1425697] New: dht_setxattr returns EINVAL when a file is deleted during the FOP
bugzilla at redhat.com
bugzilla at redhat.com
Wed Feb 22 07:07:00 UTC 2017
https://bugzilla.redhat.com/show_bug.cgi?id=1425697
Bug ID: 1425697
Summary: dht_setxattr returns EINVAL when a file is deleted
during the FOP
Product: Red Hat Gluster Storage
Version: 3.2
Component: distribute
Assignee: nbalacha at redhat.com
Reporter: nbalacha at redhat.com
QA Contact: tdesala at redhat.com
CC: bugs at gluster.org, rhs-bugs at redhat.com,
storage-qa-internal at redhat.com
Depends On: 1421653
Blocks: 1424915, 1424921, 1424925
+++ This bug was initially created as a clone of Bug #1421653 +++
Description of problem:
dht_setxattr returns EINVAL when a file is deleted after the FOP hits
dht_setxattr.
Version-Release number of selected component (if applicable):
How reproducible:
Consistently
Steps to Reproduce:
1. Create a dist-rep volume (I used a 4x2)
2. Fuse mount the volume on 2 different mount points (/mnt/g1 and /mnt/g2)
3. gdb into the mount process for /mnt/g2 and set a breakpoint on dht_setxattr
4. From /mnt/g1, touch file1
5. From /mnt/g2, set an xattr on file1. This will hit the breakpoint set in (3)
6. From /mnt/g1, rm file1
7. Continue in gdb
Actual results:
[root at rhgs313-6 g2]# setfattr -n trusted.test.yahh -v "testing 1 2 3..." file1
setfattr: file1: Invalid argument
Expected results:
[root at rhgs313-6 g2]# setfattr -n trusted.test.yahh -v "testing 1 2 3..." file1
setfattr: file1: No such file or directory
Additional info:
The same issue shows up in dht_removexattr as well. (Repeat the test steps with
the breakpoint in dht_removexattr and "setxfattr -x" )
--- Additional comment from Nithya Balachandran on 2017-02-13 06:18:29 EST ---
RCA:
op_errno is not set to local->op_errno in dht_setxattr2 immediately after the
frame check. This causes the function to unwind with op_errno set to EINVAL in
case of error.
The null subvol check has also been moved to after op_errno is set to
local->op_errno in dht_removexattr2 .
--- Additional comment from Worker Ant on 2017-02-13 06:22:04 EST ---
REVIEW: https://review.gluster.org/16610 (cluster/dht Correct error assignment
in *xattr2 functions) posted (#1) for review on master by N Balachandran
(nbalacha at redhat.com)
--- Additional comment from Worker Ant on 2017-02-13 06:22:49 EST ---
REVIEW: https://review.gluster.org/16610 (cluster/dht Fix error assignment in
dht_*xattr2 functions) posted (#2) for review on master by N Balachandran
(nbalacha at redhat.com)
--- Additional comment from Worker Ant on 2017-02-15 20:53:52 EST ---
COMMIT: https://review.gluster.org/16610 committed in master by Shyamsundar
Ranganathan (srangana at redhat.com)
------
commit 028626a86ea409f908783b9007c02877f20be43e
Author: N Balachandran <nbalacha at redhat.com>
Date: Mon Feb 13 16:49:06 2017 +0530
cluster/dht Fix error assignment in dht_*xattr2 functions
Corrected the op_errno assignments and NULL checks in
the dht_sexattr2 and dht_removexattr2 functions. Earlier,
they unwound with the default EINVAL op_errno if the
file had been deleted.
Change-Id: Iaf837a473d769cea40132487a966c7f452990071
BUG: 1421653
Signed-off-by: N Balachandran <nbalacha at redhat.com>
Reviewed-on: https://review.gluster.org/16610
Smoke: Gluster Build System <jenkins at build.gluster.org>
NetBSD-regression: NetBSD Build System <jenkins at build.gluster.org>
CentOS-regression: Gluster Build System <jenkins at build.gluster.org>
Reviewed-by: MOHIT AGRAWAL <moagrawa at redhat.com>
Reviewed-by: Shyamsundar Ranganathan <srangana at redhat.com>
Referenced Bugs:
https://bugzilla.redhat.com/show_bug.cgi?id=1421653
[Bug 1421653] dht_setxattr returns EINVAL when a file is deleted during the
FOP
https://bugzilla.redhat.com/show_bug.cgi?id=1424915
[Bug 1424915] dht_setxattr returns EINVAL when a file is deleted during the
FOP
https://bugzilla.redhat.com/show_bug.cgi?id=1424921
[Bug 1424921] dht_setxattr returns EINVAL when a file is deleted during the
FOP
https://bugzilla.redhat.com/show_bug.cgi?id=1424925
[Bug 1424925] dht_setxattr returns EINVAL when a file is deleted during the
FOP
--
You are receiving this mail because:
You are on the CC list for the bug.
Unsubscribe from this bug https://bugzilla.redhat.com/token.cgi?t=gbFkpSYIuD&a=cc_unsubscribe
More information about the Bugs
mailing list