summaryrefslogtreecommitdiff
path: root/src/mongo/db/range_deleter.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/range_deleter.cpp')
-rw-r--r--src/mongo/db/range_deleter.cpp14
1 files changed, 6 insertions, 8 deletions
diff --git a/src/mongo/db/range_deleter.cpp b/src/mongo/db/range_deleter.cpp
index caa2c63804c..cb00ad28554 100644
--- a/src/mongo/db/range_deleter.cpp
+++ b/src/mongo/db/range_deleter.cpp
@@ -448,8 +448,6 @@ namespace {
while (!inShutdown() && !stopRequested()) {
string errMsg;
- boost::scoped_ptr<OperationContext> txn(getGlobalServiceContext()->newOpCtx());
-
RangeDeleteEntry* nextTask = NULL;
{
@@ -472,12 +470,11 @@ namespace {
RangeDeleteEntry* entry = *iter;
set<CursorId> cursorsNow;
- {
- if (entry->options.waitForOpenCursors) {
- _env->getCursorIds(txn.get(),
- entry->options.range.ns,
- &cursorsNow);
- }
+ if (entry->options.waitForOpenCursors) {
+ auto txn = getGlobalServiceContext()->newOpCtx();
+ _env->getCursorIds(txn.get(),
+ entry->options.range.ns,
+ &cursorsNow);
}
set<CursorId> cursorsLeft;
@@ -516,6 +513,7 @@ namespace {
}
{
+ auto txn = getGlobalServiceContext()->newOpCtx();
nextTask->stats.deleteStartTS = jsTime();
bool delResult = _env->deleteRange(txn.get(),
*nextTask,