glusterfs/xlators
Ravishankar N 1a8fa910cc afr: send the correct iatt values in fsync cbk
Problem:
afr unwinds the fsync fop with an iatt buffer from one of its children
on whom fsync was successful. But that child might not be a valid read
subvolume for that inode because of pending heals or because it happens
to be the arbiter brick etc. Thus we end up sending the wrong iatt to
mdcache which will in turn serve it to the application on a subsequent
stat call as reported in the BZ.

Fix:
Pick a child on whom the fsync was successful *and* that is readable as
indicated in the inode context.

Change-Id: Ie8647289219cebe02dde4727e19a729b3353ebcf
BUG: 1449329
RCA'ed-by: Miklós Fokin <miklos.fokin@appeartv.com>
Signed-off-by: Ravishankar N <ravishankar@redhat.com>
Reviewed-on: https://review.gluster.org/17227
CentOS-regression: Gluster Build System <jenkins@build.gluster.org>
Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org>
Smoke: Gluster Build System <jenkins@build.gluster.org>
2017-05-11 06:34:47 +00:00
..
cluster afr: send the correct iatt values in fsync cbk 2017-05-11 06:34:47 +00:00
debug debug/error-gen: Don't need to convert error string to int in every fop 2017-05-08 13:15:12 +00:00
encryption coreutils: use coreutils instead of duplicate code 2017-05-05 15:04:17 +00:00
experimental Initialize path, since coverty detect a code path where 2017-02-20 18:32:58 -05:00
features features/changelog: Add xattr as special type in changelog entry 2017-05-10 12:55:46 +00:00
lib/src quota: add version to quota xattrs 2015-11-02 00:54:35 -08:00
meta meta: free this->private in fini() 2017-04-14 17:35:34 -04:00
mgmt glusterd: Make reset-brick work correctly if brick-mux is on 2017-05-10 18:58:21 +00:00
mount mount/fuse: Handle racing notify on more than one graph properly 2017-05-10 09:14:30 +00:00
nfs nfs/nlm: log the caller_name if nlm_client_t can be found 2017-05-10 12:28:23 +00:00
performance performance/read-ahead: prevent stale data being returned to application. 2017-05-09 10:06:39 +00:00
playground build: out-of-tree builds generates files in the wrong directory 2016-09-18 09:34:37 -07:00
protocol Remove uneeded gotos, as it jump to the next line 2017-05-08 13:14:21 +00:00
storage posix: Send SIGKILL in 2nd attempt 2017-05-09 09:04:48 +00:00
system Remove unused conditionnal 2017-02-26 11:30:38 -05:00
Makefile.am build: conditionally build legacy gNFS server and associated sub-packaging 2017-04-28 14:08:41 +00:00
xlator.sym build: export minimum symbols from xlators for correct resolution 2015-09-24 07:37:42 -07:00