SERVER-109033 Fix double lock in SSLManagerCoordinator::rotate() (#39… (#40321)

GitOrigin-RevId: 4fa70b9c6c8fb59249eff5f772c441192136c6ae
This commit is contained in:
Gabriel Marks 2025-10-07 16:25:38 -04:00 committed by MongoDB Bot
parent 138e6a6a1a
commit 527bc506a2

View File

@ -385,11 +385,16 @@ void SSLManagerCoordinator::rotate() {
invariant(tl != nullptr);
uassertStatusOK(tl->rotateCertificates(manager, false));
std::shared_ptr<SSLManagerInterface> originalManager = *_manager;
_manager = manager;
std::shared_ptr<SSLManagerInterface> originalManager;
LOGV2(4913400, "Successfully rotated X509 certificates.");
logSSLInfo(_manager->get()->getSSLInformationToLog());
{
auto synchronizedManager = _manager.synchronize();
originalManager = *synchronizedManager;
*synchronizedManager = manager;
LOGV2(4913400, "Successfully rotated X509 certificates.");
logSSLInfo(synchronizedManager->get()->getSSLInformationToLog());
}
originalManager->stopJobs();
}