Description of problem: Three node cluster w/ qdisk of 2 nodes. Shouldn't expected votes be that same as total votes in this case where all are members? [root@taft-03 ~]# cman_tool status Version: 6.0.1 Config Version: 11 Cluster Name: TAFTASTIC Cluster Id: 39245 Cluster Member: Yes Cluster Generation: 1108 Membership state: Cluster-Member Nodes: 3 Expected votes: 3 Total votes: 5 Quorum: 3 Active subsystems: 9 Flags: Ports Bound: 0 11 Node name: taft-03.lab.msp.redhat.com Node ID: 3 Multicast addresses: 239.192.153.230 Node addresses: 10.15.89.69 Version-Release number of selected component (if applicable): 2.6.18-52.el5 cman-2.0.73-1.el5
The value in there is technically correct, but confusing I think. Here's the quorum calculation from the source code (and the VMS cluster manual!) q1 = (highest_expected + 2) / 2; q2 = (total_votes + 2) / 2; newquorum = max(q1, q2); if (!allow_decrease) newquorum = max(oldquorum, newquorum); highest_expected is the maximum value of expected_votes on all active nodes, and total_votes is what you would expect: the total of all active votes in the system. If you don't explicitly set expected_votes in cluster.conf then it is calculated as the total votes contributed by REAL nodes (qdisk doesn't appear in cluster.conf as a node) So the confusion arises, I think, because qdisk isn't added to expected_votes at "cman_tool join" time and because it contributes no expected_votes of its own (it gets set to zero, and is therefore always ignored). I can't see this being a blocker but we might like to think of ways to clarify things in the future. Perhaps by getting the join process to look at the qdisk keys in ccs and add those votes to expected_votes.
The more I think about this, the less happy I am fudging expected_votes with the quorum disk votes. I think perhaps the thing to do is to display the quorum disk votes in 'cman_tool status' immediately after 'Expected votes'. I think that should be clear enough. Comments ?
Created attachment 278351 [details] Patch Checked into HEAD. here's the patch for RHEL5, as I don't think this has been approved for 5.2
Created attachment 294359 [details] Updated patch This is a slightly nicer patch and matches what is in HEAD of CVS.
Added to RHEL5 branch: commit 38c7b171fee73837a539a441b9a408860c07f1d6 Author: Christine Caulfield <ccaulfie> Date: Mon Apr 28 16:10:09 2008 +0100
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on therefore solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHBA-2009-0189.html