From 2c1131e5868e46cfc806fb3a1cb63a5e554b4d6c Mon Sep 17 00:00:00 2001 From: Mohit Agrawal Date: Wed, 30 May 2018 15:09:29 +0530 Subject: 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 BUG: 1584098 Change-Id: I86cd2b2ee08488cb6c12f407694219d57c5361dc fixes: bz#1584098 Signed-off-by: Mohit Agrawal --- xlators/cluster/dht/src/dht-common.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'xlators/cluster/dht/src') diff --git a/xlators/cluster/dht/src/dht-common.c b/xlators/cluster/dht/src/dht-common.c index fdf10d5cfed..9165164578f 100644 --- a/xlators/cluster/dht/src/dht-common.c +++ b/xlators/cluster/dht/src/dht-common.c @@ -4544,6 +4544,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); -- cgit