summaryrefslogtreecommitdiffstats
path: root/libglusterfs/src/common-utils.h
diff options
context:
space:
mode:
authorRavishankar N <ravishankar@redhat.com>2016-09-27 10:39:58 +0530
committerPranith Kumar Karampuri <pkarampu@redhat.com>2016-09-29 00:10:18 -0700
commit44dbec60a2cd8fe6a68ff30cb6b8a1cf67b717be (patch)
tree8f42a93bf4f07e7fcc0b0bc081a0fe00386b0326 /libglusterfs/src/common-utils.h
parentc5c76437a904595994bc6334b0609f727be8b6fa (diff)
afr: Ignore gluster internal (virtual) xattrs in metadata heal check
Backport of http://review.gluster.org/#/c/15548/ Problem: In arbiter configuration, posix-xlator in the arbiter brick always sets the GF_CONTENT_KEY in the response dict with a value 0. If the file size on the data bricks is more than quick-read's max-file-size (64kb default), those bricks don't set the key. Because of this difference in the no. of dict elements, afr triggers metadata heal in lookup code path, in turn leading to extra lookups+inodelks. Fix: Changed afr dict comparison logic to ignore all virtual xattrs and the on-disk ones that we should not be healing. Change-Id: I05730bdd39d8fb0b9a49a5fc9c0bb01f0d3bb308 BUG: 1377193 Signed-off-by: Ravishankar N <ravishankar@redhat.com> Reviewed-on: http://review.gluster.org/15578 Smoke: Gluster Build System <jenkins@build.gluster.org> NetBSD-regression: NetBSD Build System <jenkins@build.gluster.org> CentOS-regression: Gluster Build System <jenkins@build.gluster.org> Reviewed-by: Pranith Kumar Karampuri <pkarampu@redhat.com>
Diffstat (limited to 'libglusterfs/src/common-utils.h')
-rw-r--r--libglusterfs/src/common-utils.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/libglusterfs/src/common-utils.h b/libglusterfs/src/common-utils.h
index 93dee58b079..51264237ab4 100644
--- a/libglusterfs/src/common-utils.h
+++ b/libglusterfs/src/common-utils.h
@@ -835,7 +835,7 @@ void
gf_zero_fill_stat (struct iatt *buf);
gf_boolean_t
-is_virtual_xattr (const char *k);
+gf_is_valid_xattr_namespace (char *k);
const char *
gf_inode_type_to_str (ia_type_t type);