summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAmar Tumballi <amar@gluster.com>2010-03-09 07:57:14 +0000
committerAnand V. Avati <avati@dev.gluster.com>2010-03-12 04:09:39 -0800
commit2fb2bef51a53b4c776f54633000eb41ac88fe82b (patch)
tree6d008064f6c211aec91199dbc8737630d16110ea
parent06d49096fbf562690738c377db3f8825d1fc9b96 (diff)
send lookup on every subvolume if local->hashed_subvol is NULL in nufa/switch
Signed-off-by: Amar Tumballi <amar@gluster.com> Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 114 (Creating files or directories gives "Invalid argument") URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=114
-rw-r--r--xlators/cluster/dht/src/nufa.c5
-rw-r--r--xlators/cluster/dht/src/switch.c5
2 files changed, 6 insertions, 4 deletions
diff --git a/xlators/cluster/dht/src/nufa.c b/xlators/cluster/dht/src/nufa.c
index eb12be60d..a4a4a2568 100644
--- a/xlators/cluster/dht/src/nufa.c
+++ b/xlators/cluster/dht/src/nufa.c
@@ -134,8 +134,9 @@ out:
gf_log (this->name, GF_LOG_DEBUG,
"no subvolume in layout for path=%s",
local->loc.path);
- op_errno = EINVAL;
- goto err;
+ local->op_errno = ENOENT;
+ dht_lookup_everywhere (frame, this, loc);
+ return 0;
}
STACK_WIND (frame, dht_lookup_cbk,
diff --git a/xlators/cluster/dht/src/switch.c b/xlators/cluster/dht/src/switch.c
index 5a36f8dab..766bd31ff 100644
--- a/xlators/cluster/dht/src/switch.c
+++ b/xlators/cluster/dht/src/switch.c
@@ -207,8 +207,9 @@ out:
gf_log (this->name, GF_LOG_DEBUG,
"no subvolume in layout for path=%s",
local->loc.path);
- op_errno = EINVAL;
- goto err;
+ local->op_errno = ENOENT;
+ dht_lookup_everywhere (frame, this, loc);
+ return 0;
}
STACK_WIND (frame, dht_lookup_cbk,