Details
-
Bug
-
Resolution: Fixed
-
Major - P3
-
None
-
None
-
Fully Compatible
-
ALL
-
Service Arch 2023-04-17
-
2
Description
SERVER-72373 modified MirrorMaestro to use PseudoRandom to pick a normalized subset of eligible hosts. PseudoRandom, however, is not thread-safe and concurrent accesses could result in read-after-write data races. Since MirrorMaestro is accessing PseudoRandom through executor threads, we can either use a synchronization primitive or make instances of PseudoRandom thread-local to avoid read-after-write races.