-
Type: Bug
-
Resolution: Done
-
Priority: Major - P3
-
Affects Version/s: 3.2.5, 3.3.5
-
Component/s: Sharding
-
Fully Compatible
-
ALL
-
0
If one thread starts reloading the shard registry, all other calls to reload will block waiting for it to complete. If addShard runs concurrently with the reload, it is possible that the initial reload will not see the newly added shard and the reload initiated by addShard will do nothing, assuming that the first reload saw the latest state.
This is a race condition, which can cause shardCollection calls with sharded key to not use newly added shards.