Blob Blame History Raw
From 699f3c720d340b95177c521037c1cb8799930b9e Mon Sep 17 00:00:00 2001
From: N Balachandran <nbalacha@redhat.com>
Date: Fri, 16 Mar 2018 20:54:15 +0530
Subject: [PATCH 208/212] cluster/dht: enable lookup-optimize by default

Lookup-optimize has been shown to improve create
performance. The code has been in the project for several
years and is considered stable.

Enabling this by default in order to test this in the
upstream regression runs.

upstream master:https://review.gluster.org/#/c/19731/

> Change-Id: Iab792979ee34f0af4713931e0b5b399c23f65313
> updates: bz#1557435
> BUG: 1557435
> Signed-off-by: N Balachandran <nbalacha@redhat.com>

Change-Id: I076b4e4beb9db390f619f38bf4598589b95685c7
BUG: 1557365
Signed-off-by: N Balachandran <nbalacha@redhat.com>
Reviewed-on: https://code.engineering.redhat.com/gerrit/134450
Tested-by: RHGS Build Bot <nigelb@redhat.com>
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
---
 tests/features/unhashed-auto.t          | 2 +-
 xlators/cluster/dht/src/dht-rebalance.c | 4 +++-
 xlators/cluster/dht/src/dht-shared.c    | 2 +-
 3 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/tests/features/unhashed-auto.t b/tests/features/unhashed-auto.t
index ddebd03..0a6bbfb 100755
--- a/tests/features/unhashed-auto.t
+++ b/tests/features/unhashed-auto.t
@@ -114,7 +114,7 @@ TEST [ x"$new_hash" = x"00000001" ]
 
 # Unset the option and check that newly created directories get 1 in the
 # disk layout
-TEST $CLI volume reset $V0 cluster.lookup-optimize
+TEST $CLI volume set $V0 cluster.lookup-optimize off
 TEST mkdir $M0/dir1
 new_hash=$(get_xattr_hash $B0/${V0}1/dir1)
 TEST [ x"$new_hash" = x"00000001" ]
diff --git a/xlators/cluster/dht/src/dht-rebalance.c b/xlators/cluster/dht/src/dht-rebalance.c
index 9770359..9e31ff8 100644
--- a/xlators/cluster/dht/src/dht-rebalance.c
+++ b/xlators/cluster/dht/src/dht-rebalance.c
@@ -4422,7 +4422,9 @@ gf_defrag_start_crawl (void *data)
 
         ret = syncop_setxattr (this, &loc, fix_layout, 0, NULL, NULL);
         if (ret) {
-                gf_log (this->name, GF_LOG_ERROR, "fix layout on %s failed",
+                gf_log (this->name, GF_LOG_ERROR,
+                        "Failed to set commit hash on %s. "
+                        "Rebalance cannot proceed.",
                         loc.path);
                 defrag->total_failures++;
                 ret = -1;
diff --git a/xlators/cluster/dht/src/dht-shared.c b/xlators/cluster/dht/src/dht-shared.c
index 42daff0..2f0d8ce 100644
--- a/xlators/cluster/dht/src/dht-shared.c
+++ b/xlators/cluster/dht/src/dht-shared.c
@@ -943,7 +943,7 @@ struct volume_options options[] = {
         },
         { .key = {"lookup-optimize"},
           .type = GF_OPTION_TYPE_BOOL,
-          .default_value = "off",
+          .default_value = "on",
           .description = "This option if set to ON enables the optimization "
           "of -ve lookups, by not doing a lookup on non-hashed subvolumes for "
           "files, in case the hashed subvolume does not return any result. "
-- 
1.8.3.1