summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/base_cloner_test_fixture.cpp
diff options
context:
space:
mode:
authorBenety Goh <benety@mongodb.com>2015-05-27 12:32:18 -0400
committerBenety Goh <benety@mongodb.com>2015-05-29 19:59:31 -0400
commit36df0e5da71c5d256d8638e522866059f73b616b (patch)
tree0e24b79ba08bce591cf1249902d771ba480b657f /src/mongo/db/repl/base_cloner_test_fixture.cpp
parent993fc5e4ed9264965f16a948d3732d3fc55d1255 (diff)
downloadmongo-36df0e5da71c5d256d8638e522866059f73b616b.tar.gz
SERVER-18035 clean up collection and database cloners to not hold mutex when reporting completion status
Diffstat (limited to 'src/mongo/db/repl/base_cloner_test_fixture.cpp')
-rw-r--r--src/mongo/db/repl/base_cloner_test_fixture.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/mongo/db/repl/base_cloner_test_fixture.cpp b/src/mongo/db/repl/base_cloner_test_fixture.cpp
index 75bc0b7b886..92518498300 100644
--- a/src/mongo/db/repl/base_cloner_test_fixture.cpp
+++ b/src/mongo/db/repl/base_cloner_test_fixture.cpp
@@ -106,10 +106,12 @@ namespace repl {
ReplicationExecutorTest::setUp();
clear();
launchExecutorThread();
+ storageInterface.reset(new StorageInterfaceMock());
}
void BaseClonerTest::tearDown() {
ReplicationExecutorTest::tearDown();
+ storageInterface.reset();
}
void BaseClonerTest::clear() {
@@ -117,18 +119,18 @@ namespace repl {
}
void BaseClonerTest::setStatus(const Status& status) {
- boost::unique_lock<boost::mutex> lk(_mutex);
+ stdx::unique_lock<stdx::mutex> lk(_mutex);
_status = status;
_setStatusCondition.notify_all();
}
const Status& BaseClonerTest::getStatus() const {
- boost::unique_lock<boost::mutex> lk(_mutex);
+ stdx::unique_lock<stdx::mutex> lk(_mutex);
return _status;
}
void BaseClonerTest::waitForStatus() {
- boost::unique_lock<boost::mutex> lk(_mutex);
+ stdx::unique_lock<stdx::mutex> lk(_mutex);
if (_status == getDetectableErrorStatus()) {
try {
_setStatusCondition.wait_for(lk, Milliseconds(1000));
@@ -256,5 +258,10 @@ namespace repl {
return insertDocumentsFn ? insertDocumentsFn(txn, nss, docs) : Status::OK();
}
+ Status StorageInterfaceMock::commitCollection(OperationContext* txn,
+ const NamespaceString& nss) {
+ return Status::OK();
+ }
+
} // namespace repl
} // namespace mongo