-
Type: Bug
-
Resolution: Fixed
-
Priority: Major - P3
-
Affects Version/s: 7.0.0-rc0
-
Component/s: None
-
Fully Compatible
-
ALL
-
147
-
1
In BF-28001, one writing thread is generating a sample ID and invokes the collection's sample counters. In another thread, query sampling on this collection is being disabled, and the collection's sample counters are removed first, and then the collection's sampling configuration is removed. Because these two removals do not happen atomically, the writing thread decides to generate a sample ID, but then an invariant is false when it cannot fetch the collection's sample counters.
The removal of a sampling configuration and the removal of the collection's sample counters must occur atomically, within QueryAnalysisSampler::_refreshConfigurations().