[CDRIVER-3619] Clarify how a driver must handle wrong set name in single topology Created: 14/Apr/20  Updated: 28/Oct/23  Resolved: 04/May/20

Status: Closed
Project: C Driver
Component/s: None
Affects Version/s: None
Fix Version/s: 1.17.0-beta2, 1.17.0

Type: Improvement Priority: Major - P3
Reporter: Backlog - Core Eng Program Management Team Assignee: Kevin Albertson
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Depends
is depended on by CXX-1993 Clarify how a driver must handle wron... Closed
Epic Link: C 4.4 Support

 Description   

Description of Drivers Ticket:

The SDAM specification allows specifying replica set name in single topology (https://github.com/mongodb/specifications/blob/master/source/server-discovery-and-monitoring/server-discovery-and-monitoring.rst#initial-setname). If this is done, the set name specified by the application must match the set name reported by the deployment. https://github.com/mongodb/specifications/blob/master/source/server-discovery-and-monitoring/server-discovery-and-monitoring.rst#verifying-setname-with-topologytype-single says:

> A client MAY allow the user to supply a setName with an initial TopologyType of Single. In this case, if the ServerDescription's setName is null or wrong, the client MUST throw an error on every operation.

The Ruby driver satisfies this requirement by checking setName during server selection if the deployment is in single topology. However the prescribed server selection procedure in single topology (https://github.com/mongodb/specifications/blob/master/source/server-selection/server-selection.rst#topology-type-single) does not mention such a check.

In order to improve consistency in how different drivers handle wrong setName when in single topology, either the SDAM or server selection specifications could either recommend or mandate a specific procedure that the drivers must follow when the set name of the deployment does not match the expected set name.
See DRIVERS-980 for updated details.



 Comments   
Comment by Githook User [ 25/May/20 ]

Author:

{'name': 'Kevin Albertson', 'email': 'kevin.albertson@mongodb.com', 'username': 'kevinAlbs'}

Message: CDRIVER-3619 reject bad setname for single topology
Branch: r1.17
https://github.com/mongodb/mongo-c-driver/commit/924b7f4c53b0df321353f28dca35cc69c2833edf

Comment by Githook User [ 04/May/20 ]

Author:

{'name': 'Kevin Albertson', 'email': 'kevin.albertson@mongodb.com', 'username': 'kevinAlbs'}

Message: CDRIVER-3619 reject bad setname for single topology
Branch: master
https://github.com/mongodb/mongo-c-driver/commit/045384b3d6c10d1f958be7669cc26aec71d8f49c

Generated at Wed Feb 07 21:18:34 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.