Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=216... Commit: 216c64116be3b5edad1ea7fcdcde298c67074b44 Parent: b3e375c0554149173390b542de1ef3674da3d128 Author: Lon Hohberger lhh@redhat.com AuthorDate: Wed Feb 2 20:17:45 2011 -0500 Committer: Lon Hohberger lhh@redhat.com CommitterDate: Thu Feb 3 11:23:02 2011 -0500
Revert "rgmanager: Support convalesce w/ central_processing"
This reverts commit 3b03b46fe7d3c7d747db9a2b7721cc56aef458f2. --- rgmanager/include/event.h | 1 - rgmanager/src/daemons/service_op.c | 84 ----------------------- rgmanager/src/daemons/slang_event.c | 18 +----- rgmanager/src/resources/default_event_script.sl | 4 - 4 files changed, 1 insertions(+), 106 deletions(-)
diff --git a/rgmanager/include/event.h b/rgmanager/include/event.h index ad3fe39..a9a8235 100644 --- a/rgmanager/include/event.h +++ b/rgmanager/include/event.h @@ -124,7 +124,6 @@ void set_transition_throttling(int nsecs); int service_op_start(char *svcName, int *target_list, int target_list_len, int *new_owner); int service_op_stop(char *svcName, int do_disable, int event_type); -int service_op_convalesce(const char *svcName); int service_op_migrate(char *svcName, int target_node);
diff --git a/rgmanager/src/daemons/service_op.c b/rgmanager/src/daemons/service_op.c index f094129..112b267 100644 --- a/rgmanager/src/daemons/service_op.c +++ b/rgmanager/src/daemons/service_op.c @@ -186,90 +186,6 @@ service_op_stop(char *svcName, int do_disable, int event_type) }
-int -service_op_convalesce(const char *svcName) -{ - SmMessageSt msg; - int msg_ret; - msgctx_t ctx; - rg_state_t svcStatus; - int msgtarget = my_id(); - - /* Build the message header */ - msg.sm_hdr.gh_magic = GENERIC_HDR_MAGIC; - msg.sm_hdr.gh_command = RG_ACTION_REQUEST; - msg.sm_hdr.gh_arg1 = RG_ACTION_MASTER; - msg.sm_hdr.gh_length = sizeof (SmMessageSt); - - msg.sm_data.d_action = RG_CONVALESCE; - - strncpy(msg.sm_data.d_svcName, svcName, - sizeof(msg.sm_data.d_svcName)); - msg.sm_data.d_ret = 0; - msg.sm_data.d_svcOwner = 0; - - /* Open a connection to the local node - it will decide what to - do in this case. XXX inefficient; should queue requests - locally and immediately forward requests otherwise */ - - if (get_service_state_internal(svcName, &svcStatus) < 0) - return RG_EFAIL; - if (svcStatus.rs_owner > 0) { - if (member_online(svcStatus.rs_owner)) { - msgtarget = svcStatus.rs_owner; - } else { - /* If the owner is not online, - mark the service as 'stopped' but - otherwise, do nothing. - */ - return svc_stop(svcName, RG_STOP); - } - } - - if (msg_open(MSG_CLUSTER, msgtarget, RG_PORT, &ctx, 2 * cluster_timeout)< 0) { - logt_print(LOG_ERR, - "#58: Failed opening connection to member #%d\n", - my_id()); - return -1; - } - - /* Encode */ - swab_SmMessageSt(&msg); - - /* Send stop message to the other node */ - if (msg_send(&ctx, &msg, sizeof (SmMessageSt)) < - (int)sizeof (SmMessageSt)) { - logt_print(LOG_ERR, "Failed to send complete message\n"); - msg_close(&ctx); - return -1; - } - - /* Check the response */ - do { - msg_ret = msg_receive(&ctx, &msg, - sizeof (SmMessageSt), 10); - if ((msg_ret == -1 && errno != ETIMEDOUT) || - (msg_ret > 0)) { - break; - } - } while(1); - - if (msg_ret != sizeof (SmMessageSt)) { - logt_print(LOG_WARNING, "Strange response size: %d vs %d\n", - msg_ret, (int)sizeof(SmMessageSt)); - return 0; /* XXX really UNKNOWN */ - } - - /* Got a valid response from other node. */ - msg_close(&ctx); - - /* Decode */ - swab_SmMessageSt(&msg); - - return msg.sm_data.d_ret; -} - - /* service_op_migrate() - send a virtual machine to another host in the cluster diff --git a/rgmanager/src/daemons/slang_event.c b/rgmanager/src/daemons/slang_event.c index 0b9f0d0..55f0341 100644 --- a/rgmanager/src/daemons/slang_event.c +++ b/rgmanager/src/daemons/slang_event.c @@ -86,8 +86,7 @@ static int _user_restart = RG_RESTART, _user_migrate = RG_MIGRATE, _user_freeze = RG_FREEZE, - _user_unfreeze = RG_UNFREEZE, - _user_convalesce = RG_CONVALESCE; + _user_unfreeze = RG_UNFREEZE;
SLang_Intrin_Var_Type rgmanager_vars[] = @@ -140,7 +139,6 @@ SLang_Intrin_Var_Type rgmanager_vars[] = MAKE_VARIABLE((char *)"USER_MIGRATE", &_user_migrate, SLANG_INT_TYPE, 1), MAKE_VARIABLE((char *)"USER_FREEZE", &_user_freeze, SLANG_INT_TYPE, 1), MAKE_VARIABLE((char *)"USER_UNFREEZE", &_user_unfreeze,SLANG_INT_TYPE, 1), - MAKE_VARIABLE((char *)"USER_CONVALESCE",&_user_convalesce,SLANG_INT_TYPE, 1),
/* Errors */ MAKE_VARIABLE((char *)"rg_error", &_rg_err, SLANG_INT_TYPE, 1), @@ -446,18 +444,6 @@ sl_service_property(char *svcName, char *prop) /** usage:
- service_convalesce(name); - */ -static int -sl_convalesce_service(const char *svcname) -{ - return service_op_convalesce(svcname); -} - - -/** - usage: - stop_service(name, disable_flag); */ static int @@ -1048,8 +1034,6 @@ static SLang_Intrin_Fun_Type rgmanager_slang[] = SLANG_VOID_TYPE), MAKE_INTRINSIC_0((char *)"service_stop", sl_stop_service, SLANG_INT_TYPE), - MAKE_INTRINSIC_S((char *)"service_convalesce", sl_convalesce_service, - SLANG_INT_TYPE), MAKE_INTRINSIC_0((char *)"service_start", sl_start_service, SLANG_INT_TYPE), MAKE_INTRINSIC_0((char *)"service_migrate", sl_migrate_service, diff --git a/rgmanager/src/resources/default_event_script.sl b/rgmanager/src/resources/default_event_script.sl index 4eae767..fad22ac 100644 --- a/rgmanager/src/resources/default_event_script.sl +++ b/rgmanager/src/resources/default_event_script.sl @@ -597,10 +597,6 @@ define default_user_event_handler()
ret = service_migrate(service_name, user_target);
- } else if (user_request == USER_CONVALESCE) { - - ret = service_convalesce(service_name); - }
return ret;
cluster-commits@lists.fedorahosted.org