-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 8.0.0
-
Component/s: None
-
None
-
Catalog and Routing
-
Fully Compatible
-
ALL
-
v8.0
-
CAR Team 2024-09-30
-
200
-
1
CheckMetadataConsistency uses the sharding metadata installed on the shards to determine if a shard currently owns chunks of a collection. And based on that, it determines if the collection should be present on the local catalog and flags an inconsistency if it isn't.
CheckMetadataConsistency reads the sharding metadata by using CollectionShardingRuntime::getCurrentMetadataIfKnown, which ignores the critical section state – it simply returns the currently installed metadata, even if the critical section is active. If it is active, then the currently installed metadata might not be the valid one, since it is currently being changed. This can cause CheckMetadataConsistency to report false positives.