Sophie

Sophie

distrib > Scientific%20Linux > 5x > x86_64 > media > main-src > by-pkgid > e536fc0c6270ec1d92a0fd41bb1f8360 > files > 91

rgmanager-2.0.52-28.el5_8.2.src.rpm

From d7c4483a3f4a1d91b14e9e7d879f5039ed493027 Mon Sep 17 00:00:00 2001
From: Shane Bradley <sbradley@redhat.com>
Date: Wed, 26 Jan 2011 10:05:27 -0500
Subject: [PATCH] rgmanager: Fix nofailback when service is in 'starting' state

If a failover domain has "nofailback" enabled a service that is
"starting" state would still failback to the original.  If a
service takes a while to come up and is in the "starting" state
and the original node comes back online while it is in that state
the service will be failed back.

Resolves: rhbz#669440

Signed-off-by: Shane Bradley <sbradley@redhat.com>
Signed-off-by: Lon Hohberger <lhh@redhat.com>
---
 rgmanager/src/daemons/fo_domain.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/rgmanager/src/daemons/fo_domain.c b/rgmanager/src/daemons/fo_domain.c
index d8d074f..677a859 100644
--- a/rgmanager/src/daemons/fo_domain.c
+++ b/rgmanager/src/daemons/fo_domain.c
@@ -549,7 +549,7 @@ node_should_start(int nodeid, cluster_member_list_t *membership,
 		 * Check to see if the service is started and if we are the owner in case of
 		 * restricted+owner+no failback
 		 */
-		if (svc_state.rs_state == RG_STATE_STARTED)
+		if (svc_state.rs_state == RG_STATE_STARTED || svc_state.rs_state == RG_STATE_STARTING)
 			started = 1;
 		if (svc_state.rs_owner == (uint32_t)nodeid)
 			owned_by_node = 1;
-- 
1.7.2.3