-
Type: Task
-
Resolution: Unresolved
-
Priority: Major - P3
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
-
Storage Execution
The loose atomic_load/atomic_store functions for shared_ptr are implemented over a global pool of 16 mutexes on Linux and a single mutex on Windows.
This leads to unrelated shared_ptr stores may use the same mutex and create contention for each other. We've added our own explicit mutexes but ideally we should use std::atomic<std::shared_ptr> when supported in our toolchain.
- duplicates
-
SERVER-89550 CollectionCatalog::latest uses a global mutex to load the catalog reference
- Closed
- related to
-
SERVER-91131 Complete TODO listed in SERVER-56428
- Closed