summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/rs_rollback.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/rs_rollback.cpp')
-rw-r--r--src/mongo/db/repl/rs_rollback.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/src/mongo/db/repl/rs_rollback.cpp b/src/mongo/db/repl/rs_rollback.cpp
index 4c3c69e912c..250c55b0a71 100644
--- a/src/mongo/db/repl/rs_rollback.cpp
+++ b/src/mongo/db/repl/rs_rollback.cpp
@@ -229,8 +229,9 @@ namespace mongo {
verify( Lock::isLocked() );
Client::Context c(rsoplog);
- boost::scoped_ptr<Runner> runner(
- InternalPlanner::collectionScan(rsoplog, InternalPlanner::BACKWARD));
+ boost::scoped_ptr<Runner> runner(InternalPlanner::collectionScan(rsoplog,
+ c.db()->getCollection(rsoplog),
+ InternalPlanner::BACKWARD));
BSONObj ourObj;
DiskLoc ourLoc;
@@ -496,7 +497,7 @@ namespace mongo {
// Add the doc to our rollback file
BSONObj obj;
- bool found = Helpers::findOne(d.ns, pattern, obj, false);
+ bool found = Helpers::findOne(c.db()->getCollection(d.ns), pattern, obj, false);
if ( found ) {
rs->goingToDelete( obj );
} else {
@@ -517,7 +518,7 @@ namespace mongo {
/** todo: IIRC cappedTruncateAfter does not handle completely empty. todo. */
// this will crazy slow if no _id index.
long long start = Listener::getElapsedTimeMillis();
- DiskLoc loc = Helpers::findOne(d.ns, pattern, false);
+ DiskLoc loc = Helpers::findOne(collection, pattern, false);
if( Listener::getElapsedTimeMillis() - start > 200 )
log() << "replSet warning roll back slow no _id index for " << d.ns << " perhaps?" << rsLog;
//would be faster but requires index: DiskLoc loc = Helpers::findById(nsd, pattern);