summaryrefslogtreecommitdiffstats
path: root/libglusterfsclient/src/libglusterfsclient-dentry.c
diff options
context:
space:
mode:
authorShehjar Tikoo <shehjart@gluster.com>2009-07-19 03:26:13 +0000
committerAnand V. Avati <avati@dev.gluster.com>2009-07-20 14:29:26 -0700
commita12f332cff050db3aa3905436158cbd339fa6963 (patch)
tree8d849b9e05eda0691804fe0c8a6577a80b1187ac /libglusterfsclient/src/libglusterfsclient-dentry.c
parent1a56bed50190e20999d28b7da8418927ecb8b041 (diff)
downloadglusterfs-a12f332cff050db3aa3905436158cbd339fa6963.tar.gz
glusterfs-a12f332cff050db3aa3905436158cbd339fa6963.tar.xz
glusterfs-a12f332cff050db3aa3905436158cbd339fa6963.zip
libglusterfsclient: Move DHT root-lookup workaround to init
The workaround for the DHT requirement for a lookup on / needs to be done only once when the xlator graph is inited. Doing it on every path's lookup results in a major performance penalty when using distribute subvolumes upwards of 16, as reported by Avati. Ref: bug 152 Signed-off-by: Anand V. Avati <avati@dev.gluster.com> BUG: 152 (libglusterfsclient: DHT workaround is a major performance bottleneck) URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=152
Diffstat (limited to 'libglusterfsclient/src/libglusterfsclient-dentry.c')
-rw-r--r--libglusterfsclient/src/libglusterfsclient-dentry.c15
1 files changed, 0 insertions, 15 deletions
diff --git a/libglusterfsclient/src/libglusterfsclient-dentry.c b/libglusterfsclient/src/libglusterfsclient-dentry.c
index 09820457b6..1c8910159a 100644
--- a/libglusterfsclient/src/libglusterfsclient-dentry.c
+++ b/libglusterfsclient/src/libglusterfsclient-dentry.c
@@ -343,21 +343,6 @@ libgf_client_path_lookup (loc_t *loc,
inode_t *inode = NULL;
inode_t *parent = NULL;
int32_t op_ret = 0;
- loc_t new_loc = {0, };
-
- /* workaround for xlators like dht which require lookup to be sent
- on / */
-
- libgf_client_loc_fill (&new_loc, ctx, 1, 0, "/");
-
- op_ret = libgf_client_lookup (ctx, &new_loc, NULL, NULL, NULL);
- if (op_ret == -1) {
- gf_log ("libglusterfsclient-dentry",
- GF_LOG_ERROR,
- "lookup of / failed");
- goto out;
- }
- libgf_client_loc_wipe (&new_loc);
pathname = strdup (loc->path);
directory = dirname (pathname);