-
Type: Task
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: None
-
Component/s: Sharding
-
Fully Compatible
-
Sharding 2021-03-22
-
126
Currently, when the ConfigServerCatalogCache refreshes, it first issues a majority read on config.collections and after that it issues a second majority read on config.chunks Because of this, the collection metadata we read from config.collections may not be consistent with the chunks (and thus collection version) we read from config.chunks.
To address this we need to ensure that we read config.collections and config.chunks 'as a package'. To do so, we can use an aggregation pipeline on config.collections that has a $lookUp stage from config.chunks, and attach a snapshot read concern.
- causes
-
SERVER-56190 Fix wrong nss in ExpressionContext for CatalogCache refresh aggregation
- Closed
-
SERVER-59803 Set maxTimeMs for catalog cache refresh aggregation
- Closed
- is depended on by
-
SERVER-53539 TypeCollectionReshardingFields are incorrect following a shard version refresh
- Closed
- related to
-
SERVER-56302 Catalog cache refresh can fail with SnapshotTooOld after query yields
- Closed