cluster: RHEL5 - rgmanager: Fix poor -F handling on enable
Lon Hohberger
lon@fedoraproject.org
Fri Feb 27 14:57:00 GMT 2009
Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=c0de9cfb54b5e3a8e0de4b95ae80d2ce5dae4aae
Commit: c0de9cfb54b5e3a8e0de4b95ae80d2ce5dae4aae
Parent: 0bc0fbcf186c76eae15c17aef1e09ce90d34a771
Author: Yevheniy Demchenko <zheka@uvt.cz>
AuthorDate: Thu Feb 26 15:17:23 2009 -0500
Committer: Lon Hohberger <lhh@redhat.com>
CommitterDate: Fri Feb 27 09:55:09 2009 -0500
rgmanager: Fix poor -F handling on enable
Fixes these two issues (rhbz486711, rhbz486717):
* Rgmanager crashes if no members of a restricted
failover domain are online and you enable with -F
* Rgmanager does not correctly restart services if
they fail on the first node when using -F during
enable
Signed-off-by: Lon Hohberger <lhh@redhat.com>
---
rgmanager/src/daemons/rg_state.c | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/rgmanager/src/daemons/rg_state.c b/rgmanager/src/daemons/rg_state.c
index 98a8000..c13971c 100644
--- a/rgmanager/src/daemons/rg_state.c
+++ b/rgmanager/src/daemons/rg_state.c
@@ -2178,14 +2178,18 @@ handle_fd_start_req(char *svcName, int request, int *new_owner)
target = best_target_node(allowed_nodes, 0,
svcName, 1);
if (target == me) {
- ret = handle_start_remote_req(svcName, request);
+ ret = handle_start_remote_req(svcName,
+ (request==RG_ENABLE?RG_START_RECOVER:request));
if (ret == RG_EAGAIN)
goto out;
- } else if (target < 0) {
+ } else if (!(target > 0)) {
ret = RG_EFAIL;
goto out;
} else {
- ret = svc_start_remote(svcName, RG_START_REMOTE, target);
+ ret = svc_start_remote(svcName,
+ (request==RG_ENABLE?
+ RG_START_RECOVER:RG_START_REMOTE),
+ target);
}
switch(ret) {
More information about the Cluster-cvs
mailing list