[DRIVERS-279] Use setVersion and electionId to detect stale primaries Created: 15/Dec/15  Updated: 15/Apr/19  Resolved: 13/Apr/17

Status: Closed
Project: Drivers
Component/s: None
Fix Version/s: None

Type: New Feature Priority: Major - P3
Reporter: David Golden Assignee: Rathi Gnanasekaran
Resolution: Done Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
depends on CSHARP-1526 Use setVersion and electionId to dete... Closed
depends on NODE-634 Use setVersion and electionId to dete... Closed
depends on RUBY-1077 Use setVersion and electionId to det... Closed
depends on CDRIVER-1056 Use setVersion and electionId to dete... Closed
depends on JAVA-2069 Use setVersion and electionId to dete... Closed
depends on PYTHON-1036 Use setVersion and electionId to dete... Closed
Related
is related to SERVER-21744 Clients may fail to discover new prim... Closed
Driver Compliance:
Key Status/Resolution FixVersion
CDRIVER-1056 Done 1.3.1
PYTHON-1036 Done 3.2.1
JAVA-2069 Done 3.2.1, 2.14.1
PERL-604 Done 1.2.2
RUBY-1077 Done 2.2.2
NODE-634 Done 2.1.5
CSHARP-1526 Done 2.2.2

 Description   

This is a change to the SDAM specification.

Because electionIds from different protocol versions aren't comparable,
drivers must compare (setVersion, electionId) tuples to detect stale
primaries.

You can see the details of the spec change in these commits:

SDAM tests are also updated:

NOTE: Make sure to update the test runner to assert on electionId and setVersion equality



 Comments   
Comment by Jeremy Mikola [ 06/Jan/16 ]

Validating for PHPC and HHVM, since CDRIVER implements this.

SDAM isn't implemented in PHP, and this isn't relevant to PHPLIB.

Generated at Thu Feb 08 08:21:09 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.