diff options
author | anand <anekkunt@redhat.com> | 2015-05-20 19:52:11 +0530 |
---|---|---|
committer | Atin Mukherjee <amukherj@redhat.com> | 2015-08-06 23:22:53 -0700 |
commit | 7255febab2c38cc89b71f2519a20d10f53586000 (patch) | |
tree | ca60d73af2f7566a226b24d3fc9e017a363c66e7 /xlators/mgmt/glusterd/src/glusterd-volgen.h | |
parent | 7298b622ab39c2e78d6d745ae8b6e8413e1d9f1a (diff) |
glusterd: Stop/restart/notify to daemons(svcs) during reset/set on a volume
problem : Reset/set commands were not working properly. reset command returns
success but it not sending notification to svcs if corresponding graph modified.
Fix: Whenever reset/set command issued, generate the temp graph and compare
with original graph and do the fallowing actions
1.) If both graph are identical nothing to do with svcs.
2.) If any changes in graph topology restart/stop service by calling
svc manager.
3) If changes in options send notify signal by calling glusterd_fetchspec_notify.
Change-Id: I852c4602eafed1ae6e6a02424814fe3a83e3d4c7
BUG: 1209329
Signed-off-by: anand <anekkunt@redhat.com>
Reviewed-on: http://review.gluster.org/10850
Tested-by: NetBSD Build System <jenkins@build.gluster.org>
Tested-by: Gluster Build System <jenkins@build.gluster.com>
Reviewed-by: Atin Mukherjee <amukherj@redhat.com>
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-volgen.h')
-rw-r--r-- | xlators/mgmt/glusterd/src/glusterd-volgen.h | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-volgen.h b/xlators/mgmt/glusterd/src/glusterd-volgen.h index cbd3cf38d51..dd46b07fa6e 100644 --- a/xlators/mgmt/glusterd/src/glusterd-volgen.h +++ b/xlators/mgmt/glusterd/src/glusterd-volgen.h @@ -61,6 +61,9 @@ struct volgen_graph { }; typedef struct volgen_graph volgen_graph_t; +typedef int (*glusterd_graph_builder_t) (volgen_graph_t *graph, + dict_t *mod_dict); + #define COMPLETE_OPTION(key, completion, ret) \ do { \ if (!strchr (key, '.')) { \ @@ -159,8 +162,7 @@ glusterd_snapdsvc_generate_volfile (volgen_graph_t *graph, glusterd_volinfo_t *volinfo); int -glusterd_create_global_volfile (int (*builder) (volgen_graph_t *graph, - dict_t *set_dict), +glusterd_create_global_volfile (glusterd_graph_builder_t builder, char *filepath, dict_t *mod_dict); int @@ -263,12 +265,6 @@ end_sethelp_xml_doc (xmlTextWriterPtr writer); char* glusterd_get_trans_type_rb (gf_transport_type ttype); -int -glusterd_check_nfs_volfile_identical (gf_boolean_t *identical); - -int -glusterd_check_nfs_topology_identical (gf_boolean_t *identical); - uint32_t glusterd_get_op_version_for_key (char *key); |