Files
mongo/jstests/replsets/tenant_migration_recipient_sync_data_timeout.js
2023-01-10 05:28:35 +00:00

41 lines
1.1 KiB
JavaScript

/**
* Tests that tenant migration does not fail if the recipientSyncData takes a long time to return.
*
* @tags: [
* incompatible_with_macos,
* incompatible_with_windows_tls,
* requires_majority_read_concern,
* requires_persistence,
* serverless,
* ]
*/
(function() {
"use strict";
load("jstests/libs/fail_point_util.js");
load("jstests/libs/uuid_util.js");
load("jstests/replsets/libs/tenant_migration_test.js");
const tenantMigrationTest = new TenantMigrationTest({name: jsTestName()});
const recipientPrimary = tenantMigrationTest.getRecipientPrimary();
configureFailPoint(recipientPrimary, "failCommand", {
failInternalCommands: true,
blockConnection: true,
blockTimeMS: 35 * 1000,
failCommands: ["recipientSyncData"],
});
const migrationId = UUID();
const migrationOpts = {
migrationIdString: extractUUIDFromObject(migrationId),
tenantId: ObjectId().str,
};
TenantMigrationTest.assertCommitted(tenantMigrationTest.runMigration(migrationOpts));
assert.commandWorked(tenantMigrationTest.forgetMigration(migrationOpts.migrationIdString));
tenantMigrationTest.stop();
})();