diff options
author | Meghana Madhusudhan <mmadhusu@redhat.com> | 2015-04-10 19:14:42 +0530 |
---|---|---|
committer | Kaleb KEITHLEY <kkeithle@redhat.com> | 2015-04-13 10:36:58 +0000 |
commit | dbd9bd7b2d806163f9bb069ec04e24d9269f769c (patch) | |
tree | fd44429596cebd50d6b29828ecb95556ebc1341c /xlators | |
parent | b5d7faa96b5ca44be6899c6976691e0fde7d70d1 (diff) |
NFS-Ganesha : Fixing HA script invocation and others
gluster features.ganesha disable failed invariably.
And also, there were problems in unexporting
volumes dynamically.Fixed the above problems.
Change-Id: I29aa289dc8dc7b39fe0fd9d3098a02097ca8ca0c
BUG: 1207629
Signed-off-by: Meghana Madhusudhan <mmadhusu@redhat.com>
Reviewed-on: http://review.gluster.org/10199
Reviewed-by: jiffin tony Thottan <jthottan@redhat.com>
Reviewed-by: Kaleb KEITHLEY <kkeithle@redhat.com>
Tested-by: NetBSD Build System
Diffstat (limited to 'xlators')
-rw-r--r-- | xlators/features/ganesha/src/ganesha.c | 16 | ||||
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-ganesha.c | 15 |
2 files changed, 27 insertions, 4 deletions
diff --git a/xlators/features/ganesha/src/ganesha.c b/xlators/features/ganesha/src/ganesha.c index f034fc00d46..a3d392e3ecf 100644 --- a/xlators/features/ganesha/src/ganesha.c +++ b/xlators/features/ganesha/src/ganesha.c @@ -18,6 +18,22 @@ #include "ganesha-mem-types.h" +int32_t +mem_acct_init (xlator_t *this) +{ + int ret = -1; + + if (!this) + return ret; + + ret = xlator_mem_acct_init (this, gf_ganesha_mt_end + 1); + + if (ret != 0) + gf_log (this->name, GF_LOG_WARNING, "Memory accounting" + "init failed"); + + return ret; +} int32_t init (xlator_t *this) diff --git a/xlators/mgmt/glusterd/src/glusterd-ganesha.c b/xlators/mgmt/glusterd/src/glusterd-ganesha.c index 534e332cdee..fe67be187f2 100644 --- a/xlators/mgmt/glusterd/src/glusterd-ganesha.c +++ b/xlators/mgmt/glusterd/src/glusterd-ganesha.c @@ -194,6 +194,7 @@ glusterd_op_set_ganesha (dict_t *dict, char **errstr) int32_t dict_count = 0; dict_t *vol_opts = NULL; int count = 0; + char *dup = NULL; this = THIS; GF_ASSERT (this); @@ -217,6 +218,12 @@ glusterd_op_set_ganesha (dict_t *dict, char **errstr) goto out; } + dup = gf_strdup (value); + if (!dup) { + ret = -1; + goto out; + } + ret = glusterd_handle_ganesha_op (dict, errstr, key, value); if (ret) { gf_log (this->name, GF_LOG_ERROR, @@ -422,7 +429,7 @@ ganesha_manage_export (dict_t *dict, char *value, char **op_errstr) if (ret) gf_asprintf(op_errstr, "Dynamic export" " addition/deletion failed." - "Please see log file for details"); + " Please see log file for details"); } out: return ret; @@ -436,7 +443,7 @@ tear_down_cluster(void) if (is_ganesha_host()) { runinit (&runner); - runner_add_args (&runner, "sh", CONFDIR, + runner_add_args (&runner, "sh", GANESHA_PREFIX"/ganesha-ha.sh", "teardown", CONFDIR, NULL); ret = runner_run(&runner); @@ -470,7 +477,7 @@ stop_ganesha (char **op_errstr) ret = tear_down_cluster(); if (ret == -1) { gf_asprintf (op_errstr, "Cleanup of NFS-Ganesha" - "HA config failed."); + " HA config failed."); goto out; } @@ -527,7 +534,7 @@ start_ganesha (char **op_errstr) ret = setup_cluster(); if (ret == -1) { gf_asprintf (op_errstr, "Failed to set up HA " - "config for NFS-Ganesha." + "config for NFS-Ganesha. " "Please check the log file for details"); goto out; } |