diff options
Diffstat (limited to 'src/mongo/db/cloner.cpp')
-rw-r--r-- | src/mongo/db/cloner.cpp | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/src/mongo/db/cloner.cpp b/src/mongo/db/cloner.cpp index 7ea8669ec4f..6aa2f1cdb33 100644 --- a/src/mongo/db/cloner.cpp +++ b/src/mongo/db/cloner.cpp @@ -145,12 +145,13 @@ struct Cloner::Fun { // XXX: can probably take dblock instead unique_ptr<ScopedTransaction> scopedXact(new ScopedTransaction(txn, MODE_X)); unique_ptr<Lock::GlobalWrite> globalWriteLock(new Lock::GlobalWrite(txn->lockState())); - uassert(ErrorCodes::NotMaster, - str::stream() << "Not primary while cloning collection " << from_collection.ns() - << " to " - << to_collection.ns(), - !txn->writesAreReplicated() || - repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(to_collection)); + uassert( + ErrorCodes::NotMaster, + str::stream() << "Not primary while cloning collection " << from_collection.ns() + << " to " + << to_collection.ns(), + !txn->writesAreReplicated() || + repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(txn, to_collection)); // Make sure database still exists after we resume from the temp release Database* db = dbHolder().openDb(txn, _dbName); @@ -204,11 +205,11 @@ struct Cloner::Fun { // Check if everything is still all right. if (txn->writesAreReplicated()) { - uassert( - 28592, - str::stream() << "Cannot write to ns: " << to_collection.ns() - << " after yielding", - repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(to_collection)); + uassert(28592, + str::stream() << "Cannot write to ns: " << to_collection.ns() + << " after yielding", + repl::getGlobalReplicationCoordinator()->canAcceptWritesFor( + txn, to_collection)); } // TODO: SERVER-16598 abort if original db or collection is gone. @@ -349,7 +350,7 @@ void Cloner::copy(OperationContext* txn, << " with filter " << query.toString(), !txn->writesAreReplicated() || - repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(to_collection)); + repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(txn, to_collection)); } void Cloner::copyIndexes(OperationContext* txn, @@ -372,7 +373,7 @@ void Cloner::copyIndexes(OperationContext* txn, << to_collection.ns() << " (Cloner)", !txn->writesAreReplicated() || - repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(to_collection)); + repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(txn, to_collection)); if (indexesToBuild.empty()) @@ -479,7 +480,7 @@ bool Cloner::copyCollection(OperationContext* txn, uassert(ErrorCodes::PrimarySteppedDown, str::stream() << "Not primary while copying collection " << ns << " (Cloner)", !txn->writesAreReplicated() || - repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(nss)); + repl::getGlobalReplicationCoordinator()->canAcceptWritesFor(txn, nss)); Database* db = dbHolder().openDb(txn, dbname); @@ -704,7 +705,7 @@ Status Cloner::copyDb(OperationContext* txn, str::stream() << "Not primary while cloning database " << opts.fromDB << " (after getting list of collections to clone)", !txn->writesAreReplicated() || - repl::getGlobalReplicationCoordinator()->canAcceptWritesForDatabase(toDBName)); + repl::getGlobalReplicationCoordinator()->canAcceptWritesForDatabase(txn, toDBName)); if (opts.syncData) { if (opts.createCollections) { |