-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
None
-
Affects Version/s: 5.0.0, 6.0.0, 7.0.0, 7.3.0-rc0, 8.0.0-rc0
-
Component/s: None
-
Catalog and Routing
-
ALL
-
CAR Team 2024-03-04, CAR Team 2024-03-18, CAR Team 2024-04-01, CAR Team 2024-04-15, CAR Team 2024-04-29, CAR Team 2024-05-13, CAR Team 2024-08-05, CAR Team 2024-08-19, CAR Team 2024-09-02, CAR Team 2024-09-16, CAR Team 2024-09-30
CollectionRoutingInfo contains information about both the collection and the database. The "get.*CollectionRoutingInfoWithRefresh()" functions of the CatalogCache guarantees that the collection information contained in the returned CollectionRoutingInfo object are causal consistent with respect to the latest config time known by the node.
While this is true for collection information, it is not true for the database information contained in the object, namely database version and database primary shard.
This is because those withRefresh functions only advance the time in store for the collection cache entry but not for the database.
This means that it is not safe to use the database information stored in the CollectionRoutingInfo when executing in either Shard or DDL role.
- is related to
-
SERVER-94376 Database is not refreshed under getCollectionRoutingInfoWithRefresh
- Closed
- related to
-
SERVER-86622 Resharding coordinator use possibly stale database info
- Closed
-
SERVER-86672 CollMod coordinator use possibly stale database information
- Closed
-
SERVER-88417 processReshardingFieldsForRecipientCollection can use stale db info and incorrectly creates a recipient
- Closed
-
SERVER-93523 Refresh db metadata under CollectionRoutingInfoTargeter::refreshIfNeeded
- Closed
-
SERVER-93513 Fetch the db metadata during the mongos startup
- Closed