This is the mail archive of the cluster-cvs@sourceware.org mailing list for the cluster.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

cluster: RHEL5 - cman: Fix inconsistent state if a node leaves/joinsquickly


Gitweb:        http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=6325f9d1d135d2a86974a3ffc36f62d0693080d1
Commit:        6325f9d1d135d2a86974a3ffc36f62d0693080d1
Parent:        710553766c3b64ef5a3321f4b1833c005f828507
Author:        Christine Caulfield <ccaulfie@redhat.com>
AuthorDate:    Wed Dec 3 10:46:20 2008 +0000
Committer:     Christine Caulfield <ccaulfie@redhat.com>
CommitterDate: Wed Dec 3 10:46:20 2008 +0000

cman: Fix inconsistent state if a node leaves/joins quickly

This bug was fixed in STABLE2 some time ago.

bz#472786

Signed-off-by: Christine Caulfield <ccaulfie@redhat.com>
---
 cman/daemon/commands.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/cman/daemon/commands.c b/cman/daemon/commands.c
index b07847c..c524fa3 100644
--- a/cman/daemon/commands.c
+++ b/cman/daemon/commands.c
@@ -1965,7 +1965,7 @@ void add_ais_node(int nodeid, uint64_t incarnation, int total_members)
 		node = add_new_node(tempname, nodeid, 1, total_members, NODESTATE_DEAD);
 	}
 
-	if (node->state == NODESTATE_DEAD) {
+	if (node->state == NODESTATE_DEAD || node->state == NODESTATE_LEAVING) {
 		gettimeofday(&node->join_time, NULL);
 		node->incarnation = incarnation;
 		node->state = NODESTATE_MEMBER;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]