diff options
30 files changed, 119 insertions, 1071 deletions
diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_100ms_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_replication_100ms_refresh_jscore_passthrough.yml deleted file mode 100644 index 02b9116d197..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_100ms_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,58 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # The set_param1.js test attempts to compare the response from running the {getParameter: "*"} - # command multiple times, which may observe the change to the "transactionLifetimeLimitSeconds" - # server parameter. - - jstests/core/**/set_param1.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # The awaitdata_getmore_cmd.js test tails the oplog and waits for the getMore batch size to equal - # zero. The CheckReplDBHashInBackground hook consistently runs and creates sessions. At the same - # time, the logical session cache refresh thread will flush these sessions to disk, creating more - # opLog entries. To avoid this infinite loop, we will denylist the test from this suite. - - jstests/core/**/awaitdata_getmore_cmd.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - - exclude_with_any_tags: - - assumes_standalone_mongod - -executor: - archive: - hooks: - - CheckReplDBHashInBackground - - CheckReplDBHash - - CheckReplOplogs - - ValidateCollections - config: - shell_options: - eval: "testingReplication = true;" - hooks: - # The CheckReplDBHash hook waits until all operations have replicated to and have been applied - # on the secondaries, so we run the ValidateCollections hook after it to ensure we're - # validating the entire contents of the collection. - - class: CheckReplDBHashInBackground - - class: CheckReplOplogs - - class: CheckReplDBHash - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ReplicaSetFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 100 - num_nodes: 3 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_10sec_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_replication_10sec_refresh_jscore_passthrough.yml deleted file mode 100644 index 1cb8d42ce2d..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_10sec_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,58 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # The set_param1.js test attempts to compare the response from running the {getParameter: "*"} - # command multiple times, which may observe the change to the "transactionLifetimeLimitSeconds" - # server parameter. - - jstests/core/**/set_param1.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # The awaitdata_getmore_cmd.js test tails the oplog and waits for the getMore batch size to equal - # zero. The CheckReplDBHashInBackground hook consistently runs and creates sessions. At the same - # time, the logical session cache refresh thread will flush these sessions to disk, creating more - # opLog entries. To avoid this infinite loop, we will denylist the test from this suite. - - jstests/core/**/awaitdata_getmore_cmd.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - - exclude_with_any_tags: - - assumes_standalone_mongod - -executor: - archive: - hooks: - - CheckReplDBHashInBackground - - CheckReplDBHash - - CheckReplOplogs - - ValidateCollections - config: - shell_options: - eval: "testingReplication = true;" - hooks: - # The CheckReplDBHash hook waits until all operations have replicated to and have been applied - # on the secondaries, so we run the ValidateCollections hook after it to ensure we're - # validating the entire contents of the collection. - - class: CheckReplDBHashInBackground - - class: CheckReplOplogs - - class: CheckReplDBHash - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ReplicaSetFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 10000 - num_nodes: 3 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_1sec_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_replication_1sec_refresh_jscore_passthrough.yml deleted file mode 100644 index 95e276ed112..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_1sec_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,58 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # The set_param1.js test attempts to compare the response from running the {getParameter: "*"} - # command multiple times, which may observe the change to the "transactionLifetimeLimitSeconds" - # server parameter. - - jstests/core/**/set_param1.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # The awaitdata_getmore_cmd.js test tails the oplog and waits for the getMore batch size to equal - # zero. The CheckReplDBHashInBackground hook consistently runs and creates sessions. At the same - # time, the logical session cache refresh thread will flush these sessions to disk, creating more - # opLog entries. To avoid this infinite loop, we will denylist the test from this suite. - - jstests/core/**/awaitdata_getmore_cmd.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - - exclude_with_any_tags: - - assumes_standalone_mongod - -executor: - archive: - hooks: - - CheckReplDBHashInBackground - - CheckReplDBHash - - CheckReplOplogs - - ValidateCollections - config: - shell_options: - eval: "testingReplication = true;" - hooks: - # The CheckReplDBHash hook waits until all operations have replicated to and have been applied - # on the secondaries, so we run the ValidateCollections hook after it to ensure we're - # validating the entire contents of the collection. - - class: CheckReplDBHashInBackground - - class: CheckReplOplogs - - class: CheckReplDBHash - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ReplicaSetFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 1000 - num_nodes: 3 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_default_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_replication_default_refresh_jscore_passthrough.yml deleted file mode 100644 index a8434414a22..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_replication_default_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,59 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # The set_param1.js test attempts to compare the response from running the {getParameter: "*"} - # command multiple times, which may observe the change to the "transactionLifetimeLimitSeconds" - # server parameter. - - jstests/core/**/set_param1.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # The awaitdata_getmore_cmd.js test tails the oplog and waits for the getMore batch size to equal - # zero. The CheckReplDBHashInBackground hook consistently runs and creates sessions. At the same - # time, the logical session cache refresh thread will flush these sessions to disk, creating more - # opLog entries. To prevent this infinite loop, we will denylist the test from this suite. - - jstests/core/**/awaitdata_getmore_cmd.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - - exclude_with_any_tags: - - assumes_standalone_mongod - -executor: - archive: - hooks: - - CheckReplDBHashInBackground - - ValidateCollectionsInBackground - - CheckReplDBHash - - CheckReplOplogs - - ValidateCollections - config: - shell_options: - eval: "testingReplication = true;" - hooks: - # The CheckReplDBHash hook waits until all operations have replicated to and have been applied - # on the secondaries, so we run the ValidateCollections hook after it to ensure we're - # validating the entire contents of the collection. - - class: CheckReplDBHashInBackground - - class: ValidateCollectionsInBackground - - class: CheckReplOplogs - - class: CheckReplDBHash - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ReplicaSetFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - num_nodes: 3 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_100ms_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_100ms_refresh_jscore_passthrough.yml deleted file mode 100644 index 0e9f1c4d1a0..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_100ms_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,116 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # These tests are run in logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml. - - jstests/core/txns/**/*.js - # The following tests fail because a certain command or functionality is not supported by - # mongos. This command or functionality is placed in a comment next to the failing test. - - jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine. - - jstests/core/**/awaitdata_getmore_cmd.js # capped collections. - - jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted - - jstests/core/**/check_shard_index.js # checkShardingIndex. - - jstests/core/**/collection_truncate.js # emptycapped. - - jstests/core/**/compact_keeps_indexes.js # compact. - - jstests/core/**/currentop.js # uses fsync. - - jstests/core/**/dbhash.js # dbhash. - - jstests/core/**/dbhash2.js # dbhash. - - jstests/core/**/fsync.js # uses fsync. - - jstests/core/**/geo_s2cursorlimitskip.js # profiling. - - jstests/core/**/geo_update_btree2.js # notablescan. - - jstests/core/**/index9.js # "local" database. - - jstests/core/**/queryoptimizera.js # "local" database. - - jstests/core/**/stages*.js # stageDebug. - - jstests/core/**/startup_log.js # "local" database. - - jstests/core/**/tailable_cursor_invalidation.js # capped collections. - - jstests/core/**/tailable_getmore_batch_size.js # capped collections. - - jstests/core/**/tailable_skip_limit.js # capped collections. - - jstests/core/**/top.js # top. - # The following tests fail because mongos behaves differently from mongod when testing certain - # functionality. The differences are in a comment next to the failing test. - - jstests/core/**/explain_missing_database.js # Behavior with no db different on mongos, SERVER-18047. - - jstests/core/**/geo_2d_explain.js # executionSuccess in different spot in explain(). - - jstests/core/**/geo_s2explain.js # inputStage in different spot in explain(). - - jstests/core/**/geo_s2sparse.js # keysPerIndex in different spot in validate(). - - jstests/core/**/operation_latency_histogram.js # Stats are counted differently on mongos, SERVER-24880. - # The following tests fail because they count indexes. These counts do not take into account the - # additional hashed shard key indexes that are automatically added by this passthrough. - - jstests/core/**/apitest_dbcollection.js - - jstests/core/**/bad_index_plugin.js - - jstests/core/**/create_indexes.js - - jstests/core/**/list_indexes_non_existent_ns.js - - jstests/core/**/mr_preserve_indexes.js - # The following tests fail because they expect no databases to be created. However a DB is created - # automatically when we shard a collection. - - jstests/core/**/dbcase.js - - jstests/core/**/dbcase2.js - - jstests/core/**/no_db_created.js - - jstests/core/**/killop_drop_collection.js # Uses fsyncLock. - # These tests fail because sharded clusters do not clean up correctly after failed index builds. - # See SERVER-33207 as an example. - - jstests/core/**/geo_borders.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded - # queries with a limit or for distinct commands. - - jstests/core/**/distinct_index1.js - - jstests/core/**/explain1.js - - jstests/core/**/explain4.js - - jstests/core/**/sortk.js - # TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is - # incorrect on sharded collections. - - jstests/core/**/explain_count.js - - jstests/core/**/explain_server_params.js - # TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output. - - jstests/core/**/expr_index_use.js - - jstests/core/**/index_multikey.js - - jstests/core/**/optimized_match_explain.js - - jstests/core/**/sort_array.js - - exclude_with_any_tags: - - assumes_standalone_mongod - - assumes_against_mongod_not_mongos - # Tests tagged with the following will fail because they assume collections are not sharded. - - assumes_no_implicit_collection_creation_after_drop - - assumes_no_implicit_index_creation - - assumes_unsharded_collection - - cannot_create_unique_index_when_using_hashed_shard_key - # system.profile collection doesn't exist on mongos. - - requires_profiling - -executor: - archive: - hooks: - - CheckReplDBHash - - CheckMetadataConsistencyInBackground - - ValidateCollections - config: - shell_options: - eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js") - hooks: - - class: CheckReplDBHash - - class: CheckMetadataConsistencyInBackground - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ShardedClusterFixture - num_shards: 2 - enable_balancer: false - mongos_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 100 - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 100 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml deleted file mode 100644 index 3464f572f79..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml +++ /dev/null @@ -1,72 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/txns/**/*.js - exclude_files: - # Profile can only be run against the admin database on mongos. - - jstests/core/txns/transactions_profiling.js - - jstests/core/txns/transactions_profiling_with_drops.js - - # Implicitly creates a database through a collection rename, which does not work in a sharded - # cluster. - - jstests/core/txns/transactions_block_ddl.js - - # transactionLifetimeLimitSeconds parameter is not available in mongos. - - jstests/core/txns/abort_expired_transaction.js - - jstests/core/txns/abort_transaction_thread_does_not_block_on_locks.js - - jstests/core/txns/kill_op_on_txn_expiry.js - - # Uses hangAfterCollectionInserts failpoint not available on mongos. - - jstests/core/txns/speculative_snapshot_includes_all_writes.js - - # View tests aren't expected to work when collections are implicitly sharded. - - jstests/core/txns/view_reads_in_transaction.js - - # These workloads explicitly create collections inside multi-document transactions. These are - # non-idempotent operations, and the implicit collection sharding logic upon collection access - # results in premature collection creation, causing the workloads to fail. - - jstests/core/txns/create_collection.js - - jstests/core/txns/create_collection_parallel.js - - jstests/core/txns/create_indexes.js - - jstests/core/txns/create_indexes_parallel.js - - exclude_with_any_tags: - - assumes_against_mongod_not_mongos - # Tests tagged with the following will fail because they assume collections are not sharded. - - assumes_no_implicit_collection_creation_after_drop - - assumes_no_implicit_index_creation - - assumes_unsharded_collection - - cannot_create_unique_index_when_using_hashed_shard_key - # Transactions are not allowed to operate on capped collections. - - requires_capped - # Prepare is not a command on mongos. - - uses_prepare_transaction - -executor: - archive: - hooks: - - CheckReplDBHash - - ValidateCollections - config: - shell_options: - eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js") - hooks: - - class: CheckReplDBHash - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ShardedClusterFixture - num_shards: 2 - enable_balancer: false - mongos_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 100 - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 100 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_10sec_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_10sec_refresh_jscore_passthrough.yml deleted file mode 100644 index 076717acd11..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_10sec_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,116 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # These tests are run in logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml. - - jstests/core/txns/**/*.js - # The following tests fail because a certain command or functionality is not supported by - # mongos. This command or functionality is placed in a comment next to the failing test. - - jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine. - - jstests/core/**/awaitdata_getmore_cmd.js # capped collections. - - jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted - - jstests/core/**/check_shard_index.js # checkShardingIndex. - - jstests/core/**/collection_truncate.js # emptycapped. - - jstests/core/**/compact_keeps_indexes.js # compact. - - jstests/core/**/currentop.js # uses fsync. - - jstests/core/**/dbhash.js # dbhash. - - jstests/core/**/dbhash2.js # dbhash. - - jstests/core/**/fsync.js # uses fsync. - - jstests/core/**/geo_s2cursorlimitskip.js # profiling. - - jstests/core/**/geo_update_btree2.js # notablescan. - - jstests/core/**/index9.js # "local" database. - - jstests/core/**/queryoptimizera.js # "local" database. - - jstests/core/**/stages*.js # stageDebug. - - jstests/core/**/startup_log.js # "local" database. - - jstests/core/**/tailable_cursor_invalidation.js # capped collections. - - jstests/core/**/tailable_getmore_batch_size.js # capped collections. - - jstests/core/**/tailable_skip_limit.js # capped collections. - - jstests/core/**/top.js # top. - # The following tests fail because mongos behaves differently from mongod when testing certain - # functionality. The differences are in a comment next to the failing test. - - jstests/core/**/explain_missing_database.js # Behavior with no db different on mongos, SERVER-18047. - - jstests/core/**/geo_2d_explain.js # executionSuccess in different spot in explain(). - - jstests/core/**/geo_s2explain.js # inputStage in different spot in explain(). - - jstests/core/**/geo_s2sparse.js # keysPerIndex in different spot in validate(). - - jstests/core/**/operation_latency_histogram.js # Stats are counted differently on mongos, SERVER-24880. - # The following tests fail because they count indexes. These counts do not take into account the - # additional hashed shard key indexes that are automatically added by this passthrough. - - jstests/core/**/apitest_dbcollection.js - - jstests/core/**/bad_index_plugin.js - - jstests/core/**/create_indexes.js - - jstests/core/**/list_indexes_non_existent_ns.js - - jstests/core/**/mr_preserve_indexes.js - # The following tests fail because they expect no databases to be created. However a DB is created - # automatically when we shard a collection. - - jstests/core/**/dbcase.js - - jstests/core/**/dbcase2.js - - jstests/core/**/no_db_created.js - - jstests/core/**/killop_drop_collection.js # Uses fsyncLock. - # These tests fail because sharded clusters do not clean up correctly after failed index builds. - # See SERVER-33207 as an example. - - jstests/core/**/geo_borders.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded - # queries with a limit or for distinct commands. - - jstests/core/**/distinct_index1.js - - jstests/core/**/explain1.js - - jstests/core/**/explain4.js - - jstests/core/**/sortk.js - # TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is - # incorrect on sharded collections. - - jstests/core/**/explain_count.js - - jstests/core/**/explain_server_params.js - # TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output. - - jstests/core/**/expr_index_use.js - - jstests/core/**/index_multikey.js - - jstests/core/**/optimized_match_explain.js - - jstests/core/**/sort_array.js - - exclude_with_any_tags: - - assumes_standalone_mongod - - assumes_against_mongod_not_mongos - # Tests tagged with the following will fail because they assume collections are not sharded. - - assumes_no_implicit_collection_creation_after_drop - - assumes_no_implicit_index_creation - - assumes_unsharded_collection - - cannot_create_unique_index_when_using_hashed_shard_key - # system.profile collection doesn't exist on mongos. - - requires_profiling - -executor: - archive: - hooks: - - CheckReplDBHash - - CheckMetadataConsistencyInBackground - - ValidateCollections - config: - shell_options: - eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js") - hooks: - - class: CheckReplDBHash - - class: CheckMetadataConsistencyInBackground - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ShardedClusterFixture - num_shards: 2 - enable_balancer: false - mongos_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 10000 - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 10000 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_1sec_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_1sec_refresh_jscore_passthrough.yml deleted file mode 100644 index 26838b46c04..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_1sec_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,116 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # These tests are run in logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml. - - jstests/core/txns/**/*.js - # The following tests fail because a certain command or functionality is not supported by - # mongos. This command or functionality is placed in a comment next to the failing test. - - jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine. - - jstests/core/**/awaitdata_getmore_cmd.js # capped collections. - - jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted - - jstests/core/**/check_shard_index.js # checkShardingIndex. - - jstests/core/**/collection_truncate.js # emptycapped. - - jstests/core/**/compact_keeps_indexes.js # compact. - - jstests/core/**/currentop.js # uses fsync. - - jstests/core/**/dbhash.js # dbhash. - - jstests/core/**/dbhash2.js # dbhash. - - jstests/core/**/fsync.js # uses fsync. - - jstests/core/**/geo_s2cursorlimitskip.js # profiling. - - jstests/core/**/geo_update_btree2.js # notablescan. - - jstests/core/**/index9.js # "local" database. - - jstests/core/**/queryoptimizera.js # "local" database. - - jstests/core/**/stages*.js # stageDebug. - - jstests/core/**/startup_log.js # "local" database. - - jstests/core/**/tailable_cursor_invalidation.js # capped collections. - - jstests/core/**/tailable_getmore_batch_size.js # capped collections. - - jstests/core/**/tailable_skip_limit.js # capped collections. - - jstests/core/**/top.js # top. - # The following tests fail because mongos behaves differently from mongod when testing certain - # functionality. The differences are in a comment next to the failing test. - - jstests/core/**/explain_missing_database.js # Behavior with no db different on mongos, SERVER-18047. - - jstests/core/**/geo_2d_explain.js # executionSuccess in different spot in explain(). - - jstests/core/**/geo_s2explain.js # inputStage in different spot in explain(). - - jstests/core/**/geo_s2sparse.js # keysPerIndex in different spot in validate(). - - jstests/core/**/operation_latency_histogram.js # Stats are counted differently on mongos, SERVER-24880. - # The following tests fail because they count indexes. These counts do not take into account the - # additional hashed shard key indexes that are automatically added by this passthrough. - - jstests/core/**/apitest_dbcollection.js - - jstests/core/**/bad_index_plugin.js - - jstests/core/**/create_indexes.js - - jstests/core/**/list_indexes_non_existent_ns.js - - jstests/core/**/mr_preserve_indexes.js - # The following tests fail because they expect no databases to be created. However a DB is created - # automatically when we shard a collection. - - jstests/core/**/dbcase.js - - jstests/core/**/dbcase2.js - - jstests/core/**/no_db_created.js - - jstests/core/**/killop_drop_collection.js # Uses fsyncLock. - # These tests fail because sharded clusters do not clean up correctly after failed index builds. - # See SERVER-33207 as an example. - - jstests/core/**/geo_borders.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded - # queries with a limit or for distinct commands. - - jstests/core/**/distinct_index1.js - - jstests/core/**/explain1.js - - jstests/core/**/explain4.js - - jstests/core/**/sortk.js - # TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is - # incorrect on sharded collections. - - jstests/core/**/explain_count.js - - jstests/core/**/explain_server_params.js - # TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output. - - jstests/core/**/expr_index_use.js - - jstests/core/**/index_multikey.js - - jstests/core/**/optimized_match_explain.js - - jstests/core/**/sort_array.js - - exclude_with_any_tags: - - assumes_standalone_mongod - - assumes_against_mongod_not_mongos - # Tests tagged with the following will fail because they assume collections are not sharded. - - assumes_no_implicit_collection_creation_after_drop - - assumes_no_implicit_index_creation - - assumes_unsharded_collection - - cannot_create_unique_index_when_using_hashed_shard_key - # system.profile collection doesn't exist on mongos. - - requires_profiling - -executor: - archive: - hooks: - - CheckReplDBHash - - CheckMetadataConsistencyInBackground - - ValidateCollections - config: - shell_options: - eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js") - hooks: - - class: CheckReplDBHash - - class: CheckMetadataConsistencyInBackground - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ShardedClusterFixture - num_shards: 2 - enable_balancer: false - mongos_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 1000 - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 1000 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_default_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_default_refresh_jscore_passthrough.yml deleted file mode 100644 index fbc8e2736e3..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_sharding_default_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,114 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - - jstests/fle2/**/*.js - - src/mongo/db/modules/*/jstests/fle2/**/*.js - exclude_files: - # These tests are run in logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough.yml. - - jstests/core/txns/**/*.js - # The following tests fail because a certain command or functionality is not supported by - # mongos. This command or functionality is placed in a comment next to the failing test. - - jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine. - - jstests/core/**/awaitdata_getmore_cmd.js # capped collections. - - jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted - - jstests/core/**/check_shard_index.js # checkShardingIndex. - - jstests/core/**/collection_truncate.js # emptycapped. - - jstests/core/**/compact_keeps_indexes.js # compact. - - jstests/core/**/currentop.js # uses fsync. - - jstests/core/**/dbhash.js # dbhash. - - jstests/core/**/dbhash2.js # dbhash. - - jstests/core/**/fsync.js # uses fsync. - - jstests/core/**/geo_s2cursorlimitskip.js # profiling. - - jstests/core/**/geo_update_btree2.js # notablescan. - - jstests/core/**/index9.js # "local" database. - - jstests/core/**/queryoptimizera.js # "local" database. - - jstests/core/**/stages*.js # stageDebug. - - jstests/core/**/startup_log.js # "local" database. - - jstests/core/**/tailable_cursor_invalidation.js # capped collections. - - jstests/core/**/tailable_getmore_batch_size.js # capped collections. - - jstests/core/**/tailable_skip_limit.js # capped collections. - - jstests/core/**/top.js # top. - # The following tests fail because mongos behaves differently from mongod when testing certain - # functionality. The differences are in a comment next to the failing test. - - jstests/core/**/explain_missing_database.js # Behavior with no db different on mongos, SERVER-18047. - - jstests/core/**/geo_2d_explain.js # executionSuccess in different spot in explain(). - - jstests/core/**/geo_s2explain.js # inputStage in different spot in explain(). - - jstests/core/**/geo_s2sparse.js # keysPerIndex in different spot in validate(). - - jstests/core/**/operation_latency_histogram.js # Stats are counted differently on mongos, SERVER-24880. - # The following tests fail because they count indexes. These counts do not take into account the - # additional hashed shard key indexes that are automatically added by this passthrough. - - jstests/core/**/apitest_dbcollection.js - - jstests/core/**/bad_index_plugin.js - - jstests/core/**/create_indexes.js - - jstests/core/**/list_indexes_non_existent_ns.js - - jstests/core/**/mr_preserve_indexes.js - # The following tests fail because they expect no databases to be created. However a DB is created - # automatically when we shard a collection. - - jstests/core/**/dbcase.js - - jstests/core/**/dbcase2.js - - jstests/core/**/no_db_created.js - - jstests/core/**/killop_drop_collection.js # Uses fsyncLock. - # These tests fail because sharded clusters do not clean up correctly after failed index builds. - # See SERVER-33207 as an example. - - jstests/core/**/geo_borders.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded - # queries with a limit or for distinct commands. - - jstests/core/**/distinct_index1.js - - jstests/core/**/explain1.js - - jstests/core/**/explain4.js - - jstests/core/**/sortk.js - # TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is - # incorrect on sharded collections. - - jstests/core/**/explain_count.js - - jstests/core/**/explain_server_params.js - # TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output. - - jstests/core/**/expr_index_use.js - - jstests/core/**/index_multikey.js - - jstests/core/**/optimized_match_explain.js - - jstests/core/**/sort_array.js - - exclude_with_any_tags: - - assumes_standalone_mongod - - assumes_against_mongod_not_mongos - # Tests tagged with the following will fail because they assume collections are not sharded. - - assumes_no_implicit_collection_creation_after_drop - - assumes_no_implicit_index_creation - - assumes_unsharded_collection - - cannot_create_unique_index_when_using_hashed_shard_key - # system.profile collection doesn't exist on mongos. - - requires_profiling - -executor: - archive: - hooks: - - CheckReplDBHash - - CheckMetadataConsistencyInBackground - - ValidateCollections - config: - shell_options: - eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js") - hooks: - - class: CheckReplDBHash - - class: CheckMetadataConsistencyInBackground - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: ShardedClusterFixture - num_shards: 2 - enable_balancer: false - mongos_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_100ms_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_100ms_refresh_jscore_passthrough.yml deleted file mode 100644 index 2b61effb3a1..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_100ms_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,37 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - exclude_files: - # Transactions are not supported on MongoDB standalone nodes. - - jstests/core/txns/**/*.js - # This test expects a fixed number of operations. The logical session cache will perform its own - # operations, inflating the number of operations and causing the test to fail. - - jstests/core/**/opcounters_write_cmd.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - -executor: - archive: - hooks: - - ValidateCollections - config: {} - hooks: - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: MongoDFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 100 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_10sec_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_10sec_refresh_jscore_passthrough.yml deleted file mode 100644 index 4d3ef6b2701..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_10sec_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,37 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - exclude_files: - # Transactions are not supported on MongoDB standalone nodes. - - jstests/core/txns/**/*.js - # This test expects a fixed number of operations. The logical session cache will perform its own - # operations, inflating the number of operations and causing the test to fail. - - jstests/core/**/opcounters_write_cmd.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - -executor: - archive: - hooks: - - ValidateCollections - config: {} - hooks: - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: MongoDFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 10000 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_1sec_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_1sec_refresh_jscore_passthrough.yml deleted file mode 100644 index fa7b9c13daa..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_1sec_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,37 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - exclude_files: - # Transactions are not supported on MongoDB standalone nodes. - - jstests/core/txns/**/*.js - # This test expects a fixed number of operations. The logical session cache will perform its own - # operations, inflating the number of operations and causing the test to fail. - - jstests/core/**/opcounters_write_cmd.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - -executor: - archive: - hooks: - - ValidateCollections - config: {} - hooks: - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: MongoDFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false - logicalSessionRefreshMillis: 1000 diff --git a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_default_refresh_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_default_refresh_jscore_passthrough.yml deleted file mode 100644 index 5f91f3b17f3..00000000000 --- a/buildscripts/resmokeconfig/suites/logical_session_cache_standalone_default_refresh_jscore_passthrough.yml +++ /dev/null @@ -1,36 +0,0 @@ -test_kind: js_test - -selector: - roots: - - jstests/core/**/*.js - exclude_files: - # Transactions are not supported on MongoDB standalone nodes. - - jstests/core/txns/**/*.js - # This test expects a fixed number of operations. The logical session cache will perform its own - # operations, inflating the number of operations and causing the test to fail. - - jstests/core/**/opcounters_write_cmd.js - # These tests expect the logical session cache refresh thread to be turned off, so that refreshes - # can be triggered deterministically. - - jstests/core/**/list_all_local_sessions.js - - jstests/core/**/list_all_sessions.js - - jstests/core/**/list_sessions.js - # These tests verify that an expected number of update operations were tracked in the server - # status metrics, but the logical session cache refresh causes additional updates to be recorded. - - jstests/core/**/find_and_modify_metrics.js - - jstests/core/**/update_metrics.js - -executor: - archive: - hooks: - - ValidateCollections - config: {} - hooks: - - class: ValidateCollections - - class: CleanEveryN - n: 20 - fixture: - class: MongoDFixture - mongod_options: - set_parameters: - enableTestCommands: 1 - disableLogicalSessionCacheRefresh: false diff --git a/buildscripts/resmokelib/config.py b/buildscripts/resmokelib/config.py index 36dee63d936..bf744d4ff75 100644 --- a/buildscripts/resmokelib/config.py +++ b/buildscripts/resmokelib/config.py @@ -67,6 +67,7 @@ DEFAULTS = { "flow_control_tickets": None, "force_excluded_tests": False, "fuzz_mongod_configs": None, + "fuzz_mongos_configs": None, "config_fuzz_seed": None, "genny_executable": None, "include_with_any_tags": None, @@ -357,7 +358,13 @@ EXCLUDED_TAG = "__TEMPORARILY_DISABLED__" # If true, then a test failure or error will cause resmoke.py to exit and not run any more tests. FAIL_FAST = None +# Defines how to fuzz mongod parameters FUZZ_MONGOD_CONFIGS = None + +# Defines how to fuzz mongos parameters +FUZZ_MONGOS_CONFIGS = None + +# This seeds the random number generator used to fuzz mongod and mongos parameters CONFIG_FUZZ_SEED = None # Executable file for genny, passed in as a command line arg. diff --git a/buildscripts/resmokelib/configure_resmoke.py b/buildscripts/resmokelib/configure_resmoke.py index 2656b97d754..84914e292be 100644 --- a/buildscripts/resmokelib/configure_resmoke.py +++ b/buildscripts/resmokelib/configure_resmoke.py @@ -20,7 +20,7 @@ from buildscripts.idl.lib import ALL_FEATURE_FLAG_FILE from buildscripts.resmokelib import config as _config from buildscripts.resmokelib import utils -from buildscripts.resmokelib import mongod_fuzzer_configs +from buildscripts.resmokelib import mongo_fuzzer_configs from buildscripts.resmokelib.suitesconfig import SuiteFinder @@ -301,6 +301,7 @@ or explicitly pass --installDir to the run subcommand of buildscripts/resmoke.py _config.MONGOD_SET_PARAMETERS = _merge_set_params(mongod_set_parameters) _config.FUZZ_MONGOD_CONFIGS = config.pop("fuzz_mongod_configs") + _config.FUZZ_MONGOS_CONFIGS = config.pop("fuzz_mongos_configs") _config.CONFIG_FUZZ_SEED = config.pop("config_fuzz_seed") if _config.FUZZ_MONGOD_CONFIGS: @@ -309,7 +310,7 @@ or explicitly pass --installDir to the run subcommand of buildscripts/resmoke.py else: _config.CONFIG_FUZZ_SEED = int(_config.CONFIG_FUZZ_SEED) _config.MONGOD_SET_PARAMETERS, _config.WT_ENGINE_CONFIG, _config.WT_COLL_CONFIG, \ - _config.WT_INDEX_CONFIG = mongod_fuzzer_configs.fuzz_set_parameters( + _config.WT_INDEX_CONFIG = mongo_fuzzer_configs.fuzz_mongod_set_parameters( _config.FUZZ_MONGOD_CONFIGS, _config.CONFIG_FUZZ_SEED, _config.MONGOD_SET_PARAMETERS) _config.EXCLUDE_WITH_ANY_TAGS.extend(["uses_compact"]) _config.EXCLUDE_WITH_ANY_TAGS.extend(["requires_emptycapped"]) @@ -318,6 +319,15 @@ or explicitly pass --installDir to the run subcommand of buildscripts/resmoke.py mongos_set_parameters = config.pop("mongos_set_parameters") _config.MONGOS_SET_PARAMETERS = _merge_set_params(mongos_set_parameters) + if _config.FUZZ_MONGOS_CONFIGS: + if not _config.CONFIG_FUZZ_SEED: + _config.CONFIG_FUZZ_SEED = random.randrange(sys.maxsize) + else: + _config.CONFIG_FUZZ_SEED = int(_config.CONFIG_FUZZ_SEED) + + _config.MONGOS_SET_PARAMETERS = mongo_fuzzer_configs.fuzz_mongos_set_parameters( + _config.FUZZ_MONGOS_CONFIGS, _config.CONFIG_FUZZ_SEED, _config.MONGOS_SET_PARAMETERS) + _config.MONGOCRYPTD_SET_PARAMETERS = _merge_set_params(config.pop("mongocryptd_set_parameters")) _config.MRLOG = config.pop("mrlog") diff --git a/buildscripts/resmokelib/mongod_fuzzer_configs.py b/buildscripts/resmokelib/mongo_fuzzer_configs.py index 42a92a0bfed..79978af8eec 100644 --- a/buildscripts/resmokelib/mongod_fuzzer_configs.py +++ b/buildscripts/resmokelib/mongo_fuzzer_configs.py @@ -112,33 +112,57 @@ def generate_flow_control_parameters(rng): return configs -def generate_independent_parameters(rng, mode): - """Return a dictionary with values for each independent parameter.""" +def generate_mongod_parameters(rng, mode): + """Return a dictionary with values for each mongod parameter.""" ret = {} + ret["analyzeShardKeySplitPointExpirationSecs"] = rng.randint(1, 300) + ret["chunkMigrationConcurrency"] = rng.choice([1, 4, 16]) + ret["disableLogicalSessionCacheRefresh"] = rng.choice([True, False]) + ret["initialServiceExecutorUseDedicatedThread"] = rng.choice([True, False]) + # TODO (SERVER-75632): Uncomment this to enable passthrough testing. + # ret["lockCodeSegmentsInMemory"] = rng.choice([True, False]) + if not ret["disableLogicalSessionCacheRefresh"]: + ret["logicalSessionRefreshMillis"] = rng.choice([100, 1000, 10000, 100000]) + ret["maxNumberOfTransactionOperationsInSingleOplogEntry"] = rng.randint(1, 10) * rng.choice( + [1, 10, 100]) + ret["minSnapshotHistoryWindowInSeconds"] = rng.choice([300, rng.randint(30, 600)]) + ret["mirrorReads"] = {"samplingRate": rng.random()} + ret["queryAnalysisSampleExpirationSecs"] = rng.choice([1, 10, 100, 1000]) + ret["queryAnalysisSamplerConfigurationRefreshSecs"] = rng.choice([1, 10, 100]) + ret["queryAnalysisWriterIntervalSecs"] = rng.choice([1, 10, 100]) + ret["queryAnalysisWriterMaxMemoryUsageBytes"] = rng.randint(1, 100) * 1024 * 1024 + ret["syncdelay"] = rng.choice([60, rng.randint(15, 180)]) ret["wiredTigerCursorCacheSize"] = rng.randint(-100, 100) ret["wiredTigerSessionCloseIdleTimeSecs"] = rng.randint(0, 300) ret["storageEngineConcurrencyAdjustmentAlgorithm"] = "fixedConcurrentTransactions" - ret["wiredTigerConcurrentWriteTransactions"] = rng.randint(5, 32) - ret["wiredTigerConcurrentReadTransactions"] = rng.randint(5, 32) - ret["wiredTigerStressConfig"] = False if mode != 'stress' else rng.choice([True, False]) if rng.choice(3 * [True] + [False]): # The old retryable writes format is used by other variants. Weight towards turning on the # new retryable writes format on in this one. ret["storeFindAndModifyImagesInSideCollection"] = True - ret["syncdelay"] = rng.choice([60, rng.randint(15, 180)]) - ret["minSnapshotHistoryWindowInSeconds"] = rng.choice([300, rng.randint(5, 600)]) - # TODO (SERVER-75632): Uncomment this to enable passthrough testing. - # ret["lockCodeSegmentsInMemory"] = rng.choice([True, False]) + ret["wiredTigerConcurrentWriteTransactions"] = rng.randint(5, 32) + ret["wiredTigerConcurrentReadTransactions"] = rng.randint(5, 32) + ret["wiredTigerStressConfig"] = False if mode != 'stress' else rng.choice([True, False]) + + # We need a higher timeout to account for test slowness + ret["receiveChunkWaitForRangeDeleterTimeoutMS"] = 300000 + return ret + +def generate_mongos_parameters(rng, mode): + """Return a dictionary with values for each mongos parameter.""" + ret = {} + ret["initialServiceExecutorUseDedicatedThread"] = rng.choice([True, False]) + ret["opportunisticSecondaryTargeting"] = rng.choice([True, False]) + ret["queryAnalysisSamplerConfigurationRefreshSecs"] = rng.choice([1, 10, 100]) return ret -def fuzz_set_parameters(mode, seed, user_provided_params): +def fuzz_mongod_set_parameters(mode, seed, user_provided_params): """Randomly generate mongod configurations and wiredTigerConnectionString.""" rng = random.Random(seed) ret = {} - params = [generate_flow_control_parameters(rng), generate_independent_parameters(rng, mode)] + params = [generate_flow_control_parameters(rng), generate_mongod_parameters(rng, mode)] for dct in params: for key, value in dct.items(): ret[key] = value @@ -148,3 +172,18 @@ def fuzz_set_parameters(mode, seed, user_provided_params): return utils.dump_yaml(ret), generate_eviction_configs(rng, mode), generate_table_configs(rng), \ generate_table_configs(rng) + + +def fuzz_mongos_set_parameters(mode, seed, user_provided_params): + """Randomly generate mongos configurations.""" + rng = random.Random(seed) + + ret = {} + params = generate_mongos_parameters(rng, mode) + for key, value in params.items(): + ret[key] = value + + for key, value in utils.load_yaml(user_provided_params).items(): + ret[key] = value + + return utils.dump_yaml(ret) diff --git a/buildscripts/resmokelib/run/__init__.py b/buildscripts/resmokelib/run/__init__.py index deab6b701c9..5b9fa04f129 100644 --- a/buildscripts/resmokelib/run/__init__.py +++ b/buildscripts/resmokelib/run/__init__.py @@ -260,20 +260,30 @@ class TestRunner(Subcommand): def _log_local_resmoke_invocation(self): """Log local resmoke invocation example.""" local_args = to_local_args() + local_args = strip_fuzz_config_params(local_args) local_resmoke_invocation = ( f"{os.path.join('buildscripts', 'resmoke.py')} {' '.join(local_args)}") + using_config_fuzzer = False if config.FUZZ_MONGOD_CONFIGS: - local_args = strip_fuzz_config_params(local_args) - local_resmoke_invocation = ( - f"{os.path.join('buildscripts', 'resmoke.py')} {' '.join(local_args)}" - f" --fuzzMongodConfigs={config.FUZZ_MONGOD_CONFIGS} --configFuzzSeed={str(config.CONFIG_FUZZ_SEED)}" - ) + using_config_fuzzer = True + local_resmoke_invocation += f" --fuzzMongodConfigs={config.FUZZ_MONGOD_CONFIGS}" self._resmoke_logger.info("Fuzzed mongodSetParameters:\n%s", config.MONGOD_SET_PARAMETERS) self._resmoke_logger.info("Fuzzed wiredTigerConnectionString: %s", config.WT_ENGINE_CONFIG) + + if config.FUZZ_MONGOS_CONFIGS: + using_config_fuzzer = True + local_resmoke_invocation += f" --fuzzMongosConfigs={config.FUZZ_MONGOS_CONFIGS}" + + self._resmoke_logger.info("Fuzzed mongosSetParameters:\n%s", + config.MONGOS_SET_PARAMETERS) + + if using_config_fuzzer: + local_resmoke_invocation += f" --configFuzzSeed={str(config.CONFIG_FUZZ_SEED)}" + resmoke_env_options = '' if os.path.exists('resmoke_env_options.txt'): with open('resmoke_env_options.txt') as fin: @@ -936,14 +946,19 @@ class RunPlugin(PluginInterface): mongodb_server_options.add_argument( "--fuzzMongodConfigs", dest="fuzz_mongod_configs", - help="Randomly chooses server parameters that were not specified. Use 'stress' to fuzz " + help="Randomly chooses mongod parameters that were not specified. Use 'stress' to fuzz " "all configs including stressful storage configurations that may significantly " "slow down the server. Use 'normal' to only fuzz non-stressful configurations. ", metavar="MODE", choices=('normal', 'stress')) - mongodb_server_options.add_argument("--configFuzzSeed", dest="config_fuzz_seed", - metavar="PATH", - help="Sets the seed used by storage config fuzzer") + mongodb_server_options.add_argument( + "--fuzzMongosConfigs", dest="fuzz_mongos_configs", + help="Randomly chooses mongos parameters that were not specified", metavar="MODE", + choices=('normal', )) + + mongodb_server_options.add_argument( + "--configFuzzSeed", dest="config_fuzz_seed", metavar="PATH", + help="Sets the seed used by mongod and mongos config fuzzers") mongodb_server_options.add_argument( "--configShard", dest="config_shard", metavar="CONFIG", @@ -1289,7 +1304,7 @@ def strip_fuzz_config_params(input_args): ret = [] for arg in input_args: - if "--fuzzMongodConfigs" not in arg and "--fuzzConfigSeed" not in arg: + if not arg.startswith(("--fuzzMongodConfigs", "--fuzzMongosConfigs", "--configFuzzSeed")): ret.append(arg) return ret diff --git a/etc/evergreen.yml b/etc/evergreen.yml index cc243f3a815..c56ef430075 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -203,7 +203,6 @@ variables: - windows-2016-dc - name: .jscore .common !.sharding - name: .jstestfuzz .common - - name: .logical_session_cache - name: replica_sets_auth_gen - name: sasl - name: sharding_auth_audit_gen @@ -263,7 +262,6 @@ variables: - name: jsCore_txns_large_txns_format - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: .ocsp - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -843,7 +841,6 @@ buildvariants: - name: causally_consistent_jscore_txns_passthrough - name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore !.ssl - name: .jscore .common !.decimal !.sharding - - name: .logical_session_cache .one_sec - name: mqlrun # TODO(SERVER-64009): Re-enable replica_sets_auth_gen. # - name: replica_sets_auth_gen @@ -880,7 +877,6 @@ buildvariants: # TODO: SERVER-66945 Re-enable ESE on enterprise macos # - name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore !.ssl - name: .jscore .common !.decimal !.sharding - - name: .logical_session_cache .one_sec - name: mqlrun - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough_gen @@ -912,7 +908,6 @@ buildvariants: - name: causally_consistent_jscore_txns_passthrough - name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore - name: .jscore .common !.decimal !.sharding - - name: .logical_session_cache .one_sec - name: mqlrun - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -1221,6 +1216,9 @@ buildvariants: distros: - rhel80-medium - name: .config_fuzzer !.large + - name: .config_fuzzer .large + distros: + - rhel80-medium - name: disk_wiredtiger - name: .encrypt - name: feature_flag_multiversion_gen @@ -1482,7 +1480,6 @@ buildvariants: - name: initial_sync_fuzzer_gen - name: jsCore - name: jsCore_txns - - name: .logical_session_cache .repl - name: .multi_shard - name: multi_stmt_txn_jscore_passthrough_with_migration_gen - name: multiversion_auth_gen @@ -1621,7 +1618,6 @@ buildvariants: - name: .jscore .common !.decimal !.sharding - name: jsCore_txns_large_txns_format - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: libunwind_tests - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -2019,7 +2015,6 @@ buildvariants: - name: jsCore_min_batch_repeat_queries_ese_gsm - name: jsCore_txns_large_txns_format - name: json_schema - - name: .logical_session_cache - name: .multi_shard .common - name: .query_fuzzer - name: .read_write_concern @@ -2143,7 +2138,6 @@ buildvariants: - name: jsCore_min_batch_repeat_queries_ese_gsm - name: jsCore_txns_large_txns_format - name: json_schema - - name: .logical_session_cache .one_sec - name: .multi_shard .common - name: .read_write_concern - name: replica_sets_large_txns_format_jscore_passthrough @@ -2249,7 +2243,6 @@ buildvariants: - name: jsCore_txns_large_txns_format - name: jsCore_wildcard_indexes - name: json_schema - - name: .logical_session_cache - name: .misc_js - name: .multi_shard .common - name: query_golden_classic @@ -2592,7 +2585,6 @@ buildvariants: - name: .jscore .common - name: noPassthrough_gen - name: noPassthroughWithMongod_gen - - name: .logical_session_cache .one_sec - name: .sharding .jscore !.wo_snapshot !.multi_stmt - name: .sharding .common !.csrs !.encrypt - name: sharding_max_mirroring_opportunistic_secondary_targeting_gen @@ -2636,7 +2628,6 @@ buildvariants: - name: .sharding .causally_consistent !.wo_snapshot - name: .concurrency .common !.kill_terminate - name: .jscore .common - - name: .logical_session_cache .one_sec - name: .sharding .jscore !.wo_snapshot !.multi_stmt - name: .sharding .common !.csrs !.encrypt - name: sharding_max_mirroring_opportunistic_secondary_targeting_gen @@ -2679,7 +2670,6 @@ buildvariants: - name: .sharding .causally_consistent !.wo_snapshot - name: .concurrency .common !.kill_terminate - name: .jscore .common - - name: .logical_session_cache .one_sec - name: .sharding .jscore !.wo_snapshot !.multi_stmt - name: .sharding .common !.csrs !.encrypt - name: sharding_max_mirroring_opportunistic_secondary_targeting_gen @@ -2727,7 +2717,6 @@ buildvariants: - name: .sharding .causally_consistent !.wo_snapshot - name: .concurrency .common !.kill_terminate - name: .jscore .common - - name: .logical_session_cache .one_sec - name: .sharding .jscore !.wo_snapshot !.multi_stmt - name: .sharding .common !.csrs !.encrypt - name: sharding_max_mirroring_opportunistic_secondary_targeting_gen @@ -2775,7 +2764,6 @@ buildvariants: - name: .sharding .causally_consistent !.wo_snapshot - name: .concurrency .common !.kill_terminate - name: .jscore .common - - name: .logical_session_cache .one_sec - name: .sharding .jscore !.wo_snapshot !.multi_stmt - name: .sharding .common !.csrs !.encrypt - name: sharding_max_mirroring_opportunistic_secondary_targeting_gen @@ -2822,8 +2810,6 @@ buildvariants: patch_only: true - name: .jscore .common patch_only: true - - name: .logical_session_cache .one_sec - patch_only: true - name: .sharding .jscore !.wo_snapshot !.multi_stmt patch_only: true - name: .sharding .common !.csrs !.encrypt diff --git a/etc/evergreen_yml_components/definitions.yml b/etc/evergreen_yml_components/definitions.yml index 57ca43b4cfc..3c6762735f2 100644 --- a/etc/evergreen_yml_components/definitions.yml +++ b/etc/evergreen_yml_components/definitions.yml @@ -5149,6 +5149,7 @@ tasks: suite: concurrency_sharded_replication resmoke_args: >- --fuzzMongodConfigs=normal + --fuzzMongosConfigs=normal --excludeWithAnyTags=does_not_support_config_fuzzer use_large_distro: "true" @@ -5175,6 +5176,7 @@ tasks: suite: concurrency_sharded_replication resmoke_args: >- --fuzzMongodConfigs=stress + --fuzzMongosConfigs=normal --excludeWithAnyTags=does_not_support_config_fuzzer use_large_distro: "true" exec_timeout_secs: 14400 # 4 hours @@ -5201,6 +5203,7 @@ tasks: suite: sharding_jscore_passthrough resmoke_args: >- --fuzzMongodConfigs=normal + --fuzzMongosConfigs=normal --excludeWithAnyTags=does_not_support_config_fuzzer use_large_distro: "true" @@ -6505,84 +6508,6 @@ tasks: run_no_feature_flag_tests: "true" - <<: *gen_task_template - name: logical_session_cache_replication_default_refresh_jscore_passthrough_gen - tags: ["logical_session_cache", "repl"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_replication_100ms_refresh_jscore_passthrough_gen - tags: ["logical_session_cache", "repl"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_replication_1sec_refresh_jscore_passthrough_gen - tags: ["logical_session_cache", "one_sec", "repl"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_replication_10sec_refresh_jscore_passthrough_gen - tags: ["logical_session_cache", "repl"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_sharding_default_refresh_jscore_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_sharding_100ms_refresh_jscore_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_sharding_100ms_refresh_jscore_txns_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_sharding_1sec_refresh_jscore_passthrough_gen - tags: ["logical_session_cache", "one_sec"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_sharding_10sec_refresh_jscore_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_standalone_default_refresh_jscore_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_standalone_100ms_refresh_jscore_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_standalone_1sec_refresh_jscore_passthrough_gen - tags: ["logical_session_cache", "one_sec"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template - name: logical_session_cache_standalone_10sec_refresh_jscore_passthrough_gen - tags: ["logical_session_cache"] - commands: - - func: "generate resmoke tasks" - -- <<: *gen_task_template name: retryable_writes_jscore_stepdown_passthrough_gen tags: ["retry"] commands: diff --git a/etc/evergreen_yml_components/variants/atlas.yml b/etc/evergreen_yml_components/variants/atlas.yml index 016a7070f21..f335d5eab51 100644 --- a/etc/evergreen_yml_components/variants/atlas.yml +++ b/etc/evergreen_yml_components/variants/atlas.yml @@ -54,7 +54,6 @@ buildvariants: - name: jsCore_txns_large_txns_format - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: .ocsp - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough diff --git a/etc/evergreen_yml_components/variants/in_memory.yml b/etc/evergreen_yml_components/variants/in_memory.yml index 7b3ba77f4dd..ac56df2ee64 100644 --- a/etc/evergreen_yml_components/variants/in_memory.yml +++ b/etc/evergreen_yml_components/variants/in_memory.yml @@ -47,7 +47,6 @@ buildvariants: - name: .jscore .common !.decimal - name: jsCore_txns_large_txns_format - name: .jstestfuzz !.initsync - - name: .logical_session_cache - name: .multi_shard .common - name: multi_stmt_txn_jscore_passthrough_with_migration_gen - name: .read_write_concern !.durable_history diff --git a/etc/evergreen_yml_components/variants/misc_release.yml b/etc/evergreen_yml_components/variants/misc_release.yml index a1c167ca58e..83de7b3b10f 100644 --- a/etc/evergreen_yml_components/variants/misc_release.yml +++ b/etc/evergreen_yml_components/variants/misc_release.yml @@ -45,7 +45,6 @@ buildvariants: - name: .jscore .common - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: replica_sets_gen - name: .replica_sets .common @@ -109,7 +108,6 @@ buildvariants: - name: .jscore .common - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: noPassthrough_gen - name: noPassthroughWithMongod_gen - name: .replica_sets .common @@ -168,7 +166,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -340,7 +337,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -497,7 +493,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -663,7 +658,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common !.decimal !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: replica_sets_gen - name: .replica_sets .common @@ -728,7 +722,6 @@ buildvariants: - debian10-large - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough - name: sasl @@ -785,7 +778,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common !.decimal !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: replica_sets_gen - name: .replica_sets .common @@ -845,7 +837,6 @@ buildvariants: - name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough - name: sasl @@ -901,7 +892,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: replica_sets_gen - name: .replica_sets .common @@ -1009,7 +999,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: replica_sets_gen - name: .replica_sets .common @@ -1192,7 +1181,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -1254,7 +1242,6 @@ buildvariants: - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: jsCore_txns_large_txns_format - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough - name: .replica_sets .multi_oplog @@ -1314,7 +1301,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common !.multiversion - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -1377,7 +1363,6 @@ buildvariants: - name: jsCore_txns_large_txns_format - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: .ocsp - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -1440,7 +1425,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -1503,7 +1487,6 @@ buildvariants: - name: .jscore .common !.decimal !.sharding - name: jsCore_txns_large_txns_format - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough - name: .replica_sets .multi_oplog @@ -1575,7 +1558,6 @@ buildvariants: - name: .jscore .common !.decimal !.feature_flag_guarded - name: .jstestfuzz .common - name: multiversion_gen - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -1636,7 +1618,6 @@ buildvariants: - name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough - name: sasl @@ -1693,7 +1674,6 @@ buildvariants: - name: .encrypt !.replica_sets !.aggregation !.sharding !.jscore - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough - name: sasl @@ -1749,7 +1729,6 @@ buildvariants: - name: free_monitoring - name: .jscore .common !.decimal !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: replica_sets_gen - name: .replica_sets .common @@ -1811,7 +1790,6 @@ buildvariants: - name: .jscore .common - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: multiversion_gen - name: .powercycle - name: replica_sets_gen @@ -1891,7 +1869,6 @@ buildvariants: - name: jsCore_auth - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: .multiversion_fuzzer - name: .multiversion_passthrough - name: .ocsp @@ -1957,7 +1934,6 @@ buildvariants: - name: fle - name: .jscore .common !.auth !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -2054,7 +2030,6 @@ buildvariants: - name: .jscore .common - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec # - name: multiversion_gen - name: replica_sets_gen - name: replica_sets_jscore_passthrough @@ -2111,7 +2086,6 @@ buildvariants: - name: .jscore .common - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec # - name: multiversion_gen - name: replica_sets_gen - name: replica_sets_jscore_passthrough @@ -2180,7 +2154,6 @@ buildvariants: - name: jsCore_auth - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: .ocsp - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -2247,7 +2220,6 @@ buildvariants: - name: jsCore_auth - name: .jstestfuzz .common - name: libunwind_tests - - name: .logical_session_cache .one_sec - name: .ocsp - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -2309,7 +2281,6 @@ buildvariants: - name: fle - name: .jscore .common !.auth !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -2404,7 +2375,6 @@ buildvariants: - name: fle - name: .jscore .common !.auth !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: replica_sets_gen - name: .replica_sets .common - name: .sharding .txns @@ -2636,7 +2606,6 @@ buildvariants: - name: .jstestfuzz .interrupt - name: .jstestfuzz .common - name: .jstestfuzz .session - - name: .logical_session_cache .one_sec - name: .query_fuzzer - name: .read_write_concern !.linearize - name: replica_sets_gen @@ -2691,7 +2660,6 @@ buildvariants: - name: .jstestfuzz .interrupt - name: .jstestfuzz .common - name: .jstestfuzz .session - - name: .logical_session_cache .one_sec - name: .query_fuzzer - name: .read_write_concern !.linearize - name: replica_sets_gen @@ -2745,7 +2713,6 @@ buildvariants: # - name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: mqlrun - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough @@ -2790,7 +2757,6 @@ buildvariants: - name: .encrypt !.replica_sets !.sharding !.aggregation !.jscore - name: .jscore .common !.decimal !.sharding !.feature_flag_guarded - name: .jstestfuzz .common - - name: .logical_session_cache .one_sec - name: mqlrun - name: replica_sets_auth_gen - name: replica_sets_jscore_passthrough diff --git a/etc/evergreen_yml_components/variants/sanitizer.yml b/etc/evergreen_yml_components/variants/sanitizer.yml index 679e40771b4..13d3681ddec 100644 --- a/etc/evergreen_yml_components/variants/sanitizer.yml +++ b/etc/evergreen_yml_components/variants/sanitizer.yml @@ -98,7 +98,6 @@ buildvariants: - name: jsCore_min_batch_repeat_queries_ese_gsm - name: jsCore_txns_large_txns_format - name: json_schema - - name: .logical_session_cache - name: .multi_shard .common - name: multiversion_gen - name: .multiversion_fuzzer @@ -182,7 +181,6 @@ buildvariants: - name: jsCore_min_batch_repeat_queries_ese_gsm - name: jsCore_txns_large_txns_format - name: json_schema - - name: .logical_session_cache .one_sec - name: .multi_shard .common - name: multiversion_gen - name: .multiversion_fuzzer diff --git a/jstests/concurrency/fsm_workloads/analyze_shard_key.js b/jstests/concurrency/fsm_workloads/analyze_shard_key.js index 8ba3d86d4b7..17f9fd6a8a5 100644 --- a/jstests/concurrency/fsm_workloads/analyze_shard_key.js +++ b/jstests/concurrency/fsm_workloads/analyze_shard_key.js @@ -15,7 +15,7 @@ * resource_intensive, * incompatible_with_concurrency_simultaneous, * does_not_support_stepdowns, - * assumes_balancer_off + * assumes_balancer_off, * ] */ load("jstests/concurrency/fsm_libs/extend_workload.js"); diff --git a/jstests/core/administrative/list_all_local_sessions.js b/jstests/core/administrative/list_all_local_sessions.js index 434e8ed660c..5bd896301a9 100644 --- a/jstests/core/administrative/list_all_local_sessions.js +++ b/jstests/core/administrative/list_all_local_sessions.js @@ -5,6 +5,9 @@ // # former operation must be routed to the primary in a replica set, whereas the latter may be // # routed to a secondary. // assumes_read_preference_unchanged, +// # The config fuzzer may run logical session cache refreshes in the background, which interferes +// # with this test. +// does_not_support_config_fuzzer, // # Sessions are asynchronously flushed to disk, so a stepdown immediately after calling // # startSession may cause this test to fail to find the returned sessionId. // does_not_support_stepdowns, diff --git a/jstests/core/administrative/list_all_sessions.js b/jstests/core/administrative/list_all_sessions.js index 7ecaefd00f9..a6b23c8340d 100644 --- a/jstests/core/administrative/list_all_sessions.js +++ b/jstests/core/administrative/list_all_sessions.js @@ -1,6 +1,9 @@ // Sessions are asynchronously flushed to disk, so a stepdown immediately after calling // startSession may cause this test to fail to find the returned sessionId. // @tags: [ +// # The config fuzzer may run logical session cache refreshes in the background, which interferes +// # with this test. +// does_not_support_config_fuzzer, // does_not_support_stepdowns, // uses_testing_only_commands, // no_selinux, diff --git a/jstests/core/administrative/list_sessions.js b/jstests/core/administrative/list_sessions.js index 18f684ef11d..316962e9b3e 100644 --- a/jstests/core/administrative/list_sessions.js +++ b/jstests/core/administrative/list_sessions.js @@ -6,6 +6,9 @@ // does_not_support_stepdowns, // uses_testing_only_commands, // no_selinux, +// # The config fuzzer may run logical session cache refreshes in the background, which interferes +// # with this test. +// does_not_support_config_fuzzer, // ] // Basic tests for the $listSessions aggregation stage. diff --git a/jstests/core/opcounters_write_cmd.js b/jstests/core/opcounters_write_cmd.js index 6c604a9348a..62933143be6 100644 --- a/jstests/core/opcounters_write_cmd.js +++ b/jstests/core/opcounters_write_cmd.js @@ -4,6 +4,9 @@ // not_allowed_with_security_token, // uses_multiple_connections, // assumes_standalone_mongod, +// # The config fuzzer may run logical session cache refreshes in the background, which modifies +// # some serverStatus metrics read in this test. +// does_not_support_config_fuzzer, // does_not_support_repeated_reads, // ] diff --git a/jstests/core/write/find_and_modify/find_and_modify_metrics.js b/jstests/core/write/find_and_modify/find_and_modify_metrics.js index 37ba521ef73..5a251525c08 100644 --- a/jstests/core/write/find_and_modify/find_and_modify_metrics.js +++ b/jstests/core/write/find_and_modify/find_and_modify_metrics.js @@ -10,6 +10,9 @@ * # This test contains assertions on the number of executed operations, and tenant migrations * # passthrough suites automatically retry operations on TenantMigrationAborted errors. * tenant_migration_incompatible, + * # The config fuzzer may run logical session cache refreshes in the background, which modifies + * # some serverStatus metrics read in this test. + * does_not_support_config_fuzzer, * ] */ (function() { diff --git a/jstests/core/write/update/update_metrics.js b/jstests/core/write/update/update_metrics.js index 8bf93e5009d..a5e3938d47b 100644 --- a/jstests/core/write/update/update_metrics.js +++ b/jstests/core/write/update/update_metrics.js @@ -5,6 +5,9 @@ * @tags: [ * # The test is designed to work with an unsharded collection. * assumes_unsharded_collection, + * # The config fuzzer may run logical session cache refreshes in the background, which modifies + * # some serverStatus metrics read in this test. + * does_not_support_config_fuzzer, * # The test relies on the precise number of executions of commands. * requires_non_retryable_writes, * # This test contains assertions on the number of executed operations, and tenant migrations |