diff options
author | Amar Tumballi <amarts@redhat.com> | 2019-01-28 18:30:24 +0530 |
---|---|---|
committer | Atin Mukherjee <amukherj@redhat.com> | 2019-01-29 13:54:22 +0000 |
commit | 829337ed3971a53086f1562d826e79d4f3e3ed39 (patch) | |
tree | be50480e43cb3087fd5df6292bd711b7cd6a3e07 /xlators | |
parent | c7d1aee76d5713d1f337ab1c831c0ed74e4676e1 (diff) |
features/sdfs: disable by default
With the feature enabled, some of the performance testing results,
specially those which create millions of small files, got approximately
4x regression compared to version before enabling this.
On master without this patch: 765 creates/sec
On master with this patch : 3380 creates/sec
Also there seems to be regression caused by this in 'ls -l' workload.
On master without this patch: 3030 files/sec
On master with this patch : 16610 files/sec
This is a feature added to handle multiple clients parallely operating
(specially those which race for file creates with same name) on a single
namespace/directory. Considering that is < 3% of Gluster's usecase right
now, it makes sense to disable the feature by default, so we don't
penalize the default users who doesn't bother about this usecase.
Also note that the client side translators, specially, distribute,
replicate and disperse already handle the issue upto 99.5% of the cases
without SDFS, so it makes sense to keep the feature disabled by default.
Credits: Shyamsunder <srangana@redhat.com> for running the tests and
getting the numbers.
Change-Id: Iec49ce1d82e621e9db25eb633fcb1d932e74f4fc
Updates: bz#1670031
Signed-off-by: Amar Tumballi <amarts@redhat.com>
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/features/sdfs/src/sdfs.c | 2 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volume-set.c | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/xlators/features/sdfs/src/sdfs.c b/xlators/features/sdfs/src/sdfs.c index 132f97ca4ea..f0247fdcde8 100644 --- a/xlators/features/sdfs/src/sdfs.c +++ b/xlators/features/sdfs/src/sdfs.c @@ -1450,7 +1450,7 @@ struct xlator_cbks cbks; struct volume_options options[] = { {.key = {"pass-through"}, .type = GF_OPTION_TYPE_BOOL, - .default_value = "false", + .default_value = "true", .op_version = {GD_OP_VERSION_4_1_0}, .flags = OPT_FLAG_SETTABLE | OPT_FLAG_DOC | OPT_FLAG_CLIENT_OPT, .tags = {"sdfs"}, diff --git a/xlators/mgmt/glusterd/src/glusterd-volume-set.c b/xlators/mgmt/glusterd/src/glusterd-volume-set.c index d952a39d23e..7340fa07fca 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volume-set.c +++ b/xlators/mgmt/glusterd/src/glusterd-volume-set.c @@ -2900,7 +2900,7 @@ struct volopt_map_entry glusterd_volopt_map[] = { { .key = "features.sdfs", .voltype = "features/sdfs", - .value = "on", + .value = "off", .option = "!features", .op_version = GD_OP_VERSION_4_0_0, .description = "enable/disable dentry serialization xlator in volume", |