SERVER-109033 Fix double lock in SSLManagerCoordinator::rotate() (#39… (#40321)
GitOrigin-RevId: 4fa70b9c6c8fb59249eff5f772c441192136c6ae
This commit is contained in:
parent
138e6a6a1a
commit
527bc506a2
@ -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();
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user