BugZero found this defect 40 days ago.
Data sources
All data on this page is proprietary to BugZero® or gathered from public sources
4/9/2024
MongoDB Server
No affected releases provided.
No fixed releases provided.
The ReplicaSetMonitorManager::_stats member can be concurrently accessed from different threads without synchronization, i.e. via report() where it is read without synchronization. This member has type shared_ptr - note that while the pointed-to object is thread-safe/synchronized, the shared_ptr object itself still requires synchronization, and cannot be accessed concurrently by different threads (one of which writes/mutates it) without additional synchronization. We should fix it by either gating access with the ReplicaSetMonitorManager::_mutex or using the new c++20 atomic