diff options
| author | vmallika <vmallika@redhat.com> | 2014-11-14 12:06:39 +0530 | 
|---|---|---|
| committer | Raghavendra Bhat <raghavendra@redhat.com> | 2014-12-24 03:36:38 -0800 | 
| commit | 2acbc361698b4cd55211011b93a1b4bba9ff72f0 (patch) | |
| tree | ca6c1c5be05d08bdfb00f2010e28cb34e9fe053c /xlators | |
| parent | 7d89b78a56f1eed261a56dcb671ba8b804c2bf5a (diff) | |
mgmt/glusterd: Validate the options of uss
Change-Id: Id13dc4cd3f5246446a9dfeabc9caa52f91477524
BUG: 1175755
Signed-off-by: Varun Shastry <vshastry@redhat.com>
Signed-off-by: vmallika <vmallika@redhat.com>
Reviewed-on: http://review.gluster.org/8133
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Krishnan Parthasarathi <kparthas@redhat.com>
Tested-by: Krishnan Parthasarathi <kparthas@redhat.com>
Signed-off-by: Sachin Pandit <spandit@redhat.com>
Reviewed-on: http://review.gluster.org/9304
Reviewed-by: Raghavendra Bhat <raghavendra@redhat.com>
Diffstat (limited to 'xlators')
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-utils.c | 17 | ||||
| -rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volgen.c | 5 | 
2 files changed, 15 insertions, 7 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c index 948bd36d869..938f4842533 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -13097,14 +13097,12 @@ glusterd_is_snapd_enabled (glusterd_volinfo_t *volinfo)          ret = dict_get_str_boolean (volinfo->dict, "features.uss", -2);          if (ret == -2) {                  gf_log (this->name, GF_LOG_DEBUG, "Key features.uss not " -                        "present in the volinfo dict"); +                        "present in the dict for volume %s", volinfo->volname);                  ret = 0;          } else if (ret == -1) { -                gf_log (this->name, GF_LOG_ERROR, "Failed to get " -                        "'features.uss' from %s volume dict", -                        volinfo->volname); -                ret = 0; +                gf_log (this->name, GF_LOG_ERROR, "Failed to get 'features.uss'" +                        " from dict for volume %s", volinfo->volname);          }          return ret; @@ -13442,7 +13440,14 @@ glusterd_handle_snapd_option (glusterd_volinfo_t *volinfo)          if (volinfo->is_snap_volume)                  return 0; -        if (glusterd_is_snapd_enabled (volinfo)) { +        ret = glusterd_is_snapd_enabled (volinfo); +        if (ret == -1) { +                gf_log (this->name, GF_LOG_ERROR, "Failed to read volume " +                        "options"); +                goto out; +        } + +        if (ret) {                  if (!glusterd_is_volume_started (volinfo)) {                          if (glusterd_is_snapd_running (volinfo)) {                                  ret = glusterd_snapd_stop (volinfo); diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.c b/xlators/mgmt/glusterd/src/glusterd-volgen.c index f1e30e1ee82..151a0931a20 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.c +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.c @@ -3002,7 +3002,10 @@ client_graph_builder (volgen_graph_t *graph, glusterd_volinfo_t *volinfo,          if (ret)                  goto out; -        if (!volinfo->is_snap_volume && glusterd_is_snapd_enabled (volinfo)) { +        ret = dict_get_str_boolean (set_dict, "features.uss", _gf_false); +        if (ret == -1) +                goto out; +        if (ret && !volinfo->is_snap_volume) {                  ret = volgen_graph_build_snapview_client                                             (graph, volinfo, volname, set_dict);                  if (ret == -1)  | 
