-
Type:
Improvement
-
Resolution: Unresolved
-
Priority:
Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Catalog and Routing
-
2
-
🟩 Routing and Topology
-
None
-
None
-
None
-
None
-
None
-
None
Add a deterministic test that runs all commands against a stale mongos, following a similar approach as database_versioning_all_commands.js.
The idea is to create a no-passthrough test with a sharded cluster where all collection-oriented commands are tested after a moveChunk on a different mongos. This will make shards return a StaleConfig error to the mongos, which should automatically retry the request. From the test's perspective, all commands should succeed at the first try.Â
To ensure all commands are tested, we should use [jstests/libs/all_commands_test.js|https://github.com/10gen/mongo/blob/77950e2fc4977c19c7923c55a1933e732421769d/jstests/libs/all_commands_test.js] like we do here. Those commands that don't use the ShardVersion protocol can be skipped.