From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 8708 invoked by alias); 14 Apr 2008 13:03:12 -0000 Received: (qmail 8676 invoked by uid 9452); 14 Apr 2008 13:03:12 -0000 Date: Mon, 14 Apr 2008 13:03:00 -0000 Message-ID: <20080414130312.8661.qmail@sourceware.org> From: ccaulfield@sourceware.org To: cluster-cvs@sources.redhat.com, cluster-devel@redhat.com Subject: Cluster Project branch, STABLE2, updated. cluster-2.03.00-5-g529c79e X-Git-Refname: refs/heads/STABLE2 X-Git-Reftype: branch X-Git-Oldrev: 9e0e6f562c29cf284183c4ec8958ef0e33f6b4b0 X-Git-Newrev: 529c79ee350e06e14075dd2006b34920bacdb4bb 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: 2008-q2/txt/msg00079.txt.bz2 This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "Cluster Project". http://sources.redhat.com/git/gitweb.cgi?p=cluster.git;a=commitdiff;h=529c79ee350e06e14075dd2006b34920bacdb4bb The branch, STABLE2 has been updated via 529c79ee350e06e14075dd2006b34920bacdb4bb (commit) from 9e0e6f562c29cf284183c4ec8958ef0e33f6b4b0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 529c79ee350e06e14075dd2006b34920bacdb4bb Author: Christine Caulfield Date: Mon Apr 14 14:01:13 2008 +0100 [CMAN] Save the new expected_votes when a node is removed When a node leaves the cluster using 'cman_tool leave remove' it reduces the quorum of the cluster to accomodate the loss of the node. Unfortunately the following transition messages raise quorum back to its original value again because of the bug fix for bz#308581, so it appears that the remove hasn't worked. Signed-off-by: Christine Caulfield ----------------------------------------------------------------------- Summary of changes: cman/daemon/commands.c | 9 ++++++--- 1 files changed, 6 insertions(+), 3 deletions(-) diff --git a/cman/daemon/commands.c b/cman/daemon/commands.c index b6d796a..c96fe52 100644 --- a/cman/daemon/commands.c +++ b/cman/daemon/commands.c @@ -289,8 +289,10 @@ static int calculate_quorum(int allow_decrease, int max_expected, unsigned int * node = list_item(nodelist, struct cluster_node); if (node->state == NODESTATE_MEMBER) { - highest_expected = - max(highest_expected, node->expected_votes); + if (max_expected) + node->expected_votes = max_expected; + else + highest_expected = max(highest_expected, node->expected_votes); total_votes += node->votes; total_nodes++; } @@ -2009,7 +2011,8 @@ void del_ais_node(int nodeid) node->state = NODESTATE_DEAD; cluster_members--; - if ((node->leave_reason & 0xF) & CLUSTER_LEAVEFLAG_REMOVED) + P_MEMB("del_ais_node %s, leave_reason=%x\n", node->name, node->leave_reason); + if ((node->leave_reason & 0xF) == CLUSTER_LEAVEFLAG_REMOVED) recalculate_quorum(1, 1); else recalculate_quorum(0, 0); hooks/post-receive -- Cluster Project