-
Type: Improvement
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: None
-
Catalog and Routing
-
Fully Compatible
-
CAR Team 2024-10-28, CAR Team 2024-11-11, CAR Team 2024-11-25, CAR Team 2024-12-09
-
200
(Subtask to achieve SERVER-84243 - Dedicate a catalog cache and loader to the shard role. For more information refer to this document)
The goal of this task is to make the CatalogCache of the Grid to use the ConfigServerCatalogCacheLoader (CSCCL) and create a new instance of the CatalogCache and CatalogCacheLoader for the FilteringMetadataCache to only be used in that class. The last instance will be using the ShardServerCatalogCacheLoader (SSCCL).
By doing this, we aim to achieve the following:
- The CatalogCache used in the Grid will only reference routing information via CSCCL.
- The FilteringMetadataCache class will be responsible for updating the filtering metadata in the CSS and DSS via a new instance of the CatalogCache that uses SSCCL.
- depends on
-
SERVER-95979 Properly handle StaleConfig when wanted shard version is {0,0} in the router role
- Closed
-
SERVER-95980 CollectionRoutingInfoTargeter constructor can fail when fcv is uninitialized
- Closed
-
SERVER-96318 MultiCollectionRouter does not refresh the routing information for the main collection in case of a StaleConfig exception
- Closed
-
SERVER-96336 `index_commands_shard_targeting.js` should be comparing shard version, not collection version
- Closed
-
SERVER-96903 Throwing when unyielding after sending a remote request may continuously swallow a StaleConfig error
- Closed
-
SERVER-95392 Revisit all CatalogCache usages in the DDL coordinators
- Closed
-
SERVER-96323 Update tests that assume the routing information of a shard is up-to-date before running $lookup
- Closed
-
SERVER-96324 Add retriability on transactions the can fail with StaleConfig exceptions
- Closed
-
SERVER-96325 Update js tests profiling that execute nested lookups to accept StaleConfig errors
- Closed
- is depended on by
-
SERVER-97318 Update unit tests to work with the catalog cache split gated by its feature flag
- Blocked
-
SERVER-97319 Enable featureFlagCatalogCacheSplit in the embedded router build variant
- Blocked
-
SERVER-95926 Create a ShardServerCatalogCacheLoader interface for its implementations
- Blocked
-
SERVER-95927 Remove the CatalogCache dedicated to config server’s background activities
- Blocked
-
SERVER-96634 Make the routing CatalogCache a service context decoration
- Blocked
- is related to
-
SERVER-97580 Pre-warm shard routing information before running checks for `routing_cache_gossiping.js`
- In Code Review
-
SERVER-97512 Investigate if a shard can refresh its routing information and retry the operation within a transaction
- Open
-
SERVER-97511 flushRoutingTableCacheUpdates and flushDatabaseCacheUpdates commands should not refresh the routing information
- In Progress
- related to
-
SERVER-84243 Dedicate a catalog cache and loader to the shard role
- In Progress