[Bugs] [Bug 1396952] I/ O errors on FUSE mount point when reading and writing from 2 clients
bugzilla at redhat.com
bugzilla at redhat.com
Tue Nov 29 04:10:27 UTC 2016
https://bugzilla.redhat.com/show_bug.cgi?id=1396952
--- Comment #4 from Worker Ant <bugzilla-bot at gluster.org> ---
COMMIT: http://review.gluster.org/15892 committed in master by Pranith Kumar
Karampuri (pkarampu at redhat.com)
------
commit 570aefeb280e53e98cb5060cf384f1d74379a521
Author: Poornima G <pgurusid at redhat.com>
Date: Mon Nov 21 11:49:35 2016 +0530
afr: Fix the EIO that can occur in afr_inode_refresh as a result
of cache invalidation(upcall).
Issue:
------
When a cache invalidation is recieved as a result of changing
pending xattr, the read_subvol is reset. Consider the below chain
of execution:
CHILD_DOWN
...
afr_readv
...
afr_inode_refresh
...
afr_inode_read_subvol_reset <- as a result of pending xattr set by
some other client GF_EVENT_UPCALL will
be sent
afr_refresh_done -> this results in an EIO, as the read subvol was
reset by the end of the afr_inode_refresh
Solution:
---------
When GF_EVENT_UPCALL is recieved, instead of resetting read_subvol,
set a variable need_refresh in inode_ctx, the next time some one
starts a txn, along with event gen, need_rrefresh also needs to
be checked.
Change-Id: Ifda21a7a8039b8874215e1afa4bdf20f7d991b58
BUG: 1396952
Signed-off-by: Poornima G <pgurusid at redhat.com>
Reviewed-on: http://review.gluster.org/15892
Reviewed-by: Ravishankar N <ravishankar at redhat.com>
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: Pranith Kumar Karampuri <pkarampu at redhat.com>
--
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=0gFWJacSSB&a=cc_unsubscribe
More information about the Bugs
mailing list