summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRaghavendra Gowdappa <rgowdapp@redhat.com>2018-12-14 11:27:33 +0530
committerAmar Tumballi <amarts@redhat.com>2018-12-18 09:12:27 +0000
commit51ff065b8b9d2117688053cddb29186e3135c4a1 (patch)
tree1b2c1f659c5d90144247f1fd5f2d634fa27a2d3a
parentf9859218da827eac5b2102673e7a89497228e672 (diff)
performance/ob: make open-behind as a child of quick-read
With read-after-open being set to yes by default, if open-behind sees any reads, it'll do an open on backend (and hence flush/release later). This means with the current order of quick-read and open-behind, open-behind sees all reads and hence also does open bringing down performance for small file reads. Since for small files, reads are absorbed by quick-read, if quick-read is made a parent of open-behind, ob doesn't witness any reads. For read-only workloads, this means ob doen't do any opens (even with read-after-open yes and use-anonymous-fd no). Change-Id: I138a42b006d104cff43ee6f07829e39c36f6f234 Signed-off-by: Raghavendra Gowdappa <rgowdapp@redhat.com> Fixes: bz#1659327
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-volume-set.c16
1 files changed, 7 insertions, 9 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-volume-set.c b/xlators/mgmt/glusterd/src/glusterd-volume-set.c
index 755c13ed29a..fd5a8227c6b 100644
--- a/xlators/mgmt/glusterd/src/glusterd-volume-set.c
+++ b/xlators/mgmt/glusterd/src/glusterd-volume-set.c
@@ -1701,15 +1701,6 @@ struct volopt_map_entry glusterd_volopt_map[] = {
.op_version = 1,
.description = "enable/disable io-cache translator in the volume.",
.flags = VOLOPT_FLAG_CLIENT_OPT},
- {.key = "performance.quick-read",
- .voltype = "performance/quick-read",
- .option = "!perf",
- .value = "on",
- .op_version = 1,
- .description = "enable/disable quick-read translator in the volume.",
- .flags = VOLOPT_FLAG_CLIENT_OPT | VOLOPT_FLAG_XLATOR_OPT
-
- },
{.key = "performance.open-behind",
.voltype = "performance/open-behind",
.option = "!perf",
@@ -1719,6 +1710,13 @@ struct volopt_map_entry glusterd_volopt_map[] = {
.flags = VOLOPT_FLAG_CLIENT_OPT | VOLOPT_FLAG_XLATOR_OPT
},
+ {.key = "performance.quick-read",
+ .voltype = "performance/quick-read",
+ .option = "!perf",
+ .value = "on",
+ .op_version = 1,
+ .description = "enable/disable quick-read translator in the volume.",
+ .flags = VOLOPT_FLAG_CLIENT_OPT | VOLOPT_FLAG_XLATOR_OPT},
{.key = "performance.nl-cache",
.voltype = "performance/nl-cache",
.option = "!perf",