diff options
53 files changed, 54 insertions, 299 deletions
diff --git a/etc/generate_subtasks_config.yml b/etc/generate_subtasks_config.yml index 4b78d77367f..f5c039234ea 100644 --- a/etc/generate_subtasks_config.yml +++ b/etc/generate_subtasks_config.yml @@ -34,7 +34,6 @@ build_variant_large_distro_exceptions: - enterprise-ubuntu1804-s390x - enterprise-ubuntu2004-arm64 - hot_backups-rhel-70-64-bit - - linux-64-ephemeralForTest - macos - macos-arm64 - macos-debug-suggested diff --git a/jstests/concurrency/fsm_workload_helpers/server_types.js b/jstests/concurrency/fsm_workload_helpers/server_types.js index 7487bd53561..272e07d901e 100644 --- a/jstests/concurrency/fsm_workload_helpers/server_types.js +++ b/jstests/concurrency/fsm_workload_helpers/server_types.js @@ -56,18 +56,11 @@ function isWiredTiger(db) { } /** - * Returns true if the current storage engine is ephemeralForTest, and false otherwise. - */ -function isEphemeralForTest(db) { - return getStorageEngineName(db) === 'ephemeralForTest'; -} - -/** * Returns true if the current storage engine is ephemeral, and false otherwise. */ function isEphemeral(db) { var engine = getStorageEngineName(db); - return (engine === 'inMemory') || (engine === 'ephemeralForTest'); + return engine === 'inMemory'; } /** diff --git a/jstests/concurrency/fsm_workloads/create_database.js b/jstests/concurrency/fsm_workloads/create_database.js index 8391a6fb5dc..fead902fcc1 100644 --- a/jstests/concurrency/fsm_workloads/create_database.js +++ b/jstests/concurrency/fsm_workloads/create_database.js @@ -12,7 +12,6 @@ * @tags: [creates_background_indexes] */ -load('jstests/concurrency/fsm_workload_helpers/server_types.js'); // for isEphemeralForTest load("jstests/concurrency/fsm_workload_helpers/assert_handle_fail_in_transaction.js"); var $config = (function() { diff --git a/jstests/core/apitest_db.js b/jstests/core/apitest_db.js index 03d82401726..5d220520abc 100644 --- a/jstests/core/apitest_db.js +++ b/jstests/core/apitest_db.js @@ -94,8 +94,8 @@ assert.commandFailed( 'configured a storage engine with invalid options'); // Tests that a non-active storage engine can be configured so long as it is registered. -var alternateStorageEngine = db.serverBuildInfo().storageEngines.find( - engine => engine !== storageEngineName && engine !== "biggie"); +var alternateStorageEngine = + db.serverBuildInfo().storageEngines.find(engine => engine !== storageEngineName); if (alternateStorageEngine) { var indexOptions = {storageEngine: {[alternateStorageEngine]: {}}}; assert.commandWorked(db.createCollection('idxOptions', {indexOptionDefaults: indexOptions}), diff --git a/jstests/core/crud_ops_do_not_throw_locktimeout.js b/jstests/core/crud_ops_do_not_throw_locktimeout.js index 2efec78ef37..8062ca996d1 100644 --- a/jstests/core/crud_ops_do_not_throw_locktimeout.js +++ b/jstests/core/crud_ops_do_not_throw_locktimeout.js @@ -24,12 +24,9 @@ const doc = { assert.commandWorked(coll.insert(doc)); // Figure out if lock-free reads is supported so we know the expected behavior later. -// (1) ephemeralForTest automatically uses enableMajorityReadConcern=false, which disable lock-free -// reads. -// (2) lock-free reads are only supported in server versions 4.9+ +// Lock-free reads are only supported in server versions 4.9+ const maxWireVersion = assert.commandWorked(db.runCommand({isMaster: 1})).maxWireVersion; -const isLockFreeReadsEnabled = jsTest.options().storageEngine !== "ephemeralForTest" && - maxWireVersion >= 12 /* WIRE_VERSION_49 */; +const isLockFreeReadsEnabled = maxWireVersion >= 12 /* WIRE_VERSION_49 */; const failpoint = 'hangAfterDatabaseLock'; assert.commandWorked(db.adminCommand({configureFailPoint: failpoint, mode: "alwaysOn"})); diff --git a/jstests/core/views/invalid_system_views.js b/jstests/core/views/invalid_system_views.js index 25e973ed9a1..8d5c1131920 100644 --- a/jstests/core/views/invalid_system_views.js +++ b/jstests/core/views/invalid_system_views.js @@ -104,8 +104,7 @@ function runTest(badViewDefinition) { } const storageEngine = jsTest.options().storageEngine; - if (isMongos || storageEngine === "ephemeralForTest" || storageEngine === "inMemory" || - storageEngine === "biggie") { + if (isMongos || storageEngine === "inMemory") { print("Not testing compact command on mongos or ephemeral storage engine"); } else { assert.commandWorked(viewsDB.runCommand({compact: "collection", force: true}), diff --git a/jstests/core_standalone/read_concern.js b/jstests/core_standalone/read_concern.js index 17b276b99ed..83b52f7dc9f 100644 --- a/jstests/core_standalone/read_concern.js +++ b/jstests/core_standalone/read_concern.js @@ -20,7 +20,7 @@ assert.commandWorked(t.runCommand({find: "read_concern", readConcern: {level: "a "expected available readConcern to succeed on standalone mongod"); var majority_result = t.runCommand({find: "read_concern", readConcern: {level: "majority"}}); -if (isWiredTiger(db) || (isEphemeral(db) && !isEphemeralForTest(db))) { +if (isWiredTiger(db) || isEphemeral(db)) { // Majority readConcern succeed. assert.commandWorked(majority_result, "expected majority readConcern to succeed on standalone mongod"); diff --git a/jstests/libs/retryable_writes_util.js b/jstests/libs/retryable_writes_util.js index 33db8ac9f8f..6033655351d 100644 --- a/jstests/libs/retryable_writes_util.js +++ b/jstests/libs/retryable_writes_util.js @@ -43,11 +43,13 @@ var RetryableWritesUtil = (function() { return kRetryableWriteCommands.has(cmdName); } - const kStorageEnginesWithoutDocumentLocking = new Set(["ephemeralForTest"]); + // TODO (SERVER-66118): Remove. + const kStorageEnginesWithoutDocumentLocking = new Set([]); /** * Returns true if the given storage engine supports retryable writes (i.e. supports * document-level locking). + * TODO (SERVER-66118): Remove. */ function storageEngineSupportsRetryableWrites(storageEngineName) { return !kStorageEnginesWithoutDocumentLocking.has(storageEngineName); diff --git a/jstests/noPassthrough/lock_free_ops_concurrent_with_exclusive_lock.js b/jstests/noPassthrough/lock_free_ops_concurrent_with_exclusive_lock.js index d035efc61b1..8dfbf74da90 100644 --- a/jstests/noPassthrough/lock_free_ops_concurrent_with_exclusive_lock.js +++ b/jstests/noPassthrough/lock_free_ops_concurrent_with_exclusive_lock.js @@ -15,16 +15,6 @@ load('jstests/libs/parallel_shell_helpers.js'); let conn = MongoRunner.runMongod({}); assert(conn); -// Lock-free reads is disabled with the ephemeralForTest storage engine that uses -// enableMajorityReadConcern=false, which automatically disables lock-free reads. -const isLockFreeReadsEnabled = jsTest.options().storageEngine !== "ephemeralForTest"; - -if (!isLockFreeReadsEnabled) { - jsTestLog("Exiting test because lock-free reads are not enabled."); - MongoRunner.stopMongod(conn); - return; -} - const dbName = 'testDatabase'; const collName = 'testCollection'; diff --git a/jstests/noPassthrough/supports_read_concern_majority.js b/jstests/noPassthrough/supports_read_concern_majority.js index 64cc5b7dad1..5bf5bba6fa8 100644 --- a/jstests/noPassthrough/supports_read_concern_majority.js +++ b/jstests/noPassthrough/supports_read_concern_majority.js @@ -1,31 +1,11 @@ /** - * Tests that mongod fails to start if enableMajorityReadConcern is set to false on non test only - * storage engines, which are only expected to support read concern majority. - * - * Also verifies that the server automatically uses enableMajorityReadConcern=false if we're using a - * test only storage engine. + * Tests that mongod fails to start if enableMajorityReadConcern is set to false. */ (function() { "use strict"; -const storageEngine = jsTest.options().storageEngine; -if (storageEngine === "wiredTiger" || storageEngine === "inMemory") { - const conn = MongoRunner.runMongod({enableMajorityReadConcern: false}); - assert(!conn); - var logContents = rawMongoProgramOutput(); - assert(logContents.indexOf("enableMajorityReadConcern:false is no longer supported") > 0); - return; -} - -if (storageEngine === "ephemeralForTest") { - const conn = MongoRunner.runMongod(); - assert(conn); - var logContents = rawMongoProgramOutput(); - assert( - logContents.indexOf( - "Test storage engine does not support enableMajorityReadConcern=true, forcibly setting to false") > - 0); - MongoRunner.stopMongod(conn); - return; -} +const conn = MongoRunner.runMongod({enableMajorityReadConcern: false}); +assert(!conn); +const logContents = rawMongoProgramOutput(); +assert(logContents.indexOf("enableMajorityReadConcern:false is no longer supported") > 0); })();
\ No newline at end of file diff --git a/jstests/noPassthrough/validate_detects_invalid_index_options.js b/jstests/noPassthrough/validate_detects_invalid_index_options.js index 266e124984a..2ebc56d402f 100644 --- a/jstests/noPassthrough/validate_detects_invalid_index_options.js +++ b/jstests/noPassthrough/validate_detects_invalid_index_options.js @@ -37,9 +37,7 @@ assert(!validateRes.valid); // Validation of metadata complete for collection. Problems detected. checkLog.containsJson(conn, 5980501); -// Cannot use { metadata: true } with any other options. Background validation is converted into a -// foreground validation on the ephemeralForTest storage engine, making it incompatible with this -// test. +// Cannot use { metadata: true } with any other options. assert.commandFailedWithCode(db.runCommand({validate: collName, metadata: true, background: true}), ErrorCodes.InvalidOptions); assert.commandFailedWithCode(db.runCommand({validate: collName, metadata: true, repair: true}), diff --git a/jstests/noPassthroughWithMongod/bench_test_crud_commands.js b/jstests/noPassthroughWithMongod/bench_test_crud_commands.js index d324a4746b9..8830ff4bdc7 100644 --- a/jstests/noPassthroughWithMongod/bench_test_crud_commands.js +++ b/jstests/noPassthroughWithMongod/bench_test_crud_commands.js @@ -73,7 +73,7 @@ function testWriteConcern() { testInsert(docs, {"w": "majority"}); testInsert(docs, {"w": 1, "j": false}); - var storageEnginesWithoutJournaling = new Set(["ephemeralForTest", "inMemory"]); + var storageEnginesWithoutJournaling = new Set(["inMemory"]); var runningWithoutJournaling = TestData.noJournal || storageEnginesWithoutJournaling.has(db.serverStatus().storageEngine.name); if (!runningWithoutJournaling) { diff --git a/jstests/noPassthroughWithMongod/ephemeral_for_test_memory_metrics.js b/jstests/noPassthroughWithMongod/ephemeral_for_test_memory_metrics.js deleted file mode 100644 index 4b07ed4541b..00000000000 --- a/jstests/noPassthroughWithMongod/ephemeral_for_test_memory_metrics.js +++ /dev/null @@ -1,64 +0,0 @@ -/** - * Tracks ephemeralForTest's memory usage metrics on a consistent workload. - */ -(function() { -"use strict"; - -const storageEngine = jsTest.options().storageEngine; -if (storageEngine != "ephemeralForTest") { - return; -} - -let testColl1 = db.jstests_ephemeralForTest_metrics1; -let testColl2 = db.jstests_ephemeralForTest_metrics2; -let testColl3 = db.jstests_ephemeralForTest_metrics3; - -const s1 = startParallelShell(() => { - testColl1 = db.jstests_ephemeralForTest_metrics1; - for (let i = 0; i < 50000; ++i) { - assert.writeOK(testColl1.save({x: Math.floor(Math.random() * 1024 * 1024), y: "y"})); - } - assert.commandWorked(testColl1.createIndex({x: 1, y: 1})); - for (let i = 0; i < 50000; ++i) { - assert.writeOK(testColl1.save({x: Math.floor(Math.random() * 1024 * 1024), y: "y"})); - } -}); - -const s2 = startParallelShell(function() { - testColl2 = db.jstests_ephemeralForTest_metrics2; - for (let i = 0; i < 50000; ++i) { - assert.writeOK(testColl2.save({x: "x", y: Math.floor(Math.random() * 1024 * 1024)})); - } - - for (let i = 0; i < 100; ++i) { - assert.commandWorked( - testColl2.updateOne({x: "x"}, {$set: {x: Math.floor(Math.random() * 1024 * 1024)}})); - } -}); - -const s3 = startParallelShell(function() { - testColl3 = db.jstests_ephemeralForTest_metrics3; - for (let i = 0; i < 50000; ++i) { - assert.writeOK(testColl3.save({x: i, y: Math.floor(Math.random() * 1024 * 1024)})); - } -}); - -s1(); -s2(); -s3(); - -let serverStatus = db.serverStatus().ephemeralForTest; -print("Total Memory Usage: " + serverStatus.totalMemoryUsage + " Bytes."); -print("Total Number of Nodes: " + serverStatus.totalNodes + "."); -print("Average Number of Children: " + serverStatus.averageChildren + "."); - -for (let i = 0; i < 50000; ++i) { - assert.commandWorked(testColl3.deleteOne({x: i})); -} - -serverStatus = db.serverStatus().ephemeralForTest; -print("After Deletion:"); -print("Total Memory Usage: " + serverStatus.totalMemoryUsage + " Bytes."); -print("Total Number of Nodes: " + serverStatus.totalNodes + "."); -print("Average Number of Children: " + serverStatus.averageChildren + "."); -})();
\ No newline at end of file diff --git a/jstests/noPassthroughWithMongod/stress_test_unique_index_notunique.js b/jstests/noPassthroughWithMongod/stress_test_unique_index_notunique.js index 8218c72becc..52da5721b35 100644 --- a/jstests/noPassthroughWithMongod/stress_test_unique_index_notunique.js +++ b/jstests/noPassthroughWithMongod/stress_test_unique_index_notunique.js @@ -1,10 +1,5 @@ /* * Tests that unique indexes can be built with a large number of non-unique values. - * - * @tags: [ - * // This workload is too impactful on ephemeralForTest - * requires_wiredtiger, - * ] */ (function() { diff --git a/jstests/noPassthroughWithMongod/stress_test_unique_index_unique.js b/jstests/noPassthroughWithMongod/stress_test_unique_index_unique.js index 96aa7e3c51f..3b1775a1a8a 100644 --- a/jstests/noPassthroughWithMongod/stress_test_unique_index_unique.js +++ b/jstests/noPassthroughWithMongod/stress_test_unique_index_unique.js @@ -1,10 +1,5 @@ /** * Tests that unique indexes can be built with a large number of unique values. - * - * @tags: [ - * // This workload is too impactful on ephemeralForTest - * requires_wiredtiger, - * ] */ (function() { diff --git a/jstests/replsets/tenant_migration_concurrent_bulk_writes.js b/jstests/replsets/tenant_migration_concurrent_bulk_writes.js index 6b76a009693..a67b381455b 100644 --- a/jstests/replsets/tenant_migration_concurrent_bulk_writes.js +++ b/jstests/replsets/tenant_migration_concurrent_bulk_writes.js @@ -2,8 +2,6 @@ * Tests that bulk writes during a tenant migration correctly report write errors and * retries writes that returned TenantMigrationCommitted. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/replsets/tenant_migration_concurrent_migrations.js b/jstests/replsets/tenant_migration_concurrent_migrations.js index a9cf2b579b9..752c18fffca 100644 --- a/jstests/replsets/tenant_migration_concurrent_migrations.js +++ b/jstests/replsets/tenant_migration_concurrent_migrations.js @@ -1,11 +1,6 @@ /** * Test that multiple concurrent tenant migrations are supported. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest, and in particular - * this test fails on ephemeralForTest because the donor has to wait for the write to set the - * migration state to "committed" and "aborted" to be majority committed but it cannot do that on - * ephemeralForTest. - * * Incompatible with shard merge, which can't handle concurrent migrations. * * @tags: [ diff --git a/jstests/replsets/tenant_migration_concurrent_writes_on_donor.js b/jstests/replsets/tenant_migration_concurrent_writes_on_donor.js index 2fb680a6f39..48e62e8f05d 100644 --- a/jstests/replsets/tenant_migration_concurrent_writes_on_donor.js +++ b/jstests/replsets/tenant_migration_concurrent_writes_on_donor.js @@ -2,11 +2,6 @@ * Tests that the donor blocks writes that are executed while the migration in the blocking state, * then rejects the writes when the migration completes. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest, and in particular - * this test fails on ephemeralForTest because the donor has to wait for the write to set the - * migration state to "committed" and "aborted" to be majority committed but it cannot do that on - * ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/replsets/tenant_migration_donor_current_op.js b/jstests/replsets/tenant_migration_donor_current_op.js index c71c8adeac6..e045f4baab4 100644 --- a/jstests/replsets/tenant_migration_donor_current_op.js +++ b/jstests/replsets/tenant_migration_donor_current_op.js @@ -1,8 +1,6 @@ /** * Tests currentOp command during a tenant migration. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/replsets/tenant_migration_donor_initial_sync_recovery.js b/jstests/replsets/tenant_migration_donor_initial_sync_recovery.js index 900d2eb0373..85429af3ddd 100644 --- a/jstests/replsets/tenant_migration_donor_initial_sync_recovery.js +++ b/jstests/replsets/tenant_migration_donor_initial_sync_recovery.js @@ -2,8 +2,6 @@ * Tests that tenant migration donor's in memory state is initialized correctly on initial sync. * This test randomly selects a point during the migration to add a node to the donor replica set. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/replsets/tenant_migration_donor_startup_recovery.js b/jstests/replsets/tenant_migration_donor_startup_recovery.js index 6079954a570..7a564e416a5 100644 --- a/jstests/replsets/tenant_migration_donor_startup_recovery.js +++ b/jstests/replsets/tenant_migration_donor_startup_recovery.js @@ -2,7 +2,6 @@ * Tests that tenant migration donor's in memory state is recovered correctly on startup. This test * randomly selects a point during the migration to shutdown the donor. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. * Incompatible with shard merge, which can't handle restart. * * @tags: [ diff --git a/jstests/replsets/tenant_migration_donor_state_machine.js b/jstests/replsets/tenant_migration_donor_state_machine.js index e9c4af0358b..2afaf565de4 100644 --- a/jstests/replsets/tenant_migration_donor_state_machine.js +++ b/jstests/replsets/tenant_migration_donor_state_machine.js @@ -2,11 +2,6 @@ * Tests the TenantMigrationAccessBlocker and donor state document are updated correctly at each * stage of the migration, and are eventually removed after the donorForgetMigration has returned. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest, and in particular - * this test fails on ephemeralForTest because the donor has to wait for the write to set the - * migration state to "committed" and "aborted" to be majority committed but it cannot do that on - * ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/replsets/tenant_migration_ensure_migration_outcome_visibility_for_blocked_writes.js b/jstests/replsets/tenant_migration_ensure_migration_outcome_visibility_for_blocked_writes.js index 2fc6acb27ee..178eb73ea34 100644 --- a/jstests/replsets/tenant_migration_ensure_migration_outcome_visibility_for_blocked_writes.js +++ b/jstests/replsets/tenant_migration_ensure_migration_outcome_visibility_for_blocked_writes.js @@ -2,8 +2,6 @@ * Tests that writes that are blocked during a tenant migration will still be able to find out * migration outcome even if the migration's in memory state has been garbage collected. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/replsets/tenant_migration_recipient_current_op.js b/jstests/replsets/tenant_migration_recipient_current_op.js index f5cf66cbfb1..a2ce3cb4a2f 100644 --- a/jstests/replsets/tenant_migration_recipient_current_op.js +++ b/jstests/replsets/tenant_migration_recipient_current_op.js @@ -5,8 +5,6 @@ * * kStarted ---> kConsistent ---> kDone. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_shard_merge, * incompatible_with_macos, diff --git a/jstests/replsets/tenant_migration_recipient_initial_sync_recovery.js b/jstests/replsets/tenant_migration_recipient_initial_sync_recovery.js index 8a054d3b0be..404bf0fa765 100644 --- a/jstests/replsets/tenant_migration_recipient_initial_sync_recovery.js +++ b/jstests/replsets/tenant_migration_recipient_initial_sync_recovery.js @@ -2,8 +2,6 @@ * Tests that tenant migration recipient's in memory state is initialized correctly on initial sync. * This test randomly selects a point during the migration to add a node to the recipient. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_shard_merge, diff --git a/jstests/replsets/tenant_migration_recipient_startup_recovery.js b/jstests/replsets/tenant_migration_recipient_startup_recovery.js index 0095ae5364d..978ddd787b0 100644 --- a/jstests/replsets/tenant_migration_recipient_startup_recovery.js +++ b/jstests/replsets/tenant_migration_recipient_startup_recovery.js @@ -2,8 +2,6 @@ * Tests that tenant migration recipient's in memory state is recovered correctly on startup. This * test randomly selects a point during the migration to shutdown the recipient. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_shard_merge, diff --git a/jstests/replsets/tenant_migration_shard_merge_recipient_current_op.js b/jstests/replsets/tenant_migration_shard_merge_recipient_current_op.js index 83ab0b5753e..5b3908b659f 100644 --- a/jstests/replsets/tenant_migration_shard_merge_recipient_current_op.js +++ b/jstests/replsets/tenant_migration_shard_merge_recipient_current_op.js @@ -4,8 +4,6 @@ * * kStarted ---> kLearnedFilenames ---> kConsistent ---> kDone. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * featureFlagShardMerge, * incompatible_with_macos, diff --git a/jstests/replsets/tenant_migration_test_max_bson_limit.js b/jstests/replsets/tenant_migration_test_max_bson_limit.js index 45520147bdd..293442f3034 100644 --- a/jstests/replsets/tenant_migration_test_max_bson_limit.js +++ b/jstests/replsets/tenant_migration_test_max_bson_limit.js @@ -1,8 +1,6 @@ /** * Tests that large write error results from bulk write operations are within the BSON size limit. * - * Tenant migrations are not expected to be run on servers with ephemeralForTest. - * * @tags: [ * incompatible_with_macos, * incompatible_with_windows_tls, diff --git a/jstests/sharding/top_chunk_autosplit.js b/jstests/sharding/top_chunk_autosplit.js index 7d969aed0c8..a2c5a1e7def 100644 --- a/jstests/sharding/top_chunk_autosplit.js +++ b/jstests/sharding/top_chunk_autosplit.js @@ -365,7 +365,7 @@ assert.commandWorked(db.adminCommand({addshard: st.getConnNames()[0], maxSize: 5 assert.commandWorked(db.adminCommand({addshard: st.getConnNames()[1], maxSize: 1})); // SERVER-17070 Auto split moves to shard node running WiredTiger, if exceeding maxSize -var unsupported = ["wiredTiger", "rocksdb", "inMemory", "ephemeralForTest"]; +var unsupported = ["wiredTiger", "rocksdb", "inMemory"]; if (unsupported.indexOf(st.rs0.getPrimary().adminCommand({serverStatus: 1}).storageEngine.name) == -1 && unsupported.indexOf(st.rs1.getPrimary().adminCommand({serverStatus: 1}).storageEngine.name) == diff --git a/jstests/ssl/libs/ssl_helpers.js b/jstests/ssl/libs/ssl_helpers.js index 3401e86dd9e..44d5462f4ac 100644 --- a/jstests/ssl/libs/ssl_helpers.js +++ b/jstests/ssl/libs/ssl_helpers.js @@ -130,8 +130,7 @@ function mixedShardTest(options1, options2, shouldSucceed) { // authentication, so in this test we must make the choice explicitly, based on the global // test options. let wcMajorityJournalDefault; - if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "ephemeralForTest" || - jsTestOptions().storageEngine == "inMemory") { + if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "inMemory") { wcMajorityJournalDefault = false; } else { wcMajorityJournalDefault = true; diff --git a/jstests/sslSpecial/upgrade_to_x509_ssl_nossl.js b/jstests/sslSpecial/upgrade_to_x509_ssl_nossl.js index 142b16bcabc..830b353481c 100644 --- a/jstests/sslSpecial/upgrade_to_x509_ssl_nossl.js +++ b/jstests/sslSpecial/upgrade_to_x509_ssl_nossl.js @@ -19,9 +19,8 @@ load("jstests/ssl/libs/ssl_helpers.js"); // cluster authentication. Choosing the default value for wcMajorityJournalDefault in // ReplSetTest cannot be done automatically without the shell performing such authentication, so // in this test we must make the choice explicitly, based on the global test options. -const wcMajorityJournalDefault = !jsTestOptions().noJournal && - (jsTestOptions().storageEngine != "ephemeralForTest") && - (jsTestOptions().storageEngine != "inMemory"); +const wcMajorityJournalDefault = + !jsTestOptions().noJournal && jsTestOptions().storageEngine != "inMemory"; const opts = { sslMode: "disabled", diff --git a/jstests/ssl_x509/initial_sync1_x509.js b/jstests/ssl_x509/initial_sync1_x509.js index b9d66693f6b..54366303f76 100644 --- a/jstests/ssl_x509/initial_sync1_x509.js +++ b/jstests/ssl_x509/initial_sync1_x509.js @@ -16,8 +16,7 @@ function runInitialSyncTest() { // ReplSetTest cannot be done automatically without the shell performing such authentication, so // in this test we must make the choice explicitly, based on the global test options. var wcMajorityJournalDefault; - if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "ephemeralForTest" || - jsTestOptions().storageEngine == "inMemory") { + if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "inMemory") { wcMajorityJournalDefault = false; } else { wcMajorityJournalDefault = true; diff --git a/jstests/ssl_x509/shell_x509_system_user.js b/jstests/ssl_x509/shell_x509_system_user.js index 0f7af04d95a..adca45975e8 100644 --- a/jstests/ssl_x509/shell_x509_system_user.js +++ b/jstests/ssl_x509/shell_x509_system_user.js @@ -9,8 +9,7 @@ // ReplSetTest cannot be done automatically without the shell performing such authentication, so // in this test we must make the choice explicitly, based on the global test options. let wcMajorityJournalDefault; -if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "ephemeralForTest" || - jsTestOptions().storageEngine == "inMemory") { +if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "inMemory") { wcMajorityJournalDefault = false; } else { wcMajorityJournalDefault = true; diff --git a/jstests/ssl_x509/upgrade_to_x509_ssl.js b/jstests/ssl_x509/upgrade_to_x509_ssl.js index 4fce4143725..4fe966685da 100644 --- a/jstests/ssl_x509/upgrade_to_x509_ssl.js +++ b/jstests/ssl_x509/upgrade_to_x509_ssl.js @@ -24,8 +24,7 @@ load("jstests/ssl/libs/ssl_helpers.js"); // ReplSetTest cannot be done automatically without the shell performing such authentication, so // in this test we must make the choice explicitly, based on the global test options. var wcMajorityJournalDefault; -if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "ephemeralForTest" || - jsTestOptions().storageEngine == "inMemory") { +if (jsTestOptions().noJournal || jsTestOptions().storageEngine == "inMemory") { wcMajorityJournalDefault = false; } else { wcMajorityJournalDefault = true; diff --git a/src/mongo/db/catalog/README.md b/src/mongo/db/catalog/README.md index ddb5d479da2..b08f9d59be6 100644 --- a/src/mongo/db/catalog/README.md +++ b/src/mongo/db/catalog/README.md @@ -23,11 +23,9 @@ directory. [**sorter/**]: https://github.com/mongodb/mongo/tree/master/src/mongo/db/sorter [**timeseries/**]: https://github.com/mongodb/mongo/tree/master/src/mongo/db/timeseries -For more information on the Storage Engine API, see the [storage/README][]. For additional -specifics on the Ephemeral for Test storage engine, see the [ephemeral_for_test/README][]. +For more information on the Storage Engine API, see the [storage/README][]. [storage/README]: https://github.com/mongodb/mongo/blob/master/src/mongo/db/storage/README.md -[ephemeral_for_test/README]: https://github.com/mongodb/mongo/blob/master/src/mongo/db/storage/ephemeral_for_test/README.md # The Catalog diff --git a/src/mongo/db/catalog/catalog_test_fixture.h b/src/mongo/db/catalog/catalog_test_fixture.h index b71933fa317..b60b2de088f 100644 --- a/src/mongo/db/catalog/catalog_test_fixture.h +++ b/src/mongo/db/catalog/catalog_test_fixture.h @@ -43,10 +43,6 @@ namespace mongo { */ class CatalogTestFixture : public ServiceContextMongoDTest { public: - /** - * Allows selection of storage engine to back the unit test, defaulting to ephemeralForTest - * when not specified. - */ explicit CatalogTestFixture(Options options = {}) : ServiceContextMongoDTest(std::move(options)) {} diff --git a/src/mongo/db/catalog/collection_validation_test.cpp b/src/mongo/db/catalog/collection_validation_test.cpp index 4ffff4f653b..e3b5a1a9742 100644 --- a/src/mongo/db/catalog/collection_validation_test.cpp +++ b/src/mongo/db/catalog/collection_validation_test.cpp @@ -204,7 +204,6 @@ int setUpInvalidData(OperationContext* opCtx) { // Verify that calling validate() on an empty collection with different validation levels returns an // OK status. TEST_F(CollectionValidationTest, ValidateEmpty) { - // Running on the ephemeralForTest storage engine. foregroundValidate(operationContext(), /*valid*/ true, /*numRecords*/ 0, @@ -212,7 +211,6 @@ TEST_F(CollectionValidationTest, ValidateEmpty) { /*numErrors*/ 0); } TEST_F(CollectionValidationTest, BackgroundValidateEmpty) { - // Running on the WT storage engine. backgroundValidate(operationContext(), /*valid*/ true, /*numRecords*/ 0, diff --git a/src/mongo/db/catalog/database_test.cpp b/src/mongo/db/catalog/database_test.cpp index 59308be7233..e9da3e319ee 100644 --- a/src/mongo/db/catalog/database_test.cpp +++ b/src/mongo/db/catalog/database_test.cpp @@ -148,12 +148,6 @@ TEST_F(DatabaseTest, CreateCollectionThrowsExceptionWhenDatabaseIsInADropPending WriteUnitOfWork wuow(_opCtx.get()); - // If createCollection() unexpectedly succeeds, we need to commit the collection - // creation to - // avoid leaving the ephemeralForTest storage engine in a bad state for subsequent - // tests. - ON_BLOCK_EXIT([&wuow] { wuow.commit(); }); - ASSERT_THROWS_CODE_AND_WHAT(db->createCollection(_opCtx.get(), _nss), AssertionException, ErrorCodes::DatabaseDropPending, diff --git a/src/mongo/db/commands/validate.cpp b/src/mongo/db/commands/validate.cpp index d17529cdaec..5c1a4658cde 100644 --- a/src/mongo/db/commands/validate.cpp +++ b/src/mongo/db/commands/validate.cpp @@ -124,15 +124,6 @@ public: const NamespaceString nss(CommandHelpers::parseNsCollectionRequired(dbname, cmdObj)); bool background = cmdObj["background"].trueValue(); - // Background validation is not supported on the ephemeralForTest storage engine due to its - // lack of support for timestamps. Switch the mode to foreground validation instead. - if (background && storageGlobalParams.engine == "ephemeralForTest") { - LOGV2(4775400, - "ephemeralForTest does not support background validation, switching to " - "foreground validation"); - background = false; - } - const bool fullValidate = cmdObj["full"].trueValue(); if (background && fullValidate) { uasserted(ErrorCodes::InvalidOptions, diff --git a/src/mongo/db/mongod_options.cpp b/src/mongo/db/mongod_options.cpp index 6e3772f4083..9ef47d3fcde 100644 --- a/src/mongo/db/mongod_options.cpp +++ b/src/mongo/db/mongod_options.cpp @@ -547,9 +547,7 @@ Status storeMongodOptions(const moe::Environment& params) { serverGlobalParams.enableMajorityReadConcern = true; - if (storageGlobalParams.engineSetByUser && - (storageGlobalParams.engine == "ephemeralForTest" || - storageGlobalParams.engine == "devnull")) { + if (storageGlobalParams.engineSetByUser && (storageGlobalParams.engine == "devnull")) { LOGV2(5324701, "Test storage engine does not support enableMajorityReadConcern=true, forcibly " "setting to false", diff --git a/src/mongo/db/repl/oplog_test.cpp b/src/mongo/db/repl/oplog_test.cpp index a7f1cc0eeb5..445656974ae 100644 --- a/src/mongo/db/repl/oplog_test.cpp +++ b/src/mongo/db/repl/oplog_test.cpp @@ -214,10 +214,6 @@ OpTime _logOpNoopWithMsg(OperationContext* opCtx, Mutex* mtx, OpTimeNamespaceStringMap* opTimeNssMap, const NamespaceString& nss) { - stdx::lock_guard<Latch> lock(*mtx); - - // logOp() must be called while holding lock because ephemeralForTest storage engine does not - // support concurrent updates to its internal state. MutableOplogEntry oplogEntry; oplogEntry.setOpType(repl::OpTypeEnum::kNoop); oplogEntry.setNss(nss); @@ -226,6 +222,7 @@ OpTime _logOpNoopWithMsg(OperationContext* opCtx, auto opTime = logOp(opCtx, &oplogEntry); ASSERT_FALSE(opTime.isNull()); + stdx::lock_guard<Latch> lock(*mtx); ASSERT(opTimeNssMap->find(opTime) == opTimeNssMap->end()) << "Unable to add namespace " << nss << " to map - map contains duplicate entry for optime " << opTime; diff --git a/src/mongo/db/repl/replication_recovery_test.cpp b/src/mongo/db/repl/replication_recovery_test.cpp index fa01fb5ebb0..1f44e5a4960 100644 --- a/src/mongo/db/repl/replication_recovery_test.cpp +++ b/src/mongo/db/repl/replication_recovery_test.cpp @@ -175,17 +175,6 @@ private: void setUp() override { ServiceContextMongoDTest::setUp(); - // Replaying prepared transactions requires 'enableMajorityReadConcern' to be set to true. - // This test uses ephemeralForTest under the hood and is ran in standalone mode. Given that, - // to satisfy the tests requirements, we forcefully set 'enableMajorityReadConcern' to true - // for these tests. - // - // Switching the storage engine to use WiredTiger comes with its own complications. - // 1. Transaction prepare is not supported with logged tables in debug builds. - // 2. Transactions cannot be assigned a log record if WT_CONN_LOG_DEBUG mode is not enabled. - _stashedEnableMajorityReadConcern = - std::exchange(serverGlobalParams.enableMajorityReadConcern, true); - auto service = getServiceContext(); StorageInterface::set(service, std::make_unique<StorageInterfaceRecovery>()); _storageInterface = static_cast<StorageInterfaceRecovery*>(StorageInterface::get(service)); @@ -219,8 +208,6 @@ private: _opCtx.reset(nullptr); _consistencyMarkers.reset(); - serverGlobalParams.enableMajorityReadConcern = _stashedEnableMajorityReadConcern; - ServiceContextMongoDTest::tearDown(); gTakeUnstableCheckpointOnShutdown = false; } @@ -232,7 +219,6 @@ private: ServiceContext::UniqueOperationContext _opCtx; StorageInterfaceRecovery* _storageInterface = nullptr; std::unique_ptr<ReplicationConsistencyMarkersMock> _consistencyMarkers; - bool _stashedEnableMajorityReadConcern = false; }; /** diff --git a/src/mongo/db/repl/rollback_test_fixture.h b/src/mongo/db/repl/rollback_test_fixture.h index 9bb4103b656..6388b1f90b4 100644 --- a/src/mongo/db/repl/rollback_test_fixture.h +++ b/src/mongo/db/repl/rollback_test_fixture.h @@ -48,13 +48,6 @@ namespace mongo { namespace repl { -/** - * Test fixture for both 3.4 and 3.6 rollback unit tests. - * The fixture makes available to tests: - * - an "ephemeralForTest" storage engine for checking results of the rollback algorithm at the - * storage layer. The storage engine is initialized as part of the ServiceContextForMongoD test - * fixture. - */ class RollbackTest : public ServiceContextMongoDTest { public: explicit RollbackTest(Options options = {}) : ServiceContextMongoDTest(std::move(options)) {} diff --git a/src/mongo/db/s/shard_server_test_fixture.h b/src/mongo/db/s/shard_server_test_fixture.h index a92316ed1f9..bd39a90fa4f 100644 --- a/src/mongo/db/s/shard_server_test_fixture.h +++ b/src/mongo/db/s/shard_server_test_fixture.h @@ -35,8 +35,8 @@ namespace mongo { /** * Test fixture for shard components, as opposed to config or mongos components. Provides a mock - * network and ephemeral storage engine via ShardingMongodTestFixture. Additionally sets up mock - * dist lock catalog and manager with a real catalog client. + * network via ShardingMongodTestFixture. Additionally sets up mock dist lock catalog and manager + * with a real catalog client. */ class ShardServerTestFixture : public ShardingMongodTestFixture { protected: diff --git a/src/mongo/db/service_context_d_test_fixture.cpp b/src/mongo/db/service_context_d_test_fixture.cpp index 36156f06ebd..dd8e182f665 100644 --- a/src/mongo/db/service_context_d_test_fixture.cpp +++ b/src/mongo/db/service_context_d_test_fixture.cpp @@ -77,9 +77,8 @@ ServiceContextMongoDTest::ServiceContextMongoDTest(Options options) std::exchange(storageGlobalParams.repair, (options._repair == RepairAction::kRepair)); _stashedServerParams.enableMajorityReadConcern = serverGlobalParams.enableMajorityReadConcern; - if (storageGlobalParams.engine == "ephemeralForTest" || - storageGlobalParams.engine == "devnull") { - // The ephemeralForTest and devnull storage engines do not support majority read concern. + if (storageGlobalParams.engine == "devnull") { + // The devnull storage engine does not support majority read concern. LOGV2(4939201, "Disabling majority read concern as it isn't supported by the storage engine", "storageEngine"_attr = storageGlobalParams.engine); diff --git a/src/mongo/db/service_context_d_test_fixture.h b/src/mongo/db/service_context_d_test_fixture.h index 7f84b771d7a..24d869d719e 100644 --- a/src/mongo/db/service_context_d_test_fixture.h +++ b/src/mongo/db/service_context_d_test_fixture.h @@ -36,9 +36,6 @@ namespace mongo { -/** - * Test fixture class for tests that use the "ephemeralForTest" storage engine. - */ class ServiceContextMongoDTest : public virtual ServiceContextTest { public: constexpr static StorageEngineInitFlags kDefaultStorageEngineInitFlags = diff --git a/src/mongo/db/startup_warnings_mongod.cpp b/src/mongo/db/startup_warnings_mongod.cpp index dcc90c3dfc2..9f9930ef342 100644 --- a/src/mongo/db/startup_warnings_mongod.cpp +++ b/src/mongo/db/startup_warnings_mongod.cpp @@ -376,13 +376,6 @@ void logMongodStartupWarnings(const StorageGlobalParams& storageParams, #endif // #ifdef _WIN32 - if (storageParams.engine == "ephemeralForTest") { - LOGV2_OPTIONS( - 22197, - {logv2::LogTag::kStartupWarnings}, - "The ephemeralForTest storage engine is for testing only. Do not use in production"); - } - if (storageParams.restore) { LOGV2_OPTIONS( 6260401, diff --git a/src/mongo/db/storage/flow_control_test.cpp b/src/mongo/db/storage/flow_control_test.cpp index 2a9688731a8..faa21a4463c 100644 --- a/src/mongo/db/storage/flow_control_test.cpp +++ b/src/mongo/db/storage/flow_control_test.cpp @@ -48,13 +48,6 @@ public: void setUp() { ServiceContextMongoDTest::setUp(); - // Flow control requires 'enableMajorityReadConcern' to be set to true to run properly. - // This test uses ephemeralForTest under the hood and is ran in standalone mode. Given that, - // to satisfy the tests requirements, we forcefully set 'enableMajorityReadConcern' to true - // for these tests. - _stashedEnableMajorityReadConcern = - std::exchange(serverGlobalParams.enableMajorityReadConcern, true); - auto replCoord = std::make_unique<repl::ReplicationCoordinatorMock>(getServiceContext()); auto replCoordPtr = replCoord.get(); replCoordMock = replCoordPtr; @@ -73,17 +66,12 @@ public: void tearDown() { ServiceContextMongoDTest::tearDown(); - - serverGlobalParams.enableMajorityReadConcern = _stashedEnableMajorityReadConcern; } std::unique_ptr<FlowControl> flowControl; repl::ReplicationCoordinatorMock* replCoordMock; ServiceContext::UniqueClient client; ServiceContext::UniqueOperationContext opCtx; - -private: - bool _stashedEnableMajorityReadConcern; }; TEST_F(FlowControlTest, AddingSamples) { diff --git a/src/mongo/db/storage/storage_engine_init.cpp b/src/mongo/db/storage/storage_engine_init.cpp index eb6f1e7dc40..054437892a3 100644 --- a/src/mongo/db/storage/storage_engine_init.cpp +++ b/src/mongo/db/storage/storage_engine_init.cpp @@ -150,8 +150,7 @@ StorageEngine::LastShutdownState initializeStorageEngine(OperationContext* opCtx } // This should be set once during startup. - if (storageGlobalParams.engine != "ephemeralForTest" && - (initFlags & StorageEngineInitFlags::kForRestart) == StorageEngineInitFlags{}) { + if ((initFlags & StorageEngineInitFlags::kForRestart) == StorageEngineInitFlags{}) { auto readTransactions = gConcurrentReadTransactions.load(); static constexpr auto DEFAULT_TICKETS_VALUE = 128; readTransactions = readTransactions == 0 ? DEFAULT_TICKETS_VALUE : readTransactions; diff --git a/src/mongo/dbtests/dbhelper_tests.cpp b/src/mongo/dbtests/dbhelper_tests.cpp index 5dbc2f05ca4..eaf5b5d5b10 100644 --- a/src/mongo/dbtests/dbhelper_tests.cpp +++ b/src/mongo/dbtests/dbhelper_tests.cpp @@ -101,13 +101,6 @@ public: void run() { auto serviceContext = getGlobalServiceContext(); - // This test is designed for storage engines that detect write conflicts when they attempt - // to write to a record. ephemeralForTest, however, only detects write conflicts when a - // WriteUnitOfWork commits. - if (storageGlobalParams.engine == "ephemeralForTest") { - return; - } - repl::ReplSettings replSettings; replSettings.setOplogSizeBytes(10 * 1024 * 1024); replSettings.setReplSetString("rs"); diff --git a/src/mongo/dbtests/query_stage_batched_delete.cpp b/src/mongo/dbtests/query_stage_batched_delete.cpp index c8c625974f0..2e7dd507de4 100644 --- a/src/mongo/dbtests/query_stage_batched_delete.cpp +++ b/src/mongo/dbtests/query_stage_batched_delete.cpp @@ -319,11 +319,6 @@ TEST_F(QueryStageBatchedDeleteTest, BatchedDeleteStagedDocIsDeleted) { // WriteConflict, yields, and then deletes the batch using a more recent snapshot that accounts for // the concurrent data changes. TEST_F(QueryStageBatchedDeleteTest, BatchedDeleteStagedDocIsDeletedWriteConflict) { - if (storageGlobalParams.engine == "ephemeralForTest") { - // TODO SERVER-64778 Investigate how to enable for the ephemeralForTest storage engine. - return; - } - auto serviceContext = getGlobalServiceContext(); // Issue the batched delete through different client than the default _client test member. diff --git a/src/mongo/dbtests/validate_tests.cpp b/src/mongo/dbtests/validate_tests.cpp index ceedaccb3ee..d86df4b11d4 100644 --- a/src/mongo/dbtests/validate_tests.cpp +++ b/src/mongo/dbtests/validate_tests.cpp @@ -87,8 +87,6 @@ public: explicit ValidateBase(bool full, bool background, bool clustered) : _full(full), _background(background), _nss(_ns), _autoDb(nullptr), _db(nullptr) { - _supportsBackgroundValidation = storageGlobalParams.engine != "ephemeralForTest"; - CollectionOptions options; if (clustered) { options.clusteredIndex = clustered_util::makeCanonicalClusteredInfoForLegacyFormat(); @@ -212,7 +210,6 @@ protected: const NamespaceString _nss; unique_ptr<AutoGetDb> _autoDb; Database* _db; - bool _supportsBackgroundValidation; }; template <bool full, bool background> @@ -221,7 +218,7 @@ public: ValidateIdIndexCount() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -279,7 +276,7 @@ class ValidateSecondaryIndexCount : public ValidateBase { public: ValidateSecondaryIndexCount() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -345,7 +342,7 @@ class ValidateSecondaryIndex : public ValidateBase { public: ValidateSecondaryIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -403,7 +400,7 @@ public: ValidateIdIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -478,7 +475,7 @@ public: ValidateMultiKeyIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -559,7 +556,7 @@ public: ValidateSparseIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -618,7 +615,7 @@ public: ValidatePartialIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -683,7 +680,7 @@ public: ValidatePartialIndexOnCollectionWithNonIndexableFields() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -742,7 +739,7 @@ public: ValidateCompoundIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -821,7 +818,7 @@ public: ValidateIndexEntry() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -940,7 +937,7 @@ public: ValidateWildCardIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -1060,7 +1057,7 @@ public: ValidateWildCardIndexWithProjection() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -1155,7 +1152,7 @@ public: ValidateMissingAndExtraIndexEntryResults() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -1246,7 +1243,7 @@ public: ValidateMissingIndexEntryResults() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -1364,7 +1361,7 @@ public: ValidateExtraIndexEntryResults() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -3080,7 +3077,7 @@ public: ValidateDuplicateKeysUniqueIndex() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -3269,7 +3266,7 @@ public: ValidateInvalidBSONResults() : ValidateBase(full, background) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -4074,7 +4071,7 @@ public: : ValidateBase(/*full=*/false, background, /*clustered=*/true) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -4134,7 +4131,7 @@ public: : ValidateBase(/*full=*/false, background, /*clustered=*/true) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -4229,7 +4226,7 @@ public: : ValidateBase(/*full=*/false, /*background=*/false, /*clustered=*/true) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } @@ -4366,7 +4363,7 @@ public: _withSecondaryIndex(withSecondaryIndex) {} void run() { - if (_background && !_supportsBackgroundValidation) { + if (_background) { return; } diff --git a/src/mongo/shell/replsettest.js b/src/mongo/shell/replsettest.js index 120d1b60890..6a51b72fc59 100644 --- a/src/mongo/shell/replsettest.js +++ b/src/mongo/shell/replsettest.js @@ -236,8 +236,7 @@ var ReplSetTest = function(opts) { if (!serverStatus.storageEngine.persistent) { return true; } - } else if (serverStatus.storageEngine.name == 'inMemory' || - serverStatus.storageEngine.name == 'ephemeralForTest') { + } else if (serverStatus.storageEngine.name == 'inMemory') { return true; } var cmdLineOpts = assert.commandWorked(conn.adminCommand({getCmdLineOpts: 1})); |