Status OperationContextImpl::checkForInterruptNoAssert() { if (getGlobalServiceContext()->getKillAllOperations()) { return Status(ErrorCodes::InterruptedAtShutdown, "interrupted at shutdown"); } CurOp* curOp = CurOp::get(this); if (curOp->maxTimeHasExpired()) { markKilled(); return Status(ErrorCodes::ExceededTimeLimit, "operation exceeded time limit"); } MONGO_FAIL_POINT_BLOCK(checkForInterruptFail, scopedFailPoint) { if (opShouldFail(this, scopedFailPoint.getData())) { log() << "set pending kill on " << (curOp->parent() ? "nested" : "top-level") << " op " << getOpID() << ", for checkForInterruptFail"; markKilled(); } } if (isKillPending()) { return Status(ErrorCodes::Interrupted, "operation was interrupted"); } return Status::OK(); }