From 128c8ceebb308029d4a4a3c58c31f5bbfe072d29 Mon Sep 17 00:00:00 2001 From: Pranith Kumar K Date: Wed, 5 Dec 2012 12:20:28 +0530 Subject: cluster/afr: Empty string should not be default option val Glusterd does not allow empty string as default value. Changed afr option values to disallow empty string as value. Change-Id: I92a2d658907dbc6101e1139dd91f548acb5506f5 BUG: 859927 Signed-off-by: Pranith Kumar K Reviewed-on: http://review.gluster.org/4271 Tested-by: Gluster Build System Reviewed-by: Anand Avati --- xlators/cluster/afr/src/afr-self-heal-data.c | 4 ++++ xlators/cluster/afr/src/afr.c | 5 ++--- xlators/cluster/afr/src/pump.c | 2 -- 3 files changed, 6 insertions(+), 5 deletions(-) (limited to 'xlators') diff --git a/xlators/cluster/afr/src/afr-self-heal-data.c b/xlators/cluster/afr/src/afr-self-heal-data.c index c7a97c99144..c90ed7c1a4f 100644 --- a/xlators/cluster/afr/src/afr-self-heal-data.c +++ b/xlators/cluster/afr/src/afr-self-heal-data.c @@ -412,6 +412,9 @@ sh_algo_from_name (xlator_t *this, char *name) { int i = 0; + if (name == NULL) + goto out; + while (afr_self_heal_algorithms[i].name) { if (!strcmp (name, afr_self_heal_algorithms[i].name)) { return &afr_self_heal_algorithms[i]; @@ -420,6 +423,7 @@ sh_algo_from_name (xlator_t *this, char *name) i++; } +out: return NULL; } diff --git a/xlators/cluster/afr/src/afr.c b/xlators/cluster/afr/src/afr.c index cdc7a609b4d..bee10fd01dc 100644 --- a/xlators/cluster/afr/src/afr.c +++ b/xlators/cluster/afr/src/afr.c @@ -596,7 +596,6 @@ struct volume_options options[] = { }, { .key = {"data-self-heal-algorithm"}, .type = GF_OPTION_TYPE_STR, - .default_value = "", .description = "Select between \"full\", \"diff\". The " "\"full\" algorithm copies the entire file from " "source to sink. The \"diff\" algorithm copies to " @@ -608,7 +607,7 @@ struct volume_options options[] = { "about the same as page size the entire file will " "be read and written i.e \"full\" algo, " "otherwise \"diff\" algo is chosen.", - .value = { "diff", "full", "" } + .value = { "diff", "full"} }, { .key = {"data-self-heal-window-size"}, .type = GF_OPTION_TYPE_INT, @@ -714,7 +713,7 @@ struct volume_options options[] = { }, { .key = {"quorum-type"}, .type = GF_OPTION_TYPE_STR, - .value = { "none", "auto", "fixed", "" }, + .value = { "none", "auto", "fixed"}, .default_value = "none", .description = "If value is \"fixed\" only allow writes if " "quorum-count bricks are present. If value is " diff --git a/xlators/cluster/afr/src/pump.c b/xlators/cluster/afr/src/pump.c index ef49ef784f1..d3823383c97 100644 --- a/xlators/cluster/afr/src/pump.c +++ b/xlators/cluster/afr/src/pump.c @@ -2437,8 +2437,6 @@ init (xlator_t *this) priv->metadata_self_heal = 1; priv->entry_self_heal = 1; - priv->data_self_heal_algorithm = ""; - priv->data_self_heal_window_size = 16; priv->data_change_log = 1; -- cgit