[SERVER-15771] Do not veto freshness check due to heartbeat unelectability Created: 21/Oct/14  Updated: 28/Oct/14  Resolved: 21/Oct/14

Status: Closed
Project: Core Server
Component/s: Replication
Affects Version/s: None
Fix Version/s: 2.7.8

Type: Bug Priority: Major - P3
Reporter: Scott Hernandez (Inactive) Assignee: Andy Schwerin
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
Backwards Compatibility: Fully Compatible
Operating System: ALL
Participants:
Linked BF Score: 0

 Description   

If the unelectable reason is RefusingToStand (really UnelectableLastHeartbeat?) then _shouldVetoMember should not return true, since the fact that the freshness check is being made indicates that the member believes it is now electable.



 Comments   
Comment by Githook User [ 28/Oct/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15771 Do not step down a remote primary unless you plan to replace it yourself.

Also, when stepping down for a higher priority node, set _electionSleepUntil,
not _stepDownUntil. This way, lower priority nodes will still consider you
electable, and defer to you.
Branch: master
https://github.com/mongodb/mongo/commit/df128f1328ce12ac098aecafa43cb5e0eda6d3e0

Comment by Githook User [ 21/Oct/14 ]

Author:

{u'username': u'andy10gen', u'name': u'Andy Schwerin', u'email': u'schwerin@mongodb.com'}

Message: SERVER-15771 Ignore the RefusesToStand unelectable reason when responding to a node's fresh check.

If a node sent out a replSetFresh command, it must consider itself electable, so
there's no point in telling it that it doesn't think itself electable. It only
happens because the fresh request arrived before the next relevant heartbeat
response.
Branch: master
https://github.com/mongodb/mongo/commit/9fbc9684ce381f5ef49709696ad0eb69f521d93c

Generated at Thu Feb 08 03:38:56 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.