summaryrefslogtreecommitdiff
path: root/src/mongo/db/repl/tenant_collection_cloner_test.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mongo/db/repl/tenant_collection_cloner_test.cpp')
-rw-r--r--src/mongo/db/repl/tenant_collection_cloner_test.cpp82
1 files changed, 0 insertions, 82 deletions
diff --git a/src/mongo/db/repl/tenant_collection_cloner_test.cpp b/src/mongo/db/repl/tenant_collection_cloner_test.cpp
index b98c6f129e6..376c2aa2acf 100644
--- a/src/mongo/db/repl/tenant_collection_cloner_test.cpp
+++ b/src/mongo/db/repl/tenant_collection_cloner_test.cpp
@@ -462,88 +462,6 @@ TEST_F(TenantCollectionClonerTest, InsertDocumentsMultipleBatches) {
ASSERT_EQUALS(3u, stats.receivedBatches);
}
-TEST_F(TenantCollectionClonerTest, InsertDocumentsScheduleDBWorkFailed) {
- // Set up data for preliminary stages
- _mockServer->setCommandReply("count", createCountResponse(3));
- _mockServer->setCommandReply("listIndexes",
- createCursorResponse(_nss.ns(), BSON_ARRAY(_idIndexSpec)));
- _mockServer->setCommandReply("find", createFindResponse());
-
- // Set up documents to be returned from upstream node.
- _mockServer->insert(_nss.ns(), BSON("_id" << 1));
- _mockServer->insert(_nss.ns(), BSON("_id" << 2));
- _mockServer->insert(_nss.ns(), BSON("_id" << 3));
-
- auto cloner = makeCollectionCloner();
- // Stop before running the query to set up the failure.
- auto collClonerBeforeFailPoint = globalFailPointRegistry().find("hangBeforeClonerStage");
- auto timesEntered = collClonerBeforeFailPoint->setMode(
- FailPoint::alwaysOn,
- 0,
- fromjson("{cloner: 'TenantCollectionCloner', stage: 'query', nss: '" + _nss.ns() + "'}"));
-
- // Run the cloner in a separate thread.
- stdx::thread clonerThread([&] {
- Client::initThread("ClonerRunner");
- ASSERT_EQUALS(ErrorCodes::UnknownError, cloner->run());
- });
- // Wait for the failpoint to be reached
- collClonerBeforeFailPoint->waitForTimesEntered(timesEntered + 1);
- // Replace scheduleDbWork function so that cloner will fail to schedule DB work after
- // getting documents.
- cloner->setScheduleDbWorkFn_forTest([](const executor::TaskExecutor::CallbackFn& workFn) {
- return StatusWith<executor::TaskExecutor::CallbackHandle>(ErrorCodes::UnknownError, "");
- });
-
- // Continue and finish. Final status is checked in the thread.
- collClonerBeforeFailPoint->setMode(FailPoint::off, 0);
- clonerThread.join();
-}
-
-TEST_F(TenantCollectionClonerTest, InsertDocumentsCallbackCanceled) {
- // Set up data for preliminary stages
- _mockServer->setCommandReply("count", createCountResponse(3));
- _mockServer->setCommandReply("listIndexes",
- createCursorResponse(_nss.ns(), BSON_ARRAY(_idIndexSpec)));
- _mockServer->setCommandReply("find", createFindResponse());
-
- // Set up documents to be returned from upstream node.
- _mockServer->insert(_nss.ns(), BSON("_id" << 1));
- _mockServer->insert(_nss.ns(), BSON("_id" << 2));
- _mockServer->insert(_nss.ns(), BSON("_id" << 3));
-
- auto cloner = makeCollectionCloner();
- // Stop before running the query to set up the failure.
- auto collClonerBeforeFailPoint = globalFailPointRegistry().find("hangBeforeClonerStage");
- auto timesEntered = collClonerBeforeFailPoint->setMode(
- FailPoint::alwaysOn,
- 0,
- fromjson("{cloner: 'TenantCollectionCloner', stage: 'query', nss: '" + _nss.ns() + "'}"));
-
- // Run the cloner in a separate thread.
- stdx::thread clonerThread([&] {
- Client::initThread("ClonerRunner");
- ASSERT_EQUALS(ErrorCodes::CallbackCanceled, cloner->run());
- });
- // Wait for the failpoint to be reached
- collClonerBeforeFailPoint->waitForTimesEntered(timesEntered + 1);
- // Replace scheduleDbWork function so that cloner will fail to schedule DB work after
- // getting documents.
- cloner->setScheduleDbWorkFn_forTest([&](const executor::TaskExecutor::CallbackFn& workFn) {
- executor::TaskExecutor::CallbackHandle handle(std::make_shared<MockCallbackState>());
- mongo::executor::TaskExecutor::CallbackArgs args{
- nullptr,
- handle,
- {ErrorCodes::CallbackCanceled, "Never run, but treat like cancelled."}};
- workFn(args);
- return StatusWith<executor::TaskExecutor::CallbackHandle>(handle);
- });
-
- // Continue and finish. Final status is checked in the thread.
- collClonerBeforeFailPoint->setMode(FailPoint::off, 0);
- clonerThread.join();
-}
-
TEST_F(TenantCollectionClonerTest, InsertDocumentsFailed) {
// Set up data for preliminary stages
_mockServer->setCommandReply("count", createCountResponse(3));