summaryrefslogtreecommitdiff
path: root/src/mongo/db/s/balancer/balancer.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/s/balancer/balancer.cpp')
-rw-r--r--src/mongo/db/s/balancer/balancer.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mongo/db/s/balancer/balancer.cpp b/src/mongo/db/s/balancer/balancer.cpp
index 36987fb81ec..7e334b8b86e 100644
--- a/src/mongo/db/s/balancer/balancer.cpp
+++ b/src/mongo/db/s/balancer/balancer.cpp
@@ -243,8 +243,9 @@ void Balancer::waitForBalancerToStop() {
void Balancer::joinCurrentRound(OperationContext* opCtx) {
stdx::unique_lock<stdx::mutex> scopedLock(_mutex);
const auto numRoundsAtStart = _numBalancerRounds;
- _condVar.wait(scopedLock,
- [&] { return !_inBalancerRound || _numBalancerRounds != numRoundsAtStart; });
+ opCtx->waitForConditionOrInterrupt(_condVar, scopedLock, [&] {
+ return !_inBalancerRound || _numBalancerRounds != numRoundsAtStart;
+ });
}
Status Balancer::rebalanceSingleChunk(OperationContext* opCtx, const ChunkType& chunk) {