diff options
author | jannaerin <golden.janna@gmail.com> | 2018-05-25 11:37:23 -0400 |
---|---|---|
committer | jannaerin <golden.janna@gmail.com> | 2018-05-25 11:44:19 -0400 |
commit | 1d296f2e5bf33274e52be0b0bbb823e07ad6b8dd (patch) | |
tree | 061812080a00bca89641f0676c188bfd779b2cbe | |
parent | 848d26c643a91b94c8e27f7ab41d787fbce0ac59 (diff) | |
download | mongo-1d296f2e5bf33274e52be0b0bbb823e07ad6b8dd.tar.gz |
SERVER-33639 Protect against distlock acquisition timeout at createDatabase time
(cherry picked from commit c1cc37fa0958963427000ec1ac2368efe2ea8177)
-rw-r--r-- | src/mongo/db/s/config/namespace_serializer.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mongo/db/s/config/namespace_serializer.cpp b/src/mongo/db/s/config/namespace_serializer.cpp index 35ce38546d3..1f3ba11cbcd 100644 --- a/src/mongo/db/s/config/namespace_serializer.cpp +++ b/src/mongo/db/s/config/namespace_serializer.cpp @@ -67,10 +67,10 @@ NamespaceSerializer::ScopedLock NamespaceSerializer::lock(OperationContext* opCt if (iter == _inProgressMap.end()) { _inProgressMap.try_emplace(nss, std::make_shared<NSLock>()); } else { - auto& nsLock = iter->second; + auto nsLock = iter->second; nsLock->numWaiting++; opCtx->waitForConditionOrInterrupt( - nsLock->cvLocked, lock, [&nsLock]() { return !nsLock->isInProgress; }); + nsLock->cvLocked, lock, [nsLock]() { return !nsLock->isInProgress; }); nsLock->isInProgress = true; } |