summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPranith K <pranithk@gluster.com>2011-07-07 06:27:44 +0000
committerVijay Bellur <vijay@gluster.com>2011-07-07 05:45:31 -0700
commit0745a11bc723be5a7b8693afa00fd19ea137063e (patch)
tree1894c6203f99c79674d2647a6413beb91d9c30ee
parente730d7fd8d1fff6d8350173d178761edc460f02d (diff)
cluster/afr: save xattr of all the children in lookup_cbk
Signed-off-by: Pranith Kumar K <pranithk@gluster.com> Signed-off-by: Vijay Bellur <vijay@gluster.com> BUG: 3138 ([release-3.2]: ls shows 2 entries) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3138
-rw-r--r--xlators/cluster/afr/src/afr-common.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/xlators/cluster/afr/src/afr-common.c b/xlators/cluster/afr/src/afr-common.c
index 30986b589c8..0b0d1c22076 100644
--- a/xlators/cluster/afr/src/afr-common.c
+++ b/xlators/cluster/afr/src/afr-common.c
@@ -938,6 +938,7 @@ afr_fresh_lookup_cbk (call_frame_t *frame, void *cookie,
} else {
afr_lookup_self_heal_check (this, local, buf, lookup_buf);
+ local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
if (child_index == local->read_child_index) {
/*
lookup has succeeded on the read child.
@@ -947,7 +948,6 @@ afr_fresh_lookup_cbk (call_frame_t *frame, void *cookie,
dict_unref (local->cont.lookup.xattr);
local->cont.lookup.xattr = dict_ref (xattr);
- local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
local->cont.lookup.postparent = *postparent;
*lookup_buf = *buf;
@@ -1057,6 +1057,7 @@ afr_revalidate_lookup_cbk (call_frame_t *frame, void *cookie,
} else {
afr_lookup_self_heal_check (this, local, buf, lookup_buf);
+ local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
if (child_index == local->read_child_index) {
/*
@@ -1068,7 +1069,6 @@ afr_revalidate_lookup_cbk (call_frame_t *frame, void *cookie,
dict_unref (local->cont.lookup.xattr);
local->cont.lookup.xattr = dict_ref (xattr);
- local->cont.lookup.xattrs[child_index] = dict_ref (xattr);
local->cont.lookup.postparent = *postparent;
*lookup_buf = *buf;