summaryrefslogtreecommitdiffstats
path: root/xlators/cluster
diff options
context:
space:
mode:
authorSunny Kumar <sunkumar@redhat.com>2018-07-03 13:58:23 +0530
committerN Balachandran <nbalacha@redhat.com>2018-07-16 05:34:00 +0000
commit7dd08a4dd056f8b721d56012769cf299cd1afb53 (patch)
treed5d9a73217d9d2f98a34b0c34fbc2db1dc42c85d /xlators/cluster
parent6c2deb080aa2df73d3cb2a5f330208d30e9c6759 (diff)
dht: delete tier related internal xattr in dht_getxattr_cbk
Problem : Hot and Cold tier brick changelogs report rsync failure Solution : georep session is failing to sync directory from master volume to slave volume due to lot of changelog retries, solution would be to ignore tier related internal xattrs trusted.tier.fix.layout.complete and trusted.tier.tier-dht.commithash in dht_getxattr_cbk. Change-Id: I3530ffe7c4157584b439486f33ecd82ed8d66aee fixes: bz#1597563 Signed-off-by: Sunny Kumar <sunkumar@redhat.com>
Diffstat (limited to 'xlators/cluster')
-rw-r--r--xlators/cluster/dht/src/dht-common.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/dht-common.c b/xlators/cluster/dht/src/dht-common.c
index fa73c33c5ab..5edd0da33ba 100644
--- a/xlators/cluster/dht/src/dht-common.c
+++ b/xlators/cluster/dht/src/dht-common.c
@@ -4827,6 +4827,21 @@ dht_getxattr_cbk (call_frame_t *frame, void *cookie, xlator_t *this,
dict_del (xattr, conf->mds_xattr_key);
}
+ /* filter out following two xattrs that need not
+ * be visible on the mount point for geo-rep -
+ * trusted.tier.fix.layout.complete and
+ * trusted.tier.tier-dht.commithash
+ */
+
+ if (dict_get (xattr, conf->commithash_xattr_name)) {
+ dict_del (xattr, conf->commithash_xattr_name);
+ }
+
+ if (frame->root->pid >= 0 && dht_is_tier_xlator (this)) {
+ GF_REMOVE_INTERNAL_XATTR
+ ("trusted.tier.fix.layout.complete", xattr);
+ }
+
if (frame->root->pid >= 0) {
GF_REMOVE_INTERNAL_XATTR
("trusted.glusterfs.quota*", xattr);