|
|
e3c68b |
From d45c64e17e1eb8003ac1086cbd3abea32414c7f9 Mon Sep 17 00:00:00 2001
|
|
|
e3c68b |
From: Raghavendra Gowdappa <rgowdapp@redhat.com>
|
|
|
e3c68b |
Date: Tue, 12 Feb 2019 18:33:44 +0530
|
|
|
e3c68b |
Subject: [PATCH 345/346] read-ahead/io-cache: turn off by default
|
|
|
e3c68b |
|
|
|
e3c68b |
We've found perf xlators io-cache and read-ahead not adding any
|
|
|
e3c68b |
performance improvement. At best read-ahead is redundant due to kernel
|
|
|
e3c68b |
read-ahead and at worst io-cache is degrading the performance for
|
|
|
e3c68b |
workloads that doesn't involve re-read. Given that VFS already have
|
|
|
e3c68b |
both these functionalities, this patch makes these two
|
|
|
e3c68b |
translators turned off by default for native fuse mounts.
|
|
|
e3c68b |
|
|
|
e3c68b |
For non-native fuse mounts like gfapi (NFS-ganesha/samba) we can have
|
|
|
e3c68b |
these xlators on by having custom profiles.
|
|
|
e3c68b |
|
|
|
e3c68b |
>Change-Id: Ie7535788909d4c741844473696f001274dc0bb60
|
|
|
e3c68b |
>Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com>
|
|
|
e3c68b |
>fixes: bz#1676479
|
|
|
e3c68b |
Upstream fix link: https://review.gluster.org/#/c/glusterfs/+/22203/
|
|
|
e3c68b |
|
|
|
e3c68b |
BUG: 1788656
|
|
|
e3c68b |
Change-Id: Ie7535788909d4c741844473696f001274dc0bb60
|
|
|
e3c68b |
Signed-off-by: Sunil Kumar Acharya <sheggodu@redhat.com>
|
|
|
e3c68b |
Reviewed-on: https://code.engineering.redhat.com/gerrit/188967
|
|
|
e3c68b |
Tested-by: RHGS Build Bot <nigelb@redhat.com>
|
|
|
e3c68b |
---
|
|
|
e3c68b |
tests/basic/ec/self-heal.t | 2 ++
|
|
|
e3c68b |
tests/basic/glusterd/volfile_server_switch.t | 2 +-
|
|
|
e3c68b |
xlators/mgmt/glusterd/src/glusterd-volume-set.c | 4 ++--
|
|
|
e3c68b |
3 files changed, 5 insertions(+), 3 deletions(-)
|
|
|
e3c68b |
|
|
|
e3c68b |
diff --git a/tests/basic/ec/self-heal.t b/tests/basic/ec/self-heal.t
|
|
|
e3c68b |
index d217559..6329bb6 100644
|
|
|
e3c68b |
--- a/tests/basic/ec/self-heal.t
|
|
|
e3c68b |
+++ b/tests/basic/ec/self-heal.t
|
|
|
e3c68b |
@@ -131,6 +131,8 @@ TEST $CLI volume create $V0 redundancy 2 $H0:$B0/${V0}{0..5}
|
|
|
e3c68b |
TEST $CLI volume set $V0 client-log-level DEBUG
|
|
|
e3c68b |
#Write-behind has a bug where lookup can race over write which leads to size mismatch on the mount after a 'cp'
|
|
|
e3c68b |
TEST $CLI volume set $V0 performance.write-behind off
|
|
|
e3c68b |
+#md-cache can return stale stat due to default timeout being 1 sec
|
|
|
e3c68b |
+TEST $CLI volume set $V0 performance.stat-prefetch off
|
|
|
e3c68b |
EXPECT "Created" volinfo_field $V0 'Status'
|
|
|
e3c68b |
TEST $CLI volume start $V0
|
|
|
e3c68b |
EXPECT_WITHIN $PROCESS_UP_TIMEOUT "Started" volinfo_field $V0 'Status'
|
|
|
e3c68b |
diff --git a/tests/basic/glusterd/volfile_server_switch.t b/tests/basic/glusterd/volfile_server_switch.t
|
|
|
e3c68b |
index 3090609..e11cfed 100644
|
|
|
e3c68b |
--- a/tests/basic/glusterd/volfile_server_switch.t
|
|
|
e3c68b |
+++ b/tests/basic/glusterd/volfile_server_switch.t
|
|
|
e3c68b |
@@ -34,7 +34,7 @@ TEST glusterfs --volfile-id=/$V0 --volfile-server=$H1 --volfile-server=$H2 --vol
|
|
|
e3c68b |
|
|
|
e3c68b |
TEST kill_glusterd 1
|
|
|
e3c68b |
|
|
|
e3c68b |
-TEST $CLI_2 volume set $V0 performance.io-cache off
|
|
|
e3c68b |
+TEST $CLI_2 volume set $V0 performance.write-behind off
|
|
|
e3c68b |
|
|
|
e3c68b |
# make sure by this time directory will be created
|
|
|
e3c68b |
# TODO: suggest ideal time to wait
|
|
|
e3c68b |
diff --git a/xlators/mgmt/glusterd/src/glusterd-volume-set.c b/xlators/mgmt/glusterd/src/glusterd-volume-set.c
|
|
|
e3c68b |
index 16601a2..9001b88 100644
|
|
|
e3c68b |
--- a/xlators/mgmt/glusterd/src/glusterd-volume-set.c
|
|
|
e3c68b |
+++ b/xlators/mgmt/glusterd/src/glusterd-volume-set.c
|
|
|
e3c68b |
@@ -2235,7 +2235,7 @@ struct volopt_map_entry glusterd_volopt_map[] = {
|
|
|
e3c68b |
{.key = "performance.read-ahead",
|
|
|
e3c68b |
.voltype = "performance/read-ahead",
|
|
|
e3c68b |
.option = "!perf",
|
|
|
e3c68b |
- .value = "on",
|
|
|
e3c68b |
+ .value = "off",
|
|
|
e3c68b |
.op_version = 1,
|
|
|
e3c68b |
.description = "enable/disable read-ahead translator in the volume.",
|
|
|
e3c68b |
.flags = VOLOPT_FLAG_CLIENT_OPT | VOLOPT_FLAG_XLATOR_OPT},
|
|
|
e3c68b |
@@ -2249,7 +2249,7 @@ struct volopt_map_entry glusterd_volopt_map[] = {
|
|
|
e3c68b |
{.key = "performance.io-cache",
|
|
|
e3c68b |
.voltype = "performance/io-cache",
|
|
|
e3c68b |
.option = "!perf",
|
|
|
e3c68b |
- .value = "on",
|
|
|
e3c68b |
+ .value = "off",
|
|
|
e3c68b |
.op_version = 1,
|
|
|
e3c68b |
.description = "enable/disable io-cache translator in the volume.",
|
|
|
e3c68b |
.flags = VOLOPT_FLAG_CLIENT_OPT},
|
|
|
e3c68b |
--
|
|
|
e3c68b |
1.8.3.1
|
|
|
e3c68b |
|