-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 6.0.0-rc12
-
Component/s: None
-
Fully Compatible
-
ALL
-
Sharding EMEA 2022-07-11, Sharding EMEA 2022-07-25, Sharding EMEA 2022-08-08
-
5
Currently the collMod coordinator blocks and resume migrations as part of its coordination.
In case of sharded timeseries collection we should block migrations on the bucket namespace rather than the view namespace associated with the timeseries collection
In SERVER-67399 I tried to fix this by just blocking migrations on the targeting namespace.
Unfortunately I needed to revert the simple fix because I discovered that the kBlockShards phase of the collMod cooridnator is not idempotent because it performs the following steps:
- blocks migrations for the specific collection
- acquire the collection critical section on all participant shard.
In case we already performed 2. we can't re-execute 1. because stopping migrations will serialize with the collection critical section taken by 2.
In fact as part of blocking migrations we send a {_flushRoutingTableCacheUpdates} to all the shards that in turn blocks behind the acquired critical section
- causes
-
SERVER-69038 CollMod coordinator V3 does not serialize with concurrent migrations
- Closed