[SERVER-18280] ReplicaSetMonitor should use electionId to avoid talking to old primaries Created: 30/Apr/15  Updated: 14/Jul/17  Resolved: 02/Jun/15

Status: Closed
Project: Core Server
Component/s: Internal Client, Replication
Affects Version/s: None
Fix Version/s: 2.6.11, 3.0.5, 3.1.4

Type: Improvement Priority: Major - P3
Reporter: Andy Schwerin Assignee: Daniel Alabi
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by CXX-597 Use electionId to detect stale primar... Closed
Documented
is documented by DOCS-5326 consistency/isolation/recency trackin... Closed
Related
is related to SERVER-19978 Log electionid Backlog
is related to SERVER-19979 Detect replset clock skew from electi... Backlog
Backwards Compatibility: Minor Change
Backport Completed:
Sprint: Sharding 4 06/05/15
Participants:

 Description   

To get "sticky read your writes" behavior out of the internal replica set client, used by mongos and the shell, the internal client's code for replica set monitoring and server selection should accept as "primary" nodes reporting a larger electionId value than the most recently selected primary node.

Note that in 2.6 and 3.0, large clock skews (> 30 seconds) between the replica set member nodes may lead to clients that observe an election being unable to issue writes or primary reads. The solution would be to restart those clients.



 Comments   
Comment by Githook User [ 02/Jun/15 ]

Author:

{u'username': u'alabid', u'name': u'Daniel Alabi', u'email': u'alabidan@gmail.com'}

Message: SERVER-18280 ReplicaSetMonitor should use electionId to avoid talking to old primaries

(cherry picked from commit b8c1c49b36abfa2c49cb15a6f1ac4cadaf2a5648)
Branch: v3.0
https://github.com/mongodb/mongo/commit/c5639bdc8ffbb2c7b3838a093f06060cc2cce568

Comment by Githook User [ 02/Jun/15 ]

Author:

{u'username': u'alabid', u'name': u'Daniel Alabi', u'email': u'alabidan@gmail.com'}

Message: SERVER-18280 ReplicaSetMonitor should use electionId to avoid talking to old primaries
Branch: v2.6
https://github.com/mongodb/mongo/commit/b8c1c49b36abfa2c49cb15a6f1ac4cadaf2a5648

Comment by Githook User [ 29/May/15 ]

Author:

{u'username': u'alabid', u'name': u'Daniel Alabi', u'email': u'alabidan@gmail.com'}

Message: SERVER-18280 ReplicaSetMonitor should use electionId to avoid talking to old primaries
Branch: master
https://github.com/mongodb/mongo/commit/6f3fc07e0a9c0bbb8543ec7618debe862a40b3b2

Comment by A. Jesse Jiryu Davis [ 14/May/15 ]

daniel.alabi@10gen.com the description in the spec is pretty straightforward, LMK if you have any questions.

Comment by Andy Schwerin [ 30/Apr/15 ]

NB, this ticket is not about linearizable read operations. DOCS-5324 is a ticket to describe how to emulate a linearizable read operation using findAndModify.

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