RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Bug 1371880 - Setting a high number of expected votes returns an error, while still appears to be set
Summary: Setting a high number of expected votes returns an error, while still appears...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: corosync
Version: 7.3
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: rc
: ---
Assignee: Christine Caulfield
QA Contact: cluster-qe@redhat.com
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-08-31 10:41 UTC by Radek Steiger
Modified: 2017-08-01 18:40 UTC (History)
4 users (show)

Fixed In Version: corosync-2.4.0-6.el7
Doc Type: No Doc Update
Doc Text:
undefined
Clone Of:
Environment:
Last Closed: 2017-08-01 18:40:01 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
Patch (1.82 KB, patch)
2016-09-01 11:43 UTC, Christine Caulfield
no flags Details | Diff
votequorum: simplify reconfigure message handling (1.49 KB, patch)
2016-09-14 08:32 UTC, Jan Friesse
no flags Details | Diff
libvotequorum: Bump version (523 bytes, patch)
2017-03-21 15:46 UTC, Jan Friesse
no flags Details | Diff
[build] Fix build on RHEL7.3 latest (712 bytes, patch)
2017-03-21 16:49 UTC, Jan Friesse
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2017:1999 0 normal SHIPPED_LIVE corosync bug fix and enhancement update 2017-08-01 18:11:15 UTC

Description Radek Steiger 2016-08-31 10:41:20 UTC
> Description of problem:

Setting the number of expected votes to at least a double of current number of votes returns an error. According to the status output the number of expected votes appears to have been set, but not taken into account as the cluster is still quorate.

[root@virt-123 ~]# corosync-quorumtool -e 15
Unable to set expected votes: CS_ERR_INVALID_PARAM

[root@virt-123 ~]# corosync-quorumtool -s -p | sed -n '/Votequorum/,/^$/p'
Votequorum information
----------------------
Expected votes:   15
Highest expected: 15
Total votes:      6
Quorum:           4  
Flags:            Quorate 


> Version-Release number of selected component (if applicable):

corosync-2.4.0-3.el7.x86_64

Comment 2 Jan Friesse 2016-09-01 07:10:19 UTC
Chrissie, assigning to you because this is really your field of expertise. Basically what is happening is that message_handler_req_lib_votequorum_setexpected calls calculate_quorum which sets node->expected_votes simply because max_expected != 0.

It looks kind of logical to let calculate_quorum be really functional without side effects, but because source code of problematic line is dated 2009-01-26 10:46:08 it really better to hear original author (you ;) ) opinion.

Comment 3 Christine Caulfield 2016-09-01 11:43:40 UTC
Created attachment 1196770 [details]
Patch

Your analysis is correct, calculate_quorum should not produce side-effects. 

For the patch I've separated out the updating of node->expected_votes so it's called only when needed.

Comment 4 Jan Friesse 2016-09-13 13:13:18 UTC
@Chrissie,
can you please fix the patch as we discussed (call update_node_expected_votes in message_handler_req_exec_votequorum_reconfigure) and merge to gh?

Comment 5 Christine Caulfield 2016-09-13 13:23:11 UTC
I've just realised it doesn't need to be done, as message_handler_req_exec_votequorum_reconfigure calls recalculate_quorum() which does it.

So I'll just commit that patch as-is.

Comment 6 Jan Friesse 2016-09-13 13:39:54 UTC
Idea was about getting rid of redundant code (list_iterate is same as update_node_expected_votes)...

Comment 7 Christine Caulfield 2016-09-13 16:01:00 UTC
OK done.

Comment 8 Jan Friesse 2016-09-14 08:32:27 UTC
Created attachment 1200756 [details]
votequorum: simplify reconfigure message handling

votequorum: simplify reconfigure message handling

As we now have update_node_expected_votes(), we can use that
when receiving a new EXPECTED_VOTES value from another node
rather than having our own loop.

Signed-off-by: Christine Caulfield <ccaulfie>

Comment 10 Jan Friesse 2017-03-21 15:46:36 UTC
Created attachment 1265145 [details]
libvotequorum: Bump version

libvotequorum: Bump version

Signed-off-by: Jan Friesse <jfriesse>

Comment 11 Jan Friesse 2017-03-21 16:49:22 UTC
Created attachment 1265179 [details]
[build] Fix build on RHEL7.3 latest

[build] Fix build on RHEL7.3 latest

header inclusion have changed

Signed-off-by: Fabio M. Di Nitto <fdinitto>
(cherry picked from commit e204e871ec4eb705d177598d5c7ae8f0446a280f)

Comment 15 errata-xmlrpc 2017-08-01 18:40:01 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2017:1999


Note You need to log in before you can comment on or make changes to this bug.