diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/mongo/db/repl/oplogreader.h | 6 | ||||
| -rw-r--r-- | src/mongo/db/repl/rs_initialsync.cpp | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/mongo/db/repl/oplogreader.h b/src/mongo/db/repl/oplogreader.h index 3c983b007fc..3aeb5b7293d 100644 --- a/src/mongo/db/repl/oplogreader.h +++ b/src/mongo/db/repl/oplogreader.h @@ -84,8 +84,10 @@ public: DBClientConnection* conn() { return _conn.get(); } - BSONObj findOne(const char* ns, const Query& q) { - return conn()->findOne(ns, q, 0, QueryOption_SlaveOk); + BSONObj findOne(const char* ns, + const Query& q, + QueryOptions options = static_cast<QueryOptions>(0)) { + return conn()->findOne(ns, q, 0, QueryOption_SlaveOk | options); } BSONObj getLastOp(const std::string& ns) { return findOne(ns.c_str(), Query().sort(reverseNaturalObj)); diff --git a/src/mongo/db/repl/rs_initialsync.cpp b/src/mongo/db/repl/rs_initialsync.cpp index 3f8ff685de9..42a230e3d8a 100644 --- a/src/mongo/db/repl/rs_initialsync.cpp +++ b/src/mongo/db/repl/rs_initialsync.cpp @@ -368,7 +368,7 @@ Status _initialSync() { BSONObjBuilder queryBob; queryBob.append("ts", gte.done()); const BSONObj& query = queryBob.done(); - BSONObj lastOpConfirm = r.findOne(rsOplogName.c_str(), query); + BSONObj lastOpConfirm = r.findOne(rsOplogName.c_str(), query, QueryOption_OplogReplay); invariant(!lastOpConfirm.isEmpty()); OpTime lastOpConfirmTime = fassertStatusOK(40421, OpTime::parseFromOplogEntry(lastOpConfirm)); |
