-
Type: Improvement
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Component/s: None
-
None
Given the behavior specified in the current version of the SDAM specification, it's possible for get-more/kill-cursor requests to fail in the following scenario:
- Create MongoClient with a seed list with IP addresses for a replica set with host names as normal DNS names.
- Execute a query with a non-primary read preference
- Execute a get-more for that query
This can happen because server selection will succeed against a seed list host that reports itself as a secondary, but by the time the get-more executes, the primary has identified itself and the driver has replaced all the ip-address-specified seed list hosts with the host names from the primary's server description. The result is that server selection fails for the get-more, as the topology has "forgotten" about the seed list hosts.
A fix to the SDAM specification has been accepted, and must be implemented in all drivers.
- depends on
-
RUBY-961 Remove from the topology a replica set member whose "me" hostname:port does not match the one that was used to connect to it
- Closed
-
PYTHON-999 Update SDAM tests to latest and fix failures
- Closed
-
CDRIVER-1021 Remove from the topology a replica set member whose "me" hostname:port does not match the one that was used to connect to it
- Closed
-
CSHARP-1283 Remove from the topology a replica set member whose "me" hostname:port does not match the one that was used to connect to it
- Closed
-
JAVA-1815 Remove from the topology a replica set member whose "me" hostname:port does not match the one that was used to connect to it
- Closed
- is duplicated by
-
DRIVERS-268 SDAM test for race condition when seed list host name does not match the one reported by ismaster
- Closed