summaryrefslogtreecommitdiffstats
path: root/xlators/cluster/dht/src/dht-layout.c
diff options
context:
space:
mode:
authorshishir gowda <sgowda@redhat.com>2012-10-18 15:40:02 +0530
committerAnand Avati <avati@redhat.com>2012-11-29 13:56:11 -0800
commit01cd59506e8021b4adb7fe8b4877a7e60beb13f6 (patch)
treee7f19fb30eac2910b060a72c9655a3878334268c /xlators/cluster/dht/src/dht-layout.c
parent9864b3a8e46c2813a5793ce7ac7d3029ed324828 (diff)
cluster/dht: Heal dir uid/gid
Identify mismatching uid/gid in lookup, and trigger a syncop heal. uid/gid of subvol with latest ctime is trusted (local->prebuf). Change-Id: Ib5c4bc438e7f4b1f33080e73593f40f400e997f0 BUG: 862967 Signed-off-by: shishir gowda <sgowda@redhat.com> Reviewed-on: http://review.gluster.org/3964 Tested-by: Gluster Build System <jenkins@build.gluster.com> Reviewed-by: Anand Avati <avati@redhat.com>
Diffstat (limited to 'xlators/cluster/dht/src/dht-layout.c')
-rw-r--r--xlators/cluster/dht/src/dht-layout.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/xlators/cluster/dht/src/dht-layout.c b/xlators/cluster/dht/src/dht-layout.c
index 19807607758..993f6166a12 100644
--- a/xlators/cluster/dht/src/dht-layout.c
+++ b/xlators/cluster/dht/src/dht-layout.c
@@ -615,6 +615,16 @@ out:
return ret;
}
+int
+dht_dir_has_layout (dict_t *xattr)
+{
+
+ void *disk_layout_raw = NULL;
+
+ return dict_get_ptr (xattr, "trusted.glusterfs.dht",
+ &disk_layout_raw);
+
+}
int
dht_layout_dir_mismatch (xlator_t *this, dht_layout_t *layout, xlator_t *subvol,