diff options
Diffstat (limited to 'src/mongo/db/repl/rollback_impl.cpp')
-rw-r--r-- | src/mongo/db/repl/rollback_impl.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/mongo/db/repl/rollback_impl.cpp b/src/mongo/db/repl/rollback_impl.cpp index a03e6793ea0..70d2bb88940 100644 --- a/src/mongo/db/repl/rollback_impl.cpp +++ b/src/mongo/db/repl/rollback_impl.cpp @@ -475,12 +475,13 @@ void RollbackImpl::_restoreTxnsTableEntryFromRetryableWrites(OperationContext* o const auto filterFromMigration = BSON("op" << "n" << "fromMigrate" << true); - auto cursor = client->query( - NamespaceString::kRsOplogNamespace, - BSON("ts" << BSON("$gt" << stableTimestamp) << "txnNumber" << BSON("$exists" << true) - << "stmtId" << BSON("$exists" << true) << "prevOpTime.ts" - << BSON("$gte" << Timestamp(1, 0) << "$lte" << stableTimestamp) << "$or" - << BSON_ARRAY(filter << filterFromMigration))); + FindCommandRequest findRequest{NamespaceString::kRsOplogNamespace}; + findRequest.setFilter(BSON("ts" << BSON("$gt" << stableTimestamp) << "txnNumber" + << BSON("$exists" << true) << "stmtId" + << BSON("$exists" << true) << "prevOpTime.ts" + << BSON("$gte" << Timestamp(1, 0) << "$lte" << stableTimestamp) + << "$or" << BSON_ARRAY(filter << filterFromMigration))); + auto cursor = client->find(std::move(findRequest)); while (cursor->more()) { auto doc = cursor->next(); auto swEntry = OplogEntry::parse(doc); |