summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/databases_cloner.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/databases_cloner.cpp')
-rw-r--r--src/mongo/db/repl/databases_cloner.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/mongo/db/repl/databases_cloner.cpp b/src/mongo/db/repl/databases_cloner.cpp
index e4cad653e4f..649c51ee7e5 100644
--- a/src/mongo/db/repl/databases_cloner.cpp
+++ b/src/mongo/db/repl/databases_cloner.cpp
@@ -230,6 +230,12 @@ void DatabasesCloner::setScheduleDbWorkFn_forTest(const CollectionCloner::Schedu
_scheduleDbWorkFn = work;
}
+void DatabasesCloner::setStartCollectionClonerFn(
+ const StartCollectionClonerFn& startCollectionCloner) {
+ LockGuard lk(_mutex);
+ _startCollectionClonerFn = startCollectionCloner;
+}
+
StatusWith<std::vector<BSONElement>> DatabasesCloner::parseListDatabasesResponse_forTest(
BSONObj dbResponse) {
return _parseListDatabasesResponse(dbResponse);
@@ -360,6 +366,9 @@ void DatabasesCloner::_onListDatabaseFinish(
if (_scheduleDbWorkFn) {
dbCloner->setScheduleDbWorkFn_forTest(_scheduleDbWorkFn);
}
+ if (_startCollectionClonerFn) {
+ dbCloner->setStartCollectionClonerFn(_startCollectionClonerFn);
+ }
// Start first database cloner.
if (_databaseCloners.empty()) {
startStatus = dbCloner->startup();