From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 10779 invoked by alias); 13 Jul 2009 12:04:23 -0000 Received: (qmail 10773 invoked by alias); 13 Jul 2009 12:04:23 -0000 X-SWARE-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS X-Spam-Status: No, hits=-1.9 required=5.0 tests=AWL,BAYES_00,SPF_HELO_PASS X-Spam-Check-By: sourceware.org X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bastion2.fedora.phx.redhat.com Subject: cluster: RHEL53 - cman: Fix inconsistent state if a node leaves/joins quickly To: cluster-cvs-relay@redhat.com X-Project: Cluster Project X-Git-Module: cluster.git X-Git-Refname: refs/heads/RHEL53 X-Git-Reftype: branch X-Git-Oldrev: ac64d03b9f75cff824fabe3ce40177f972936d5f X-Git-Newrev: 2bac6a6e1a24cd56f08bb89299296bf2a9a6ea58 From: Christine Caulfield Message-Id: <20090713120401.98CF11201FC@lists.fedorahosted.org> Date: Mon, 13 Jul 2009 12:04:00 -0000 X-Scanned-By: MIMEDefang 2.58 on 172.16.52.254 Mailing-List: contact cluster-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: cluster-cvs-owner@sourceware.org X-SW-Source: 2009-q3/txt/msg00041.txt.bz2 Gitweb: http://git.fedorahosted.org/git/cluster.git?p=cluster.git;a=commitdiff;h=2bac6a6e1a24cd56f08bb89299296bf2a9a6ea58 Commit: 2bac6a6e1a24cd56f08bb89299296bf2a9a6ea58 Parent: ac64d03b9f75cff824fabe3ce40177f972936d5f Author: Christine Caulfield AuthorDate: Wed Dec 3 10:46:20 2008 +0000 Committer: Christine Caulfield CommitterDate: Mon Jul 13 13:03:02 2009 +0100 cman: Fix inconsistent state if a node leaves/joins quickly This bug was fixed in STABLE2 some time ago. bz#510510 Signed-off-by: Christine Caulfield --- 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 945268a..46ab3fd 100644 --- a/cman/daemon/commands.c +++ b/cman/daemon/commands.c @@ -1979,7 +1979,7 @@ void add_ais_node(int nodeid, uint64_t incarnation, int total_members) node->name = strdup(tempname); } - 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;