[DRIVERS-2610] Note that load-balanced topologies are backed by sharded clusters with replica sets Created: 20/Apr/23 Updated: 28/Oct/23 Resolved: 12/May/23 |
|
| Status: | Closed |
| Project: | Drivers |
| Component/s: | Unified Test Runner |
| Fix Version/s: | None |
| Type: | Task | Priority: | Minor - P4 |
| Reporter: | Jeremy Mikola | Assignee: | Jeremy Mikola |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
||||||||
| Driver Changes: | Not Needed | ||||||||
| Engineering Lead: | |
||||||||
| Description |
SummaryQuoting Shard Replica Sets from the MongoDB 3.6 release notes:
Load balancers are used with MongoDB 5.0+. Thus, drivers can assume that any load balancer is backed by a sharded cluster with replica sets and features such as change streams and transactions will be supported. It would be helpful to remind readers of this when introducing the "load-balanced" topology in the Unified Test Format spec. This will not require any driver changes. This issue came out of a Slack thread in #dbx-devs. MotivationWho is the affected end user?Driver developers. How does this affect the end user?The documentation for load-balanced topologies can be improved to remind developers that all LB topologies are backed by sharded clusters with replica sets. Is this issue urgent?No. Is this ticket required by a downstream team?No. Is this ticket only for tests?Yes. |
| Comments |
| Comment by Githook User [ 12/May/23 ] |
|
Author: {'name': 'Jeremy Mikola', 'email': 'jmikola@gmail.com', 'username': 'jmikola'}Message: DRIVERS-2609: Deprecate sharded-replicaset topology type and clean up redundant runOnRequirements (#1408)
MongoDB 3.6+ requires all shards to be replica sets, so there is no reason use "sharded-replicaset" instead of "sharded". The "sharded-replicaset" topology type dates back to the first version of the Unified Test Format, but it's not clear it was ever truly necessary. It appears to have only been used in conjunction with 3.6+ minServerVersion requirements.
A replica set will already be matched by the first runOnRequirement.
|
| Comment by Jeremy Mikola [ 21/Apr/23 ] |
|
I'm including this in the PR for DRIVERS-2609 since it touches the same text: |
| Comment by Jeremy Mikola [ 21/Apr/23 ] |
|
james.kovacs@mongodb.com: Thanks for clarifying. With that in mind, I think the only improvement here would be noting that rationale in the Unified Test Spec. No need to revise the Load Balancer test README. Also, it sounds like the "sharded-replicaset" topology may be irrelevant for any tests that require MongoDB 3.6. I'll sort that out in DRIVERS-2609, though. |
| Comment by James Kovacs [ 20/Apr/23 ] |
|
Starting in MongoDB 3.6, sharded clusters must use replica sets for the shards. It is no longer possible - even for testing - for the shards to be standalones. Thus if the topology is load-balanced then you must be talking to one or more mongos nodes behind it and those mongos nodes must be talking to shard replica sets. |