diff options
author | Mohit Agrawal <moagrawa@redhat.com> | 2018-05-30 15:09:29 +0530 |
---|---|---|
committer | Shyamsundar Ranganathan <srangana@redhat.com> | 2018-08-16 14:31:37 +0000 |
commit | b21b83af0baab3c651b6fd2e4657ca66080a7bcb (patch) | |
tree | 410cc1153766cc4f775ca06257db22ff56667cfb /xlators/cluster | |
parent | e09e3549c293f0d7f448ebb70a4e9fcc671ea098 (diff) |
dht: Delete MDS internal xattr from dict in dht_getxattr_cbk
Problem: At the time of fetching xattr to heal xattr by afr
it is not able to fetch xattr because posix_getxattr
has a check to ignore if xattr name is MDS
Solution: To ignore same xattr update a check in dht_getxattr_cbk
instead of having a check in posix_getxattr
Backport of:
> BUG: 1584098
> Change-Id: I86cd2b2ee08488cb6c12f407694219d57c5361dc
> Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
Change-Id: I86cd2b2ee08488cb6c12f407694219d57c5361dc
fixes: bz#1611116
Signed-off-by: Mohit Agrawal <moagrawa@redhat.com>
Diffstat (limited to 'xlators/cluster')
-rw-r--r-- | xlators/cluster/dht/src/dht-common.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/dht-common.c b/xlators/cluster/dht/src/dht-common.c index 47521d160ee..5a5ddacd7f6 100644 --- a/xlators/cluster/dht/src/dht-common.c +++ b/xlators/cluster/dht/src/dht-common.c @@ -4395,6 +4395,10 @@ dht_getxattr_cbk (call_frame_t *frame, void *cookie, xlator_t *this, dict_del (xattr, conf->xattr_name); } + if (dict_get (xattr, conf->mds_xattr_key)) { + dict_del (xattr, conf->mds_xattr_key); + } + if (frame->root->pid >= 0) { GF_REMOVE_INTERNAL_XATTR ("trusted.glusterfs.quota*", xattr); |