diff options
Diffstat (limited to 'src/mongo/db/query/plan_yield_policy_impl.cpp')
| -rw-r--r-- | src/mongo/db/query/plan_yield_policy_impl.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/mongo/db/query/plan_yield_policy_impl.cpp b/src/mongo/db/query/plan_yield_policy_impl.cpp index 8b45e2998ed..e4f0688c97f 100644 --- a/src/mongo/db/query/plan_yield_policy_impl.cpp +++ b/src/mongo/db/query/plan_yield_policy_impl.cpp @@ -39,8 +39,9 @@ PlanYieldPolicyImpl::PlanYieldPolicyImpl(PlanExecutorImpl* exec, PlanYieldPolicy::YieldPolicy policy, const Yieldable* yieldable, std::unique_ptr<YieldPolicyCallbacks> callbacks) - : PlanYieldPolicy(exec->getOpCtx(), - policy, + : PlanYieldPolicy(exec->getOpCtx()->lockState()->isGlobalLockedRecursively() + ? PlanYieldPolicy::YieldPolicy::NO_YIELD + : policy, exec->getOpCtx()->getServiceContext()->getFastClockSource(), internalQueryExecYieldIterations.load(), Milliseconds{internalQueryExecYieldPeriodMS.load()}, |
