summaryrefslogtreecommitdiff
path: root/src/mongo/db/s/range_deleter_service_test_util.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/s/range_deleter_service_test_util.cpp')
-rw-r--r--src/mongo/db/s/range_deleter_service_test_util.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mongo/db/s/range_deleter_service_test_util.cpp b/src/mongo/db/s/range_deleter_service_test_util.cpp
index 607f51abbf8..fde50854c74 100644
--- a/src/mongo/db/s/range_deleter_service_test_util.cpp
+++ b/src/mongo/db/s/range_deleter_service_test_util.cpp
@@ -85,15 +85,15 @@ std::shared_ptr<RangeDeletionWithOngoingQueries> createRangeDeletionTaskWithOngo
createRangeDeletionTask(collectionUUID, min, max, whenToClean, pending, keyPattern));
}
-// TODO review this method: the task may be registered, finish and be recreated by inserting the
-// document
SharedSemiFuture<void> registerAndCreatePersistentTask(
OperationContext* opCtx,
const RangeDeletionTask& rdt,
SemiFuture<void>&& waitForActiveQueriesToComplete) {
auto rds = RangeDeleterService::get(opCtx);
- auto completionFuture = rds->registerTask(rdt, std::move(waitForActiveQueriesToComplete));
+ // Register task as `pending` in order to block it until the persistent document is non-pending
+ auto completionFuture = rds->registerTask(
+ rdt, std::move(waitForActiveQueriesToComplete), false /* fromStepUp */, true /* pending*/);
// Range deletion task will only proceed if persistent doc exists and its `pending` field
// doesn't exist