summaryrefslogtreecommitdiff
path: root/src/mongo/db/commands/validate.cpp
diff options
context:
space:
mode:
authorBen Caimano <ben.caimano@mongodb.com>2019-10-17 00:51:52 +0000
committerevergreen <evergreen@mongodb.com>2019-10-17 00:51:52 +0000
commit27ed83ca30107c8e39417ba1dfed5ec0dd8b859d (patch)
tree399e5b548782b6c84627389f94ddb61909e2746a /src/mongo/db/commands/validate.cpp
parentb37eb88c8ae801751711dd54f2506d3561989db7 (diff)
downloadmongo-27ed83ca30107c8e39417ba1dfed5ec0dd8b859d.tar.gz
SERVER-43987 Require predicates with OperationContext::waitForConditionOrInterrupt()
Diffstat (limited to 'src/mongo/db/commands/validate.cpp')
-rw-r--r--src/mongo/db/commands/validate.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/db/commands/validate.cpp b/src/mongo/db/commands/validate.cpp
index 35369e9ef7c..09594aa207e 100644
--- a/src/mongo/db/commands/validate.cpp
+++ b/src/mongo/db/commands/validate.cpp
@@ -150,9 +150,9 @@ public:
{
stdx::unique_lock<Latch> lock(_validationMutex);
try {
- while (_validationsInProgress.find(nss.ns()) != _validationsInProgress.end()) {
- opCtx->waitForConditionOrInterrupt(_validationNotifier, lock);
- }
+ opCtx->waitForConditionOrInterrupt(_validationNotifier, lock, [&] {
+ return _validationsInProgress.find(nss.ns()) == _validationsInProgress.end();
+ });
} catch (AssertionException& e) {
CommandHelpers::appendCommandStatusNoThrow(
result,