summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Abrahams <jonathan@mongodb.com>2017-05-26 13:59:32 -0400
committerJonathan Abrahams <jonathan@mongodb.com>2017-05-26 13:59:32 -0400
commitb6c1b6b6a9bfe17d3c21d87ee8516e069dadfa3c (patch)
treee05d63a53f72e96cf0456b7bb612eee69b8584ec
parent90fd8a19000b5f96983f068e6380c1f6bd824b69 (diff)
downloadmongo-b6c1b6b6a9bfe17d3c21d87ee8516e069dadfa3c.tar.gz
SERVER-28302 resmoke.py parser should accept files that don't end in .js
-rw-r--r--buildscripts/burn_in_tests.py12
-rwxr-xr-xbuildscripts/resmoke.py94
-rw-r--r--buildscripts/resmokeconfig/suites/aggregation.yml40
-rw-r--r--buildscripts/resmokeconfig/suites/aggregation_auth.yml70
-rw-r--r--buildscripts/resmokeconfig/suites/aggregation_ese.yml50
-rw-r--r--buildscripts/resmokeconfig/suites/aggregation_facet_unwind_passthrough.yml44
-rw-r--r--buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough.yml72
-rw-r--r--buildscripts/resmokeconfig/suites/aggregation_sharded_collections_passthrough.yml108
-rw-r--r--buildscripts/resmokeconfig/suites/audit.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/auth.yml22
-rw-r--r--buildscripts/resmokeconfig/suites/auth_audit.yml28
-rw-r--r--buildscripts/resmokeconfig/suites/bulk_gle_passthrough.yml38
-rw-r--r--buildscripts/resmokeconfig/suites/causally_consistent_jscore_passthrough.yml278
-rw-r--r--buildscripts/resmokeconfig/suites/concurrency.yml46
-rw-r--r--buildscripts/resmokeconfig/suites/concurrency_replication.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/concurrency_sharded.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/core.yml34
-rw-r--r--buildscripts/resmokeconfig/suites/core_auth.yml64
-rw-r--r--buildscripts/resmokeconfig/suites/core_ese.yml36
-rw-r--r--buildscripts/resmokeconfig/suites/core_minimum_batch_size.yml56
-rw-r--r--buildscripts/resmokeconfig/suites/core_op_query.yml34
-rw-r--r--buildscripts/resmokeconfig/suites/dbtest.yml12
-rw-r--r--buildscripts/resmokeconfig/suites/decimal.yml32
-rw-r--r--buildscripts/resmokeconfig/suites/disk_mmapv1.yml52
-rw-r--r--buildscripts/resmokeconfig/suites/disk_wiredtiger.yml40
-rw-r--r--buildscripts/resmokeconfig/suites/dur_jscore_passthrough.yml44
-rw-r--r--buildscripts/resmokeconfig/suites/durability.yml28
-rw-r--r--buildscripts/resmokeconfig/suites/ese.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/external_auth.yml26
-rw-r--r--buildscripts/resmokeconfig/suites/failpoints.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/failpoints_auth.yml34
-rw-r--r--buildscripts/resmokeconfig/suites/gle_auth.yml64
-rw-r--r--buildscripts/resmokeconfig/suites/gle_auth_basics_passthrough.yml52
-rw-r--r--buildscripts/resmokeconfig/suites/integration_tests_replset.yml32
-rw-r--r--buildscripts/resmokeconfig/suites/integration_tests_sharded.yml42
-rw-r--r--buildscripts/resmokeconfig/suites/integration_tests_standalone.yml28
-rw-r--r--buildscripts/resmokeconfig/suites/jstestfuzz.yml44
-rw-r--r--buildscripts/resmokeconfig/suites/jstestfuzz_replication.yml58
-rw-r--r--buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml64
-rw-r--r--buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml66
-rw-r--r--buildscripts/resmokeconfig/suites/jstestfuzz_sharded.yml56
-rw-r--r--buildscripts/resmokeconfig/suites/master_slave.yml22
-rw-r--r--buildscripts/resmokeconfig/suites/master_slave_auth.yml38
-rw-r--r--buildscripts/resmokeconfig/suites/master_slave_jscore_passthrough.yml50
-rw-r--r--buildscripts/resmokeconfig/suites/mmap.yml40
-rw-r--r--buildscripts/resmokeconfig/suites/mongos_test.yml5
-rw-r--r--buildscripts/resmokeconfig/suites/multiversion.yml30
-rw-r--r--buildscripts/resmokeconfig/suites/multiversion_auth.yml50
-rw-r--r--buildscripts/resmokeconfig/suites/multiversion_multistorage_engine.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/no_passthrough.yml22
-rw-r--r--buildscripts/resmokeconfig/suites/no_passthrough_with_mongod.yml32
-rw-r--r--buildscripts/resmokeconfig/suites/no_server.yml11
-rw-r--r--buildscripts/resmokeconfig/suites/parallel.yml32
-rw-r--r--buildscripts/resmokeconfig/suites/read_concern_linearizable_passthrough.yml196
-rw-r--r--buildscripts/resmokeconfig/suites/read_concern_majority_passthrough.yml192
-rw-r--r--buildscripts/resmokeconfig/suites/read_only.yml22
-rw-r--r--buildscripts/resmokeconfig/suites/read_only_sharded.yml22
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_auth.yml34
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_ese.yml30
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_initsync_jscore_passthrough.yml192
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_initsync_static_jscore_passthrough.yml70
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_jscore_passthrough.yml58
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_kill_secondaries_jscore_passthrough.yml60
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_pv0.yml78
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_resync_jscore_passthrough.yml180
-rw-r--r--buildscripts/resmokeconfig/suites/replica_sets_resync_static_jscore_passthrough.yml72
-rw-r--r--buildscripts/resmokeconfig/suites/rlp.yml36
-rw-r--r--buildscripts/resmokeconfig/suites/sasl.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/serial_run.yml32
-rw-r--r--buildscripts/resmokeconfig/suites/sharded_collections_jscore_passthrough.yml206
-rw-r--r--buildscripts/resmokeconfig/suites/sharding.yml18
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_auth.yml68
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_auth_audit.yml70
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_continuous_config_stepdown.yml272
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_ese.yml26
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_gle_auth_basics_passthrough.yml92
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_jscore_passthrough.yml146
-rw-r--r--buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml78
-rw-r--r--buildscripts/resmokeconfig/suites/slow1.yml32
-rw-r--r--buildscripts/resmokeconfig/suites/snmp.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/ssl.yml24
-rw-r--r--buildscripts/resmokeconfig/suites/ssl_special.yml16
-rw-r--r--buildscripts/resmokeconfig/suites/tool.yml26
-rw-r--r--buildscripts/resmokeconfig/suites/unittests.yml8
-rw-r--r--buildscripts/resmokeconfig/suites/unittests_auth.yml12
-rw-r--r--buildscripts/resmokeconfig/suites/unittests_client.yml12
-rw-r--r--buildscripts/resmokeconfig/suites/unittests_query.yml12
-rw-r--r--buildscripts/resmokeconfig/suites/unittests_repl.yml12
-rw-r--r--buildscripts/resmokeconfig/suites/unittests_sharding.yml12
-rw-r--r--buildscripts/resmokeconfig/suites/with_server.yml19
-rw-r--r--buildscripts/resmokelib/parser.py65
-rw-r--r--buildscripts/resmokelib/reportfile.py3
-rw-r--r--buildscripts/resmokelib/selector.py13
-rw-r--r--buildscripts/resmokelib/testing/suite.py48
95 files changed, 2470 insertions, 2470 deletions
diff --git a/buildscripts/burn_in_tests.py b/buildscripts/burn_in_tests.py
index b5bd0357497..66b23bc480e 100644
--- a/buildscripts/burn_in_tests.py
+++ b/buildscripts/burn_in_tests.py
@@ -242,9 +242,8 @@ def find_tests_by_executor(suites):
memberships = {}
test_membership = resmokelib.parser.create_test_membership_map()
for suite in suites:
- for group in suite.test_groups:
- for test in group.tests:
- memberships[test] = test_membership[test]
+ for test in suite.test_group.tests:
+ memberships[test] = test_membership[test]
return memberships
@@ -258,10 +257,9 @@ def create_executor_list(suites, exclude_suites):
memberships = collections.defaultdict(list)
test_membership = resmokelib.parser.create_test_membership_map()
for suite in suites:
- for group in suite.test_groups:
- for test in group.tests:
- for executor in set(test_membership[test]) - set(exclude_suites):
- memberships[executor].append(test)
+ for test in suite.test_group.tests:
+ for executor in set(test_membership[test]) - set(exclude_suites):
+ memberships[executor].append(test)
return memberships
diff --git a/buildscripts/resmoke.py b/buildscripts/resmoke.py
index b6d11785030..c01baf91322 100755
--- a/buildscripts/resmoke.py
+++ b/buildscripts/resmoke.py
@@ -27,51 +27,50 @@ def _execute_suite(suite):
logger = resmokelib.logging.loggers.EXECUTOR_LOGGER
- for group in suite.test_groups:
- if resmokelib.config.SHUFFLE:
- logger.info("Shuffling order of tests for %ss in suite %s. The seed is %d.",
- group.test_kind, suite.get_name(), resmokelib.config.RANDOM_SEED)
- random.seed(resmokelib.config.RANDOM_SEED)
- random.shuffle(group.tests)
-
- if resmokelib.config.DRY_RUN == "tests":
- sb = []
- sb.append("Tests that would be run for %ss in suite %s:"
- % (group.test_kind, suite.get_name()))
- if len(group.tests) > 0:
- for test in group.tests:
- sb.append(test)
- else:
- sb.append("(no tests)")
- logger.info("\n".join(sb))
-
- # Set a successful return code on the test group because we want to output the tests
- # that would get run by any other suites the user specified.
- group.return_code = 0
- continue
-
- if len(group.tests) == 0:
- logger.info("Skipping %ss, no tests to run", group.test_kind)
- continue
-
- group_config = suite.get_executor_config().get(group.test_kind, {})
- executor = resmokelib.testing.executor.TestGroupExecutor(logger,
- group,
- **group_config)
-
- try:
- executor.run()
- if resmokelib.config.FAIL_FAST and group.return_code != 0:
- suite.return_code = group.return_code
- return False
- except resmokelib.errors.UserInterrupt:
- suite.return_code = 130 # Simulate SIGINT as exit code.
- return True
- except:
- logger.exception("Encountered an error when running %ss of suite %s.",
- group.test_kind, suite.get_name())
- suite.return_code = 2
+ if resmokelib.config.SHUFFLE:
+ logger.info("Shuffling order of tests for %ss in suite %s. The seed is %d.",
+ suite.test_group.test_kind, suite.get_name(), resmokelib.config.RANDOM_SEED)
+ random.seed(resmokelib.config.RANDOM_SEED)
+ random.shuffle(suite.test_group.tests)
+
+ if resmokelib.config.DRY_RUN == "tests":
+ sb = []
+ sb.append("Tests that would be run for %ss in suite %s:"
+ % (suite.test_group.test_kind, suite.get_name()))
+ if len(suite.test_group.tests) > 0:
+ for test in suite.test_group.tests:
+ sb.append(test)
+ else:
+ sb.append("(no tests)")
+ logger.info("\n".join(sb))
+
+ # Set a successful return code on the test group because we want to output the tests
+ # that would get run by any other suites the user specified.
+ suite.test_group.return_code = 0
+ return True
+
+ if len(suite.test_group.tests) == 0:
+ logger.info("Skipping %ss, no tests to run", suite.test_group.test_kind)
+ return True
+
+ group_config = suite.get_executor_config()
+ executor = resmokelib.testing.executor.TestGroupExecutor(logger,
+ suite.test_group,
+ **group_config)
+
+ try:
+ executor.run()
+ if resmokelib.config.FAIL_FAST and suite.test_group.return_code != 0:
+ suite.return_code = suite.test_group.return_code
return False
+ except resmokelib.errors.UserInterrupt:
+ suite.return_code = 130 # Simulate SIGINT as exit code.
+ return True
+ except:
+ logger.exception("Encountered an error when running %ss of suite %s.",
+ suite.test_group.test_kind, suite.get_name())
+ suite.return_code = 2
+ return False
def _log_summary(logger, suites, time_taken):
@@ -103,6 +102,8 @@ def _dump_suite_config(suite, logging_config):
sb = []
sb.append("YAML configuration of suite %s" % (suite.get_name()))
+ sb.append(resmokelib.utils.dump_yaml({"test_kind": suite.get_test_kind_config()}))
+ sb.append("")
sb.append(resmokelib.utils.dump_yaml({"selector": suite.get_selector_config()}))
sb.append("")
sb.append(resmokelib.utils.dump_yaml({"executor": suite.get_executor_config()}))
@@ -120,9 +121,8 @@ def find_suites_by_test(suites):
memberships = {}
test_membership = resmokelib.parser.create_test_membership_map()
for suite in suites:
- for group in suite.test_groups:
- for test in group.tests:
- memberships[test] = test_membership[test]
+ for test in suite.test_group.tests:
+ memberships[test] = test_membership[test]
return memberships
diff --git a/buildscripts/resmokeconfig/suites/aggregation.yml b/buildscripts/resmokeconfig/suites/aggregation.yml
index dcfea8ecf3f..95ec7c2cd67 100644
--- a/buildscripts/resmokeconfig/suites/aggregation.yml
+++ b/buildscripts/resmokeconfig/suites/aggregation.yml
@@ -1,23 +1,23 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/aggregation/*.js
- - jstests/aggregation/bugs/*.js
- - jstests/aggregation/expressions/*.js
- - jstests/aggregation/sources/*/*.js
- - jstests/aggregation/variables/*.js
+ roots:
+ - jstests/aggregation/*.js
+ - jstests/aggregation/bugs/*.js
+ - jstests/aggregation/expressions/*.js
+ - jstests/aggregation/sources/*/*.js
+ - jstests/aggregation/variables/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/aggregation_auth.yml b/buildscripts/resmokeconfig/suites/aggregation_auth.yml
index f723f0eb438..b2ea721b1e8 100644
--- a/buildscripts/resmokeconfig/suites/aggregation_auth.yml
+++ b/buildscripts/resmokeconfig/suites/aggregation_auth.yml
@@ -3,41 +3,41 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/aggregation/*.js
- - jstests/aggregation/bugs/*.js
- - jstests/aggregation/expressions/*.js
- - jstests/aggregation/sources/*/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/aggregation/*[aA]uth*.js
+ roots:
+ - jstests/aggregation/*.js
+ - jstests/aggregation/bugs/*.js
+ - jstests/aggregation/expressions/*.js
+ - jstests/aggregation/sources/*/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/aggregation/*[aA]uth*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- eval: jsTest.authenticate(db.getMongo())
- authenticationDatabase: local
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
- readMode: commands
- hooks:
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- auth: ''
- keyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
- enableLocalhostAuthBypass: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ eval: jsTest.authenticate(db.getMongo())
+ authenticationDatabase: local
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
+ readMode: commands
+ hooks:
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ auth: ''
+ keyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
+ enableLocalhostAuthBypass: false
diff --git a/buildscripts/resmokeconfig/suites/aggregation_ese.yml b/buildscripts/resmokeconfig/suites/aggregation_ese.yml
index 395a8a37898..842b4de059c 100644
--- a/buildscripts/resmokeconfig/suites/aggregation_ese.yml
+++ b/buildscripts/resmokeconfig/suites/aggregation_ese.yml
@@ -2,31 +2,31 @@
config_variables:
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/aggregation/*.js
- - jstests/aggregation/bugs/*.js
- - jstests/aggregation/expressions/*.js
- - jstests/aggregation/sources/*/*.js
- - src/mongo/db/modules/*/jstests/aggregation/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/aggregation/*[aA]uth*.js
+ roots:
+ - jstests/aggregation/*.js
+ - jstests/aggregation/bugs/*.js
+ - jstests/aggregation/expressions/*.js
+ - jstests/aggregation/sources/*/*.js
+ - src/mongo/db/modules/*/jstests/aggregation/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/aggregation/*[aA]uth*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- enableEncryption: ''
- encryptionKeyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ enableEncryption: ''
+ encryptionKeyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/aggregation_facet_unwind_passthrough.yml b/buildscripts/resmokeconfig/suites/aggregation_facet_unwind_passthrough.yml
index 02b5e483b17..a5f4218690a 100644
--- a/buildscripts/resmokeconfig/suites/aggregation_facet_unwind_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/aggregation_facet_unwind_passthrough.yml
@@ -1,25 +1,25 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/aggregation/*.js
- - jstests/aggregation/bugs/*.js
- - jstests/aggregation/expressions/*.js
- - jstests/aggregation/sources/*/*.js
- exclude_with_any_tags:
- - do_not_wrap_aggregations_in_facets
+ roots:
+ - jstests/aggregation/*.js
+ - jstests/aggregation/bugs/*.js
+ - jstests/aggregation/expressions/*.js
+ - jstests/aggregation/sources/*/*.js
+ exclude_with_any_tags:
+ - do_not_wrap_aggregations_in_facets
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- eval: load("jstests/libs/override_methods/implicitly_wrap_pipelines_in_facets.js");
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ eval: load("jstests/libs/override_methods/implicitly_wrap_pipelines_in_facets.js");
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough.yml b/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough.yml
index 695ac071892..9e765b5ff4d 100644
--- a/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough.yml
@@ -1,39 +1,39 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/aggregation/*.js
- - jstests/aggregation/bugs/*.js
- - jstests/aggregation/expressions/*.js
- - jstests/aggregation/sources/*/*.js
- exclude_files:
- - jstests/aggregation/bugs/server18198.js # Uses a mocked mongo client to test read preference.
- - jstests/aggregation/mongos_slaveok.js # Majority read on secondary requires afterOpTime.
- - jstests/aggregation/sources/facet/use_cases.js # Cannot specify write concern when
- # secondaryThrottle is not set.
- - jstests/aggregation/testSlave.js # Majority read on secondary requires afterOpTime.
+ roots:
+ - jstests/aggregation/*.js
+ - jstests/aggregation/bugs/*.js
+ - jstests/aggregation/expressions/*.js
+ - jstests/aggregation/sources/*/*.js
+ exclude_files:
+ - jstests/aggregation/bugs/server18198.js # Uses a mocked mongo client to test read preference.
+ - jstests/aggregation/mongos_slaveok.js # Majority read on secondary requires afterOpTime.
+ - jstests/aggregation/sources/facet/use_cases.js # Cannot specify write concern when
+ # secondaryThrottle is not set.
+ - jstests/aggregation/testSlave.js # Majority read on secondary requires afterOpTime.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- defaultReadConcernLevel: majority
- enableMajorityReadConcern: ''
- eval: "var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js');"
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CheckReplOplogs
- - class: CheckReplDBHash
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- enableMajorityReadConcern: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- num_nodes: 2
- # Needs to be set for any ephemeral or no-journaling storage engine
- write_concern_majority_journal_default: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ defaultReadConcernLevel: majority
+ enableMajorityReadConcern: ''
+ eval: "var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js');"
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CheckReplOplogs
+ - class: CheckReplDBHash
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ enableMajorityReadConcern: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ num_nodes: 2
+ # Needs to be set for any ephemeral or no-journaling storage engine
+ write_concern_majority_journal_default: false
diff --git a/buildscripts/resmokeconfig/suites/aggregation_sharded_collections_passthrough.yml b/buildscripts/resmokeconfig/suites/aggregation_sharded_collections_passthrough.yml
index f47cd001802..0ee7c22228d 100644
--- a/buildscripts/resmokeconfig/suites/aggregation_sharded_collections_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/aggregation_sharded_collections_passthrough.yml
@@ -1,57 +1,57 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/aggregation/*.js
- - jstests/aggregation/bugs/*.js
- - jstests/aggregation/expressions/*.js
- - jstests/aggregation/sources/*/*.js
- exclude_files:
- # The following tests start their own ShardingTest.
- - jstests/aggregation/bugs/server6118.js
- - jstests/aggregation/bugs/server6179.js
- - jstests/aggregation/bugs/server7781.js
- - jstests/aggregation/mongos_slaveok.js
- - jstests/aggregation/sources/addFields/use_cases.js
- - jstests/aggregation/sources/addFields/weather.js
- - jstests/aggregation/sources/facet/use_cases.js
- - jstests/aggregation/sources/graphLookup/sharded.js
- - jstests/aggregation/sources/lookup/lookup.js
- - jstests/aggregation/sources/replaceRoot/address.js
- - jstests/aggregation/testshard1.js
- # The following tests start their own ReplSetTest.
- - jstests/aggregation/testSlave.js
- # The following tests start their own mongod.
- - jstests/aggregation/bugs/cursor_timeout.js
- - jstests/aggregation/bugs/lookup_unwind_getmore.js
- - jstests/aggregation/bugs/lookup_unwind_killcursor.js
- # TODO: Remove after SERVER-23229 is fixed.
- - jstests/aggregation/bugs/groupMissing.js
- exclude_with_any_tags:
- # 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
+ roots:
+ - jstests/aggregation/*.js
+ - jstests/aggregation/bugs/*.js
+ - jstests/aggregation/expressions/*.js
+ - jstests/aggregation/sources/*/*.js
+ exclude_files:
+ # The following tests start their own ShardingTest.
+ - jstests/aggregation/bugs/server6118.js
+ - jstests/aggregation/bugs/server6179.js
+ - jstests/aggregation/bugs/server7781.js
+ - jstests/aggregation/mongos_slaveok.js
+ - jstests/aggregation/sources/addFields/use_cases.js
+ - jstests/aggregation/sources/addFields/weather.js
+ - jstests/aggregation/sources/facet/use_cases.js
+ - jstests/aggregation/sources/graphLookup/sharded.js
+ - jstests/aggregation/sources/lookup/lookup.js
+ - jstests/aggregation/sources/replaceRoot/address.js
+ - jstests/aggregation/testshard1.js
+ # The following tests start their own ReplSetTest.
+ - jstests/aggregation/testSlave.js
+ # The following tests start their own mongod.
+ - jstests/aggregation/bugs/cursor_timeout.js
+ - jstests/aggregation/bugs/lookup_unwind_getmore.js
+ - jstests/aggregation/bugs/lookup_unwind_killcursor.js
+ # TODO: Remove after SERVER-23229 is fixed.
+ - jstests/aggregation/bugs/groupMissing.js
+ exclude_with_any_tags:
+ # 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
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js")
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: ShardedClusterFixture
- mongos_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- mongod_options:
- bind_ip_all: ''
- nopreallocj: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
+ config:
+ shell_options:
+ readMode: commands
+ eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js")
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ShardedClusterFixture
+ mongos_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ mongod_options:
+ bind_ip_all: ''
+ nopreallocj: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
diff --git a/buildscripts/resmokeconfig/suites/audit.yml b/buildscripts/resmokeconfig/suites/audit.yml
index ba62241e73b..eb2f7d00330 100644
--- a/buildscripts/resmokeconfig/suites/audit.yml
+++ b/buildscripts/resmokeconfig/suites/audit.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - src/mongo/db/modules/*/jstests/audit/*.js
+ roots:
+ - src/mongo/db/modules/*/jstests/audit/*.js
# audit tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/auth.yml b/buildscripts/resmokeconfig/suites/auth.yml
index 2dec0319aa8..6467fa26d36 100644
--- a/buildscripts/resmokeconfig/suites/auth.yml
+++ b/buildscripts/resmokeconfig/suites/auth.yml
@@ -1,15 +1,15 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/auth/*.js
- exclude_files:
- # Skip until SERVER-25618 is resolved.
- - jstests/auth/repl.js
+ roots:
+ - jstests/auth/*.js
+ exclude_files:
+ # Skip until SERVER-25618 is resolved.
+ - jstests/auth/repl.js
# Auth tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/auth_audit.yml b/buildscripts/resmokeconfig/suites/auth_audit.yml
index 2cc841760ac..7ac094bfff1 100644
--- a/buildscripts/resmokeconfig/suites/auth_audit.yml
+++ b/buildscripts/resmokeconfig/suites/auth_audit.yml
@@ -1,18 +1,18 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/auth/*.js
- exclude_files:
- # Skip until SERVER-25618 is resolved.
- - jstests/auth/repl.js
+ roots:
+ - jstests/auth/*.js
+ exclude_files:
+ # Skip until SERVER-25618 is resolved.
+ - jstests/auth/repl.js
# Auth tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
- global_vars:
- TestData:
- auditDestination: 'console'
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
+ global_vars:
+ TestData:
+ auditDestination: 'console'
diff --git a/buildscripts/resmokeconfig/suites/bulk_gle_passthrough.yml b/buildscripts/resmokeconfig/suites/bulk_gle_passthrough.yml
index 8e88985f671..2b9d4c875a0 100644
--- a/buildscripts/resmokeconfig/suites/bulk_gle_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/bulk_gle_passthrough.yml
@@ -1,22 +1,22 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- # Define these tests as the roots so that tags can be used to do further refinement. This is in
- # contrast to using jstests/core/*.js as a root, and using include_files as a whitelist.
- - jstests/core/bulk*.js
+ roots:
+ # Define these tests as the roots so that tags can be used to do further refinement. This is in
+ # contrast to using jstests/core/*.js as a root, and using include_files as a whitelist.
+ - jstests/core/bulk*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: legacy
- writeMode: legacy
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: legacy
+ writeMode: legacy
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/causally_consistent_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/causally_consistent_jscore_passthrough.yml
index 3ce0778d644..7470de4a880 100644
--- a/buildscripts/resmokeconfig/suites/causally_consistent_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/causally_consistent_jscore_passthrough.yml
@@ -1,142 +1,142 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # The following tests fail because a certain command or functionality is not supported on
- # mongos. This command or functionality is placed in a comment next to the failing test.
- - jstests/core/apitest_db.js # profiling.
- - jstests/core/apply_ops*.js # applyOps, SERVER-1439.
- - jstests/core/capped6.js # captrunc.
- - jstests/core/capped_convertToCapped1.js # cloneCollectionAsCapped.
- - jstests/core/capped_empty.js # emptycapped.
- - jstests/core/capped_update.js # uses godinsert and can't run under replication.
- - 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/dbadmin.js # "local" database.
- - jstests/core/dbhash.js # dbhash.
- - jstests/core/dbhash2.js # dbhash.
- - jstests/core/diagdata.js # Command not supported in mongos
- - jstests/core/dropdb_race.js # syncdelay.
- - jstests/core/evalb.js # db.eval() and profiling.
- - jstests/core/fsync.js # uses fsync.
- - jstests/core/geo_haystack*.js # geoSearch.
- - jstests/core/geo_s2cursorlimitskip.js # db.eval() and profiling.
- - jstests/core/geo_update_btree2.js # notablescan.
- - jstests/core/index_bigkeys_nofail.js # failIndexKeyTooLong.
- - jstests/core/index_bigkeys_validation.js # failIndexKeyTooLong.
- - jstests/core/max_time_ms.js # sleep, SERVER-2212.
- - jstests/core/notablescan.js # notablescan.
- - jstests/core/profile*.js # profiling.
- - jstests/core/repair_database.js # repairDatabase
- - jstests/core/repair_database_input_validation.js # repairDatabase
- - jstests/core/repair_server12955.js # repairDatabase
- - jstests/core/stages*.js # stageDebug.
- - jstests/core/startup_log.js # "local" database.
- - jstests/core/storageDetailsCommand.js # diskStorageStats.
- - 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.
- - 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.
- # TODO: SERVER-18292 remove once OP_COMMAND is implemented in mongos.
- - jstests/core/invalid_db_name.js
- - jstests/core/validate_cmd_ns.js
- - jstests/core/views/invalid_system_views.js # We expect listCollections to fail when there's an invalid view.
- # TODO: SERVER-27269: mongos can't establish cursor if view has $collStats and views another view.
- - jstests/core/views/views_coll_stats.js
- - jstests/core/killop_drop_collection.js # Uses fsyncLock.
- # Tests that won't work with an injected 'majority' readConcern
- # and/or an injected 'majority' writeConcern. Where a function is
- # listed the reason is we don't have a reliable solution to override
- # the write concern for that function.
- - jstests/core/batch_write_command*.js # these tests use various write concerns
- - jstests/core/bench_test*.js # benchRun() used for writes
- - jstests/core/crud_api.js # has specific w:0 tests
- - jstests/core/error2.js # db.eval() used
- - jstests/core/eval0.js # db.eval() used
- - jstests/core/eval1.js # db.eval() used
- - jstests/core/eval3.js # db.eval() used
- - jstests/core/eval4.js # db.eval() used
- - jstests/core/eval5.js # db.eval() used
- - jstests/core/eval6.js # db.eval() used
- - jstests/core/eval7.js # db.eval() used
- - jstests/core/eval9.js # db.eval() used
- - jstests/core/evala.js # db.eval() used
- - jstests/core/evalc.js # db.eval() used
- - jstests/core/evald.js # db.eval() used
- - jstests/core/evale.js # db.eval() used
- - jstests/core/evalg.js # db.eval() used
- - jstests/core/eval_mr.js # db.eval() used
- - jstests/core/eval_nolock.js # db.eval() used
- - jstests/core/js3.js # db.dbEval() used
- - jstests/core/js7.js # db.eval() used
- - jstests/core/js9.js # db.eval() used
- - jstests/core/mr_merge.js # mr temp tables aren't replicated
- - jstests/core/mr_merge2.js # mr temp tables aren't replicated
- - jstests/core/mr_outreduce.js # mr temp tables aren't replicated
- - jstests/core/mr_outreduce2.js # mr temp tables aren't replicated
- - jstests/core/opcounters_active.js # off by n problem with opcounters
- - jstests/core/opcounters_write_cmd.js # off by n problem with opcounters
- - jstests/core/read_after_optime.js # verifies read after optime fails on standalone
- - jstests/core/remove8.js # db.eval() used
- - jstests/core/rename4.js # db.eval() used
- - jstests/core/shell1.js # tests setSlaveOk() variations on standalone mongod
- - jstests/core/shellkillop.js # db.eval() used
- - jstests/core/shell_writeconcern.js # checks write concern shell helpers
- - jstests/core/storefunc.js # db.eval() used
- - jstests/core/write_result.js # Tests invalid writeConcern, we shouldn't override.
- # Tests that need triaging & remediation | blacklist decision
- # Comments list possible problem point under review.
- - jstests/core/stages_delete.js # Uses stageDebug command for deletes.
- # Tests that fail for Causal Consistency as they have statements that do not support
- # non-local read concern.
- - jstests/core/geo_mapreduce.js
- - jstests/core/geo_mapreduce2.js
- - jstests/core/geo_big_polygon3.js
- - jstests/core/mr*.js
- - jstests/core/profile_mapreduce.js
- - jstests/core/collation.js
- - jstests/core/loadserverscripts.js
- - jstests/core/bypass_doc_validation.js
- - jstests/core/capped_max1.js
- - jstests/core/commands_namespace_parsing.js
- - jstests/core/tailable_skip_limit.js
- - jstests/core/constructors.js
- - jstests/core/index_stats.js
- - jstests/core/views/views_all_commands.js
- - jstests/core/or4.js
- - jstests/core/recursion.js
- - jstests/core/temp_cleanup.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # The following tests fail because a certain command or functionality is not supported on
+ # mongos. This command or functionality is placed in a comment next to the failing test.
+ - jstests/core/apitest_db.js # profiling.
+ - jstests/core/apply_ops*.js # applyOps, SERVER-1439.
+ - jstests/core/capped6.js # captrunc.
+ - jstests/core/capped_convertToCapped1.js # cloneCollectionAsCapped.
+ - jstests/core/capped_empty.js # emptycapped.
+ - jstests/core/capped_update.js # uses godinsert and can't run under replication.
+ - 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/dbadmin.js # "local" database.
+ - jstests/core/dbhash.js # dbhash.
+ - jstests/core/dbhash2.js # dbhash.
+ - jstests/core/diagdata.js # Command not supported in mongos
+ - jstests/core/dropdb_race.js # syncdelay.
+ - jstests/core/evalb.js # db.eval() and profiling.
+ - jstests/core/fsync.js # uses fsync.
+ - jstests/core/geo_haystack*.js # geoSearch.
+ - jstests/core/geo_s2cursorlimitskip.js # db.eval() and profiling.
+ - jstests/core/geo_update_btree2.js # notablescan.
+ - jstests/core/index_bigkeys_nofail.js # failIndexKeyTooLong.
+ - jstests/core/index_bigkeys_validation.js # failIndexKeyTooLong.
+ - jstests/core/max_time_ms.js # sleep, SERVER-2212.
+ - jstests/core/notablescan.js # notablescan.
+ - jstests/core/profile*.js # profiling.
+ - jstests/core/repair_database.js # repairDatabase
+ - jstests/core/repair_database_input_validation.js # repairDatabase
+ - jstests/core/repair_server12955.js # repairDatabase
+ - jstests/core/stages*.js # stageDebug.
+ - jstests/core/startup_log.js # "local" database.
+ - jstests/core/storageDetailsCommand.js # diskStorageStats.
+ - 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.
+ - 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.
+ # TODO: SERVER-18292 remove once OP_COMMAND is implemented in mongos.
+ - jstests/core/invalid_db_name.js
+ - jstests/core/validate_cmd_ns.js
+ - jstests/core/views/invalid_system_views.js # We expect listCollections to fail when there's an invalid view.
+ # TODO: SERVER-27269: mongos can't establish cursor if view has $collStats and views another view.
+ - jstests/core/views/views_coll_stats.js
+ - jstests/core/killop_drop_collection.js # Uses fsyncLock.
+ # Tests that won't work with an injected 'majority' readConcern
+ # and/or an injected 'majority' writeConcern. Where a function is
+ # listed the reason is we don't have a reliable solution to override
+ # the write concern for that function.
+ - jstests/core/batch_write_command*.js # these tests use various write concerns
+ - jstests/core/bench_test*.js # benchRun() used for writes
+ - jstests/core/crud_api.js # has specific w:0 tests
+ - jstests/core/error2.js # db.eval() used
+ - jstests/core/eval0.js # db.eval() used
+ - jstests/core/eval1.js # db.eval() used
+ - jstests/core/eval3.js # db.eval() used
+ - jstests/core/eval4.js # db.eval() used
+ - jstests/core/eval5.js # db.eval() used
+ - jstests/core/eval6.js # db.eval() used
+ - jstests/core/eval7.js # db.eval() used
+ - jstests/core/eval9.js # db.eval() used
+ - jstests/core/evala.js # db.eval() used
+ - jstests/core/evalc.js # db.eval() used
+ - jstests/core/evald.js # db.eval() used
+ - jstests/core/evale.js # db.eval() used
+ - jstests/core/evalg.js # db.eval() used
+ - jstests/core/eval_mr.js # db.eval() used
+ - jstests/core/eval_nolock.js # db.eval() used
+ - jstests/core/js3.js # db.dbEval() used
+ - jstests/core/js7.js # db.eval() used
+ - jstests/core/js9.js # db.eval() used
+ - jstests/core/mr_merge.js # mr temp tables aren't replicated
+ - jstests/core/mr_merge2.js # mr temp tables aren't replicated
+ - jstests/core/mr_outreduce.js # mr temp tables aren't replicated
+ - jstests/core/mr_outreduce2.js # mr temp tables aren't replicated
+ - jstests/core/opcounters_active.js # off by n problem with opcounters
+ - jstests/core/opcounters_write_cmd.js # off by n problem with opcounters
+ - jstests/core/read_after_optime.js # verifies read after optime fails on standalone
+ - jstests/core/remove8.js # db.eval() used
+ - jstests/core/rename4.js # db.eval() used
+ - jstests/core/shell1.js # tests setSlaveOk() variations on standalone mongod
+ - jstests/core/shellkillop.js # db.eval() used
+ - jstests/core/shell_writeconcern.js # checks write concern shell helpers
+ - jstests/core/storefunc.js # db.eval() used
+ - jstests/core/write_result.js # Tests invalid writeConcern, we shouldn't override.
+ # Tests that need triaging & remediation | blacklist decision
+ # Comments list possible problem point under review.
+ - jstests/core/stages_delete.js # Uses stageDebug command for deletes.
+ # Tests that fail for Causal Consistency as they have statements that do not support
+ # non-local read concern.
+ - jstests/core/geo_mapreduce.js
+ - jstests/core/geo_mapreduce2.js
+ - jstests/core/geo_big_polygon3.js
+ - jstests/core/mr*.js
+ - jstests/core/profile_mapreduce.js
+ - jstests/core/collation.js
+ - jstests/core/loadserverscripts.js
+ - jstests/core/bypass_doc_validation.js
+ - jstests/core/capped_max1.js
+ - jstests/core/commands_namespace_parsing.js
+ - jstests/core/tailable_skip_limit.js
+ - jstests/core/constructors.js
+ - jstests/core/index_stats.js
+ - jstests/core/views/views_all_commands.js
+ - jstests/core/or4.js
+ - jstests/core/recursion.js
+ - jstests/core/temp_cleanup.js
executor:
- js_test:
- config:
- shell_options:
- eval: load("jstests/libs/override_methods/enable_causal_consistency.js")
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: ShardedClusterFixture
- mongos_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- mongod_options:
- bind_ip_all: ''
- nopreallocj: ''
- enableMajorityReadConcern: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- num_rs_nodes_per_shard: 2
- enable_sharding:
- - test
+ config:
+ shell_options:
+ eval: load("jstests/libs/override_methods/enable_causal_consistency.js")
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ShardedClusterFixture
+ mongos_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ mongod_options:
+ bind_ip_all: ''
+ nopreallocj: ''
+ enableMajorityReadConcern: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ num_rs_nodes_per_shard: 2
+ enable_sharding:
+ - test
diff --git a/buildscripts/resmokeconfig/suites/concurrency.yml b/buildscripts/resmokeconfig/suites/concurrency.yml
index e585902274d..6ba0a320d77 100644
--- a/buildscripts/resmokeconfig/suites/concurrency.yml
+++ b/buildscripts/resmokeconfig/suites/concurrency.yml
@@ -1,26 +1,26 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/concurrency/*.js
- exclude_files:
- # Skip replication and sharding tests because they're run in different suites
- - jstests/concurrency/fsm_all_replication*.js
- - jstests/concurrency/fsm_all_sharded*.js
- # Skip fsm_all_simultaneous.js to avoid triggering the 6-hour timeout in Evergreen when this
- # suite is run with --repeat=10 on the Linux Repeated Execution variant.
- - jstests/concurrency/fsm_all_simultaneous.js
+ roots:
+ - jstests/concurrency/*.js
+ exclude_files:
+ # Skip replication and sharding tests because they're run in different suites
+ - jstests/concurrency/fsm_all_replication*.js
+ - jstests/concurrency/fsm_all_sharded*.js
+ # Skip fsm_all_simultaneous.js to avoid triggering the 6-hour timeout in Evergreen when this
+ # suite is run with --repeat=10 on the Linux Repeated Execution variant.
+ - jstests/concurrency/fsm_all_simultaneous.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/concurrency_replication.yml b/buildscripts/resmokeconfig/suites/concurrency_replication.yml
index 8c9d272caea..a846207bf7a 100644
--- a/buildscripts/resmokeconfig/suites/concurrency_replication.yml
+++ b/buildscripts/resmokeconfig/suites/concurrency_replication.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/concurrency/fsm_all_replication*.js
+ roots:
+ - jstests/concurrency/fsm_all_replication*.js
# Concurrency tests that run against a replica set start one themselves.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/concurrency_sharded.yml b/buildscripts/resmokeconfig/suites/concurrency_sharded.yml
index b5bd8b7169e..008e6381a64 100644
--- a/buildscripts/resmokeconfig/suites/concurrency_sharded.yml
+++ b/buildscripts/resmokeconfig/suites/concurrency_sharded.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/concurrency/fsm_all_sharded*.js
+ roots:
+ - jstests/concurrency/fsm_all_sharded*.js
# Concurrency tests that run against a sharded cluster start one themselves.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/core.yml b/buildscripts/resmokeconfig/suites/core.yml
index 7532b70635d..1d417e9db18 100644
--- a/buildscripts/resmokeconfig/suites/core.yml
+++ b/buildscripts/resmokeconfig/suites/core.yml
@@ -1,20 +1,20 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
+ roots:
+ - jstests/core/**/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/core_auth.yml b/buildscripts/resmokeconfig/suites/core_auth.yml
index 78cbad244e5..d1d90dfaa12 100644
--- a/buildscripts/resmokeconfig/suites/core_auth.yml
+++ b/buildscripts/resmokeconfig/suites/core_auth.yml
@@ -3,38 +3,38 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/core/**/*[aA]uth*.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/core/**/*[aA]uth*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- eval: jsTest.authenticate(db.getMongo())
- authenticationDatabase: local
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
- readMode: commands
- hooks:
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- auth: ''
- keyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
- enableLocalhostAuthBypass: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ eval: jsTest.authenticate(db.getMongo())
+ authenticationDatabase: local
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
+ readMode: commands
+ hooks:
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ auth: ''
+ keyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
+ enableLocalhostAuthBypass: false
diff --git a/buildscripts/resmokeconfig/suites/core_ese.yml b/buildscripts/resmokeconfig/suites/core_ese.yml
index 74ab7c9b195..1a851cbbd2c 100644
--- a/buildscripts/resmokeconfig/suites/core_ese.yml
+++ b/buildscripts/resmokeconfig/suites/core_ese.yml
@@ -2,24 +2,24 @@
config_variables:
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
+ roots:
+ - jstests/core/**/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- enableEncryption: ''
- encryptionKeyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ enableEncryption: ''
+ encryptionKeyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/core_minimum_batch_size.yml b/buildscripts/resmokeconfig/suites/core_minimum_batch_size.yml
index 085c32c8c29..96fa4b9ad94 100644
--- a/buildscripts/resmokeconfig/suites/core_minimum_batch_size.yml
+++ b/buildscripts/resmokeconfig/suites/core_minimum_batch_size.yml
@@ -1,31 +1,31 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # The following tests fail when specifying a minimal batchSize:
- - jstests/core/find9.js # Reduction of objsLeftInBatch.
- - jstests/core/finda.js # Reduction of objsLeftInBatch.
- - jstests/core/profile1.js # Extra operation for a getmore.
- - jstests/core/profile2.js # Extra operation for a getmore.
- - jstests/core/sortk.js # Negative limit value changes result to batchSize.
- - jstests/core/tailable_skip_limit.js # Negative limit value changes result to batchSize.
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # The following tests fail when specifying a minimal batchSize:
+ - jstests/core/find9.js # Reduction of objsLeftInBatch.
+ - jstests/core/finda.js # Reduction of objsLeftInBatch.
+ - jstests/core/profile1.js # Extra operation for a getmore.
+ - jstests/core/profile2.js # Extra operation for a getmore.
+ - jstests/core/sortk.js # Negative limit value changes result to batchSize.
+ - jstests/core/tailable_skip_limit.js # Negative limit value changes result to batchSize.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- batchSize: 2 # Changes the default batchSize of db.coll.find() from 0 to 2.
- readMode: commands
- eval: load("jstests/libs/override_methods/find_batch_size.js");
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ batchSize: 2 # Changes the default batchSize of db.coll.find() from 0 to 2.
+ readMode: commands
+ eval: load("jstests/libs/override_methods/find_batch_size.js");
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/core_op_query.yml b/buildscripts/resmokeconfig/suites/core_op_query.yml
index 5ec056a57ff..56d4de905e2 100644
--- a/buildscripts/resmokeconfig/suites/core_op_query.yml
+++ b/buildscripts/resmokeconfig/suites/core_op_query.yml
@@ -1,20 +1,20 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
+ roots:
+ - jstests/core/**/*.js
executor:
- js_test:
- config:
- shell_options:
- rpcProtocols: opQueryOnly
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ rpcProtocols: opQueryOnly
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/dbtest.yml b/buildscripts/resmokeconfig/suites/dbtest.yml
index 2eab07bdfcb..da62ab67992 100644
--- a/buildscripts/resmokeconfig/suites/dbtest.yml
+++ b/buildscripts/resmokeconfig/suites/dbtest.yml
@@ -1,8 +1,8 @@
-selector:
- db_test: {}
+test_kind: db_test
+
+selector: {}
executor:
- db_test:
- config:
- dbtest_options:
- dur: ''
+ config:
+ dbtest_options:
+ dur: ''
diff --git a/buildscripts/resmokeconfig/suites/decimal.yml b/buildscripts/resmokeconfig/suites/decimal.yml
index 62cb11ecab2..0ad21c91338 100644
--- a/buildscripts/resmokeconfig/suites/decimal.yml
+++ b/buildscripts/resmokeconfig/suites/decimal.yml
@@ -1,19 +1,19 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/decimal/*.js
+ roots:
+ - jstests/decimal/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/disk_mmapv1.yml b/buildscripts/resmokeconfig/suites/disk_mmapv1.yml
index 194e5121cf9..7538b5fc026 100644
--- a/buildscripts/resmokeconfig/suites/disk_mmapv1.yml
+++ b/buildscripts/resmokeconfig/suites/disk_mmapv1.yml
@@ -1,29 +1,29 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/disk/*.js
- exclude_files:
- - jstests/disk/repair2.js # SERVER-18256
- # The following tests require a dedicated disk partition to be set up. Otherwise they will
- # silently be no-ops.
- - jstests/disk/repair3.js
- - jstests/disk/repair4.js
+ roots:
+ - jstests/disk/*.js
+ exclude_files:
+ - jstests/disk/repair2.js # SERVER-18256
+ # The following tests require a dedicated disk partition to be set up. Otherwise they will
+ # silently be no-ops.
+ - jstests/disk/repair3.js
+ - jstests/disk/repair4.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- storageEngine: mmapv1
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 1
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
- storageEngine: mmapv1
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ storageEngine: mmapv1
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 1
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
+ storageEngine: mmapv1
diff --git a/buildscripts/resmokeconfig/suites/disk_wiredtiger.yml b/buildscripts/resmokeconfig/suites/disk_wiredtiger.yml
index a2ce2019a44..99d9c7e269e 100644
--- a/buildscripts/resmokeconfig/suites/disk_wiredtiger.yml
+++ b/buildscripts/resmokeconfig/suites/disk_wiredtiger.yml
@@ -1,23 +1,23 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/disk/*.js
+ roots:
+ - jstests/disk/*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- storageEngine: wiredTiger
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 1
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
- storageEngine: wiredTiger
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ storageEngine: wiredTiger
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 1
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
+ storageEngine: wiredTiger
diff --git a/buildscripts/resmokeconfig/suites/dur_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/dur_jscore_passthrough.yml
index 347d23de967..14e390e7ff3 100644
--- a/buildscripts/resmokeconfig/suites/dur_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/dur_jscore_passthrough.yml
@@ -1,25 +1,25 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- - jstests/core/repair*.js # Fails on recovery.
- - jstests/core/shellkillop.js # Takes forever and doesn't test anything new.
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ - jstests/core/repair*.js # Fails on recovery.
+ - jstests/core/shellkillop.js # Takes forever and doesn't test anything new.
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- journal: ''
- set_parameters:
- enableTestCommands: 1
- smallfiles: ''
- durOptions: 8
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ journal: ''
+ set_parameters:
+ enableTestCommands: 1
+ smallfiles: ''
+ durOptions: 8
diff --git a/buildscripts/resmokeconfig/suites/durability.yml b/buildscripts/resmokeconfig/suites/durability.yml
index 0653ff7ce02..9dbc458c837 100644
--- a/buildscripts/resmokeconfig/suites/durability.yml
+++ b/buildscripts/resmokeconfig/suites/durability.yml
@@ -1,18 +1,18 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/dur/*.js
- exclude_files:
- # SERVER-19124 closeall.js causes the task to time out in Evergreen.
- - jstests/dur/closeall.js
+ roots:
+ - jstests/dur/*.js
+ exclude_files:
+ # SERVER-19124 closeall.js causes the task to time out in Evergreen.
+ - jstests/dur/closeall.js
# Durability tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- storageEngine: mmapv1
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ storageEngine: mmapv1
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/ese.yml b/buildscripts/resmokeconfig/suites/ese.yml
index 60b25db5509..79bbe88294b 100644
--- a/buildscripts/resmokeconfig/suites/ese.yml
+++ b/buildscripts/resmokeconfig/suites/ese.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - src/mongo/db/modules/*/jstests/encryptdb/*.js
+ roots:
+ - src/mongo/db/modules/*/jstests/encryptdb/*.js
# Encrypted storage engine tests start their own mongod processes
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/external_auth.yml b/buildscripts/resmokeconfig/suites/external_auth.yml
index cadb6603185..09ed96fe4e3 100644
--- a/buildscripts/resmokeconfig/suites/external_auth.yml
+++ b/buildscripts/resmokeconfig/suites/external_auth.yml
@@ -1,16 +1,16 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - src/mongo/db/modules/enterprise/jstests/external_auth/*.js
+ roots:
+ - src/mongo/db/modules/enterprise/jstests/external_auth/*.js
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
- gssapiServiceName: "mockservice"
- process_kwargs:
- env_vars:
- KRB5_TRACE: /dev/stdout
- KRB5_CONFIG: src/mongo/db/modules/enterprise/jstests/external_auth/assets/krb5.conf
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
+ gssapiServiceName: "mockservice"
+ process_kwargs:
+ env_vars:
+ KRB5_TRACE: /dev/stdout
+ KRB5_CONFIG: src/mongo/db/modules/enterprise/jstests/external_auth/assets/krb5.conf
diff --git a/buildscripts/resmokeconfig/suites/failpoints.yml b/buildscripts/resmokeconfig/suites/failpoints.yml
index 5943ce0f49e..a1032b384fa 100644
--- a/buildscripts/resmokeconfig/suites/failpoints.yml
+++ b/buildscripts/resmokeconfig/suites/failpoints.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/fail_point/*.js
+ roots:
+ - jstests/fail_point/*.js
# Failpoint tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/failpoints_auth.yml b/buildscripts/resmokeconfig/suites/failpoints_auth.yml
index 04c514080be..044381d1e34 100644
--- a/buildscripts/resmokeconfig/suites/failpoints_auth.yml
+++ b/buildscripts/resmokeconfig/suites/failpoints_auth.yml
@@ -3,24 +3,24 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/fail_point/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/fail_point/*[aA]uth*.js
+ roots:
+ - jstests/fail_point/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/fail_point/*[aA]uth*.js
# Failpoint tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/gle_auth.yml b/buildscripts/resmokeconfig/suites/gle_auth.yml
index ad8bc84c190..084f391867f 100644
--- a/buildscripts/resmokeconfig/suites/gle_auth.yml
+++ b/buildscripts/resmokeconfig/suites/gle_auth.yml
@@ -3,38 +3,38 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/gle/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/gle/*[aA]uth*.js
+ roots:
+ - jstests/gle/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/gle/*[aA]uth*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- eval: jsTest.authenticate(db.getMongo())
- authenticationDatabase: local
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
- readMode: commands
- hooks:
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- auth: ''
- keyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
- enableLocalhostAuthBypass: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ eval: jsTest.authenticate(db.getMongo())
+ authenticationDatabase: local
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
+ readMode: commands
+ hooks:
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ auth: ''
+ keyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
+ enableLocalhostAuthBypass: false
diff --git a/buildscripts/resmokeconfig/suites/gle_auth_basics_passthrough.yml b/buildscripts/resmokeconfig/suites/gle_auth_basics_passthrough.yml
index ebbd50f5f0c..9ce634bf741 100644
--- a/buildscripts/resmokeconfig/suites/gle_auth_basics_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/gle_auth_basics_passthrough.yml
@@ -3,32 +3,32 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/gle/core/*.js
+ roots:
+ - jstests/gle/core/*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- eval: jsTest.authenticate(db.getMongo())
- authenticationDatabase: local
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
- readMode: commands
- fixture:
- class: MongoDFixture
- mongod_options:
- auth: ''
- keyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
- enableLocalhostAuthBypass: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ eval: jsTest.authenticate(db.getMongo())
+ authenticationDatabase: local
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
+ readMode: commands
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ auth: ''
+ keyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
+ enableLocalhostAuthBypass: false
diff --git a/buildscripts/resmokeconfig/suites/integration_tests_replset.yml b/buildscripts/resmokeconfig/suites/integration_tests_replset.yml
index cc59aba19d0..c9467fa0368 100644
--- a/buildscripts/resmokeconfig/suites/integration_tests_replset.yml
+++ b/buildscripts/resmokeconfig/suites/integration_tests_replset.yml
@@ -1,19 +1,19 @@
+test_kind: cpp_integration_test
+
selector:
- cpp_integration_test:
- root: build/integration_tests.txt
+ root: build/integration_tests.txt
executor:
- cpp_integration_test:
- config: {}
- hooks:
- - class: ValidateCollections
- - class: CheckReplOplogs
- - class: CheckReplDBHash
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- num_nodes: 2
+ config: {}
+ hooks:
+ - class: ValidateCollections
+ - class: CheckReplOplogs
+ - class: CheckReplDBHash
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ num_nodes: 2
diff --git a/buildscripts/resmokeconfig/suites/integration_tests_sharded.yml b/buildscripts/resmokeconfig/suites/integration_tests_sharded.yml
index c7e60faaf31..2942a01474a 100644
--- a/buildscripts/resmokeconfig/suites/integration_tests_sharded.yml
+++ b/buildscripts/resmokeconfig/suites/integration_tests_sharded.yml
@@ -1,24 +1,24 @@
+test_kind: cpp_integration_test
+
selector:
- cpp_integration_test:
- root: build/integration_tests.txt
- exclude_files:
- - build/integration_tests/network_interface_asio_integration_test*
+ root: build/integration_tests.txt
+ exclude_files:
+ - build/integration_tests/network_interface_asio_integration_test*
executor:
- cpp_integration_test:
- config: {}
- hooks:
- - class: ValidateCollections
- fixture:
- class: ShardedClusterFixture
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- mongos_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- enable_sharding:
- - test
+ config: {}
+ hooks:
+ - class: ValidateCollections
+ fixture:
+ class: ShardedClusterFixture
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ mongos_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ enable_sharding:
+ - test
diff --git a/buildscripts/resmokeconfig/suites/integration_tests_standalone.yml b/buildscripts/resmokeconfig/suites/integration_tests_standalone.yml
index 938526d48c1..1ab54b6e61f 100644
--- a/buildscripts/resmokeconfig/suites/integration_tests_standalone.yml
+++ b/buildscripts/resmokeconfig/suites/integration_tests_standalone.yml
@@ -1,17 +1,17 @@
+test_kind: cpp_integration_test
+
selector:
- cpp_integration_test:
- root: build/integration_tests.txt
+ root: build/integration_tests.txt
executor:
- cpp_integration_test:
- config: {}
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
+ config: {}
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz.yml b/buildscripts/resmokeconfig/suites/jstestfuzz.yml
index 872c2a1f229..b72c0457ec8 100644
--- a/buildscripts/resmokeconfig/suites/jstestfuzz.yml
+++ b/buildscripts/resmokeconfig/suites/jstestfuzz.yml
@@ -1,26 +1,26 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstestfuzz/out/*.js
+ roots:
+ - jstestfuzz/out/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- shell_options:
- global_vars:
- TestData:
- skipValidationOnInvalidViewDefinitions: true
- forceValidationWithFeatureCompatibilityVersion: "3.4"
- fixture:
- class: MongoDFixture
- mongod_options:
- noprealloc: ''
- set_parameters:
- enableTestCommands: 1
- smallfiles: ''
- verbose: ''
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ shell_options:
+ global_vars:
+ TestData:
+ skipValidationOnInvalidViewDefinitions: true
+ forceValidationWithFeatureCompatibilityVersion: "3.4"
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ noprealloc: ''
+ set_parameters:
+ enableTestCommands: 1
+ smallfiles: ''
+ verbose: ''
diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz_replication.yml b/buildscripts/resmokeconfig/suites/jstestfuzz_replication.yml
index 5331ec7e6fe..70ed651886a 100644
--- a/buildscripts/resmokeconfig/suites/jstestfuzz_replication.yml
+++ b/buildscripts/resmokeconfig/suites/jstestfuzz_replication.yml
@@ -1,32 +1,32 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstestfuzz/out/*.js
+ roots:
+ - jstestfuzz/out/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- shell_options:
- global_vars:
- TestData:
- skipValidationOnInvalidViewDefinitions: true
- forceValidationWithFeatureCompatibilityVersion: "3.4"
- - class: CheckReplOplogs
- - class: CheckReplDBHash
- shell_options:
- global_vars:
- TestData:
- skipValidationOnInvalidViewDefinitions: true
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- verbose: ''
- num_nodes: 2
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ shell_options:
+ global_vars:
+ TestData:
+ skipValidationOnInvalidViewDefinitions: true
+ forceValidationWithFeatureCompatibilityVersion: "3.4"
+ - class: CheckReplOplogs
+ - class: CheckReplDBHash
+ shell_options:
+ global_vars:
+ TestData:
+ skipValidationOnInvalidViewDefinitions: true
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ verbose: ''
+ num_nodes: 2
diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml
index a969ded4d38..9c9bc152bce 100644
--- a/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml
+++ b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_initsync.yml
@@ -1,35 +1,35 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstestfuzz/out/*.js
+ roots:
+ - jstestfuzz/out/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- global_vars:
- TestData:
- ignoreCommandsIncompatibleWithInitialSync: true
- hooks:
- - class: BackgroundInitialSync
- n: 1
- shell_options:
- global_vars:
- TestData:
- skipValidationOnInvalidViewDefinitions: true
- forceValidationWithFeatureCompatibilityVersion: "3.4"
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- oplogSize: 511
- bind_ip_all: ''
- verbose: ''
- set_parameters:
- logComponentVerbosity:
- replication: 2
- enableTestCommands: 1
- numInitialSyncAttempts: 2
- numInitialSyncConnectAttempts: 60
- num_nodes: 2
- start_initial_sync_node: True
+ config:
+ shell_options:
+ readMode: commands
+ global_vars:
+ TestData:
+ ignoreCommandsIncompatibleWithInitialSync: true
+ hooks:
+ - class: BackgroundInitialSync
+ n: 1
+ shell_options:
+ global_vars:
+ TestData:
+ skipValidationOnInvalidViewDefinitions: true
+ forceValidationWithFeatureCompatibilityVersion: "3.4"
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ oplogSize: 511
+ bind_ip_all: ''
+ verbose: ''
+ set_parameters:
+ logComponentVerbosity:
+ replication: 2
+ enableTestCommands: 1
+ numInitialSyncAttempts: 2
+ numInitialSyncConnectAttempts: 60
+ num_nodes: 2
+ start_initial_sync_node: True
diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml
index d2a6dbccc85..95ffc352da8 100644
--- a/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml
+++ b/buildscripts/resmokeconfig/suites/jstestfuzz_replication_resync.yml
@@ -1,36 +1,36 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstestfuzz/out/*.js
+ roots:
+ - jstestfuzz/out/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- global_vars:
- TestData:
- ignoreCommandsIncompatibleWithInitialSync: true
- hooks:
- - class: BackgroundInitialSync
- use_resync: true
- n: 1
- shell_options:
- global_vars:
- TestData:
- skipValidationOnInvalidViewDefinitions: true
- forceValidationWithFeatureCompatibilityVersion: "3.4"
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- oplogSize: 511
- bind_ip_all: ''
- verbose: ''
- set_parameters:
- logComponentVerbosity:
- replication: 2
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- numInitialSyncConnectAttempts: 60
- num_nodes: 2
- start_initial_sync_node: True
+ config:
+ shell_options:
+ readMode: commands
+ global_vars:
+ TestData:
+ ignoreCommandsIncompatibleWithInitialSync: true
+ hooks:
+ - class: BackgroundInitialSync
+ use_resync: true
+ n: 1
+ shell_options:
+ global_vars:
+ TestData:
+ skipValidationOnInvalidViewDefinitions: true
+ forceValidationWithFeatureCompatibilityVersion: "3.4"
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ oplogSize: 511
+ bind_ip_all: ''
+ verbose: ''
+ set_parameters:
+ logComponentVerbosity:
+ replication: 2
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ numInitialSyncConnectAttempts: 60
+ num_nodes: 2
+ start_initial_sync_node: True
diff --git a/buildscripts/resmokeconfig/suites/jstestfuzz_sharded.yml b/buildscripts/resmokeconfig/suites/jstestfuzz_sharded.yml
index c7bdd2a80bf..a5c31b21582 100644
--- a/buildscripts/resmokeconfig/suites/jstestfuzz_sharded.yml
+++ b/buildscripts/resmokeconfig/suites/jstestfuzz_sharded.yml
@@ -1,31 +1,31 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstestfuzz/out/*.js
+ roots:
+ - jstestfuzz/out/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- shell_options:
- global_vars:
- TestData:
- skipValidationOnInvalidViewDefinitions: true
- forceValidationWithFeatureCompatibilityVersion: "3.4"
- fixture:
- class: ShardedClusterFixture
- mongos_options:
- set_parameters:
- enableTestCommands: 1
- bind_ip_all: ''
- verbose: ''
- mongod_options:
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- verbose: ''
- bind_ip_all: ''
- num_shards: 2
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ shell_options:
+ global_vars:
+ TestData:
+ skipValidationOnInvalidViewDefinitions: true
+ forceValidationWithFeatureCompatibilityVersion: "3.4"
+ fixture:
+ class: ShardedClusterFixture
+ mongos_options:
+ set_parameters:
+ enableTestCommands: 1
+ bind_ip_all: ''
+ verbose: ''
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ verbose: ''
+ bind_ip_all: ''
+ num_shards: 2
diff --git a/buildscripts/resmokeconfig/suites/master_slave.yml b/buildscripts/resmokeconfig/suites/master_slave.yml
index 8ada95d1760..eb3dfbc4ef3 100644
--- a/buildscripts/resmokeconfig/suites/master_slave.yml
+++ b/buildscripts/resmokeconfig/suites/master_slave.yml
@@ -1,14 +1,14 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/master_slave/*.js
- exclude_files:
- # Skip until SERVER-25618 is resolved.
- - jstests/master_slave/block1.js
+ roots:
+ - jstests/master_slave/*.js
+ exclude_files:
+ # Skip until SERVER-25618 is resolved.
+ - jstests/master_slave/block1.js
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/master_slave_auth.yml b/buildscripts/resmokeconfig/suites/master_slave_auth.yml
index 6ce42adbe9a..4ba765fc9f0 100644
--- a/buildscripts/resmokeconfig/suites/master_slave_auth.yml
+++ b/buildscripts/resmokeconfig/suites/master_slave_auth.yml
@@ -3,25 +3,25 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/master_slave/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/master_slave/*[aA]uth*.js
- # Skip until SERVER-25618 is resolved.
- - jstests/master_slave/block1.js
+ roots:
+ - jstests/master_slave/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/master_slave/*[aA]uth*.js
+ # Skip until SERVER-25618 is resolved.
+ - jstests/master_slave/block1.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/master_slave_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/master_slave_jscore_passthrough.yml
index 9201e6d7071..54a0d791121 100644
--- a/buildscripts/resmokeconfig/suites/master_slave_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/master_slave_jscore_passthrough.yml
@@ -1,28 +1,28 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # These tests are not expected to pass with master-slave:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/capped_update.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # These tests are not expected to pass with master-slave:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/capped_update.js
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CheckReplDBHash
- - class: CleanEveryN
- n: 20
- fixture:
- class: MasterSlaveFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CheckReplDBHash
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MasterSlaveFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/mmap.yml b/buildscripts/resmokeconfig/suites/mmap.yml
index 6fc951c25cb..618dd2dd151 100644
--- a/buildscripts/resmokeconfig/suites/mmap.yml
+++ b/buildscripts/resmokeconfig/suites/mmap.yml
@@ -1,23 +1,23 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/mmap_v1/*.js
+ roots:
+ - jstests/mmap_v1/*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- storageEngine: mmapv1
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
- storageEngine: mmapv1
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ storageEngine: mmapv1
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
+ storageEngine: mmapv1
diff --git a/buildscripts/resmokeconfig/suites/mongos_test.yml b/buildscripts/resmokeconfig/suites/mongos_test.yml
index e9fd1cc80fe..28260b197ee 100644
--- a/buildscripts/resmokeconfig/suites/mongos_test.yml
+++ b/buildscripts/resmokeconfig/suites/mongos_test.yml
@@ -1,3 +1,4 @@
+test_kind: mongos_test
+
selector:
- mongos_test:
- test: ''
+ test: ''
diff --git a/buildscripts/resmokeconfig/suites/multiversion.yml b/buildscripts/resmokeconfig/suites/multiversion.yml
index f1ca7bcdede..b71eddc93a1 100644
--- a/buildscripts/resmokeconfig/suites/multiversion.yml
+++ b/buildscripts/resmokeconfig/suites/multiversion.yml
@@ -1,19 +1,19 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/multiVersion/*.js
- exclude_files:
- # Multi storageEngine tests
- - jstests/multiVersion/mixed_storage_version_replication.js
- - jstests/multiVersion/transitioning_to_and_from_WT.js
- # TODO: SERVER-21578
- - jstests/multiVersion/balancer_multiVersion_detect.js
- # TODO: SERVER-28104
- - jstests/multiVersion/minor_version_tags_new_old_new.js
+ roots:
+ - jstests/multiVersion/*.js
+ exclude_files:
+ # Multi storageEngine tests
+ - jstests/multiVersion/mixed_storage_version_replication.js
+ - jstests/multiVersion/transitioning_to_and_from_WT.js
+ # TODO: SERVER-21578
+ - jstests/multiVersion/balancer_multiVersion_detect.js
+ # TODO: SERVER-28104
+ - jstests/multiVersion/minor_version_tags_new_old_new.js
# Multiversion tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
+ config:
+ shell_options:
+ nodb: ''
diff --git a/buildscripts/resmokeconfig/suites/multiversion_auth.yml b/buildscripts/resmokeconfig/suites/multiversion_auth.yml
index 9c39f868168..d8161c6ce47 100644
--- a/buildscripts/resmokeconfig/suites/multiversion_auth.yml
+++ b/buildscripts/resmokeconfig/suites/multiversion_auth.yml
@@ -3,32 +3,32 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/multiVersion/*.js
- exclude_files:
- # Multi storageEngine tests
- - jstests/multiVersion/mixed_storage_version_replication.js
- - jstests/multiVersion/transitioning_to_and_from_WT.js
- # TODO: SERVER-21578
- - jstests/multiVersion/balancer_multiVersion_detect.js
- # TODO: SERVER-28104
- - jstests/multiVersion/minor_version_tags_new_old_new.js
+ roots:
+ - jstests/multiVersion/*.js
+ exclude_files:
+ # Multi storageEngine tests
+ - jstests/multiVersion/mixed_storage_version_replication.js
+ - jstests/multiVersion/transitioning_to_and_from_WT.js
+ # TODO: SERVER-21578
+ - jstests/multiVersion/balancer_multiVersion_detect.js
+ # TODO: SERVER-28104
+ - jstests/multiVersion/minor_version_tags_new_old_new.js
# Multiversion tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- authenticationDatabase: local
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
- nodb: ''
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ authenticationDatabase: local
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
+ nodb: ''
diff --git a/buildscripts/resmokeconfig/suites/multiversion_multistorage_engine.yml b/buildscripts/resmokeconfig/suites/multiversion_multistorage_engine.yml
index f2fb47085eb..df3ab5b0700 100644
--- a/buildscripts/resmokeconfig/suites/multiversion_multistorage_engine.yml
+++ b/buildscripts/resmokeconfig/suites/multiversion_multistorage_engine.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/multiVersion/mixed_storage_version_replication.js
- - jstests/multiVersion/transitioning_to_and_from_WT.js
+ roots:
+ - jstests/multiVersion/mixed_storage_version_replication.js
+ - jstests/multiVersion/transitioning_to_and_from_WT.js
# Multiversion tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
+ config:
+ shell_options:
+ nodb: ''
diff --git a/buildscripts/resmokeconfig/suites/no_passthrough.yml b/buildscripts/resmokeconfig/suites/no_passthrough.yml
index 2afbe6ae044..ac0c08980a0 100644
--- a/buildscripts/resmokeconfig/suites/no_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/no_passthrough.yml
@@ -1,15 +1,15 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/noPassthrough/*.js
- exclude_files:
- # Disable inmem_full as per SERVER-27014
- - jstests/noPassthrough/inmem_full.js
+ roots:
+ - jstests/noPassthrough/*.js
+ exclude_files:
+ # Disable inmem_full as per SERVER-27014
+ - jstests/noPassthrough/inmem_full.js
# noPassthrough tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/no_passthrough_with_mongod.yml b/buildscripts/resmokeconfig/suites/no_passthrough_with_mongod.yml
index fa8e62813d1..a77c75a7dbe 100644
--- a/buildscripts/resmokeconfig/suites/no_passthrough_with_mongod.yml
+++ b/buildscripts/resmokeconfig/suites/no_passthrough_with_mongod.yml
@@ -1,19 +1,19 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/noPassthroughWithMongod/*.js
+ roots:
+ - jstests/noPassthroughWithMongod/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/no_server.yml b/buildscripts/resmokeconfig/suites/no_server.yml
index 1a2d5edec99..41a61ee5a94 100644
--- a/buildscripts/resmokeconfig/suites/no_server.yml
+++ b/buildscripts/resmokeconfig/suites/no_server.yml
@@ -1,6 +1,7 @@
+test_kind: js_test
+
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/parallel.yml b/buildscripts/resmokeconfig/suites/parallel.yml
index 7f42d19c18c..cbd7ca70a78 100644
--- a/buildscripts/resmokeconfig/suites/parallel.yml
+++ b/buildscripts/resmokeconfig/suites/parallel.yml
@@ -1,19 +1,19 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/parallel/*.js
+ roots:
+ - jstests/parallel/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/read_concern_linearizable_passthrough.yml b/buildscripts/resmokeconfig/suites/read_concern_linearizable_passthrough.yml
index 58406452df8..f2df7250e73 100644
--- a/buildscripts/resmokeconfig/suites/read_concern_linearizable_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/read_concern_linearizable_passthrough.yml
@@ -1,101 +1,101 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # Tests that won't work with an injected 'linearizable' readConcern
- # and/or an injected 'majority' writeConcern. Where a function is
- # listed the reason is we don't have a reliable solution to override
- # the write concern for that function.
- - jstests/core/batch_write_command*.js # these tests use various write concerns
- - jstests/core/bench_test*.js # benchRun() used for writes
- - jstests/core/capped_update.js # uses godinsert and can't run under replication.
- - jstests/core/crud_api.js # has specific w:0 tests
- - jstests/core/error2.js # db.eval() used
- - jstests/core/eval0.js # db.eval() used
- - jstests/core/eval1.js # db.eval() used
- - jstests/core/eval3.js # db.eval() used
- - jstests/core/eval4.js # db.eval() used
- - jstests/core/eval5.js # db.eval() used
- - jstests/core/eval6.js # db.eval() used
- - jstests/core/eval7.js # db.eval() used
- - jstests/core/eval9.js # db.eval() used
- - jstests/core/evala.js # db.eval() used
- - jstests/core/evalb.js # db.eval() used
- - jstests/core/evalc.js # db.eval() used
- - jstests/core/evald.js # db.eval() used
- - jstests/core/evale.js # db.eval() used
- - jstests/core/evalg.js # db.eval() used
- - jstests/core/eval_mr.js # db.eval() used
- - jstests/core/eval_nolock.js # db.eval() used
- - jstests/core/fsync.js # Uses fsyncLock() which prevents a linearizable read from writing
- # an entry to the oplog.
- - jstests/core/geo_s2cursorlimitskip.js # drops system.profile collection and counts ops.
- - jstests/core/js3.js # db.dbEval() used
- - jstests/core/js7.js # db.eval() used
- - jstests/core/js9.js # db.eval() used
- - jstests/core/max_time_ms.js # SERVER-27665 maxTimeNeverTimeOut failPoint.
- - jstests/core/mr_merge.js # mr temp tables aren't replicated
- - jstests/core/mr_merge2.js # mr temp tables aren't replicated
- - jstests/core/mr_outreduce.js # mr temp tables aren't replicated
- - jstests/core/mr_outreduce2.js # mr temp tables aren't replicated
- - jstests/core/opcounters_active.js # off by n problem with opcounters
- - jstests/core/opcounters_write_cmd.js # off by n problem with opcounters
- - jstests/core/profile1.js # system.profile not replicated
- - jstests/core/profile2.js # system.profile not replicated
- - jstests/core/profile3.js # system.profile not replicated
- - jstests/core/profile_agg.js # system.profile not replicated
- - jstests/core/profile_count.js # system.profile not replicated
- - jstests/core/profile_delete.js # system.profile not replicated
- - jstests/core/profile_distinct.js # system.profile not replicated
- - jstests/core/profile_find.js # system.profile not replicated
- - jstests/core/profile_findandmodify.js # system.profile not replicated
- - jstests/core/profile_geonear.js # system.profile not replicated
- - jstests/core/profile_getmore.js # system.profile not replicated
- - jstests/core/profile_group.js # system.profile not replicated
- - jstests/core/profile_insert.js # system.profile not replicated
- - jstests/core/profile_list_collections.js # system.profile not replicated
- - jstests/core/profile_list_indexes.js # system.profile not replicated
- - jstests/core/profile_mapreduce.js # system.profile not replicated
- - jstests/core/profile_parallel_collection_scan.js # system.profile not replicated
- - jstests/core/profile_repair_cursor.js # system.profile not replicated
- - jstests/core/profile_sampling.js # system.profile not replicated
- - jstests/core/profile_update.js # system.profile not replicated
- - jstests/core/read_after_optime.js # verifies read after optime fails on standalone
- - jstests/core/remove8.js # db.eval() used
- - jstests/core/rename4.js # db.eval() used
- - jstests/core/shell1.js # tests setSlaveOk() variations on standalone mongod
- - jstests/core/shellkillop.js # db.eval() used
- - jstests/core/shell_writeconcern.js # checks write concern shell helpers
- - jstests/core/storefunc.js # db.eval() used
- - jstests/core/write_result.js # Tests invalid writeConcern, we shouldn't override.
- # Tests that need triaging & remediation | blacklist decision
- # Comments list possible problem point under review.
- - jstests/core/capped6.js # Uses captrunc test command.
- - jstests/core/stages_delete.js # Uses stageDebug command for deletes.
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # Tests that won't work with an injected 'linearizable' readConcern
+ # and/or an injected 'majority' writeConcern. Where a function is
+ # listed the reason is we don't have a reliable solution to override
+ # the write concern for that function.
+ - jstests/core/batch_write_command*.js # these tests use various write concerns
+ - jstests/core/bench_test*.js # benchRun() used for writes
+ - jstests/core/capped_update.js # uses godinsert and can't run under replication.
+ - jstests/core/crud_api.js # has specific w:0 tests
+ - jstests/core/error2.js # db.eval() used
+ - jstests/core/eval0.js # db.eval() used
+ - jstests/core/eval1.js # db.eval() used
+ - jstests/core/eval3.js # db.eval() used
+ - jstests/core/eval4.js # db.eval() used
+ - jstests/core/eval5.js # db.eval() used
+ - jstests/core/eval6.js # db.eval() used
+ - jstests/core/eval7.js # db.eval() used
+ - jstests/core/eval9.js # db.eval() used
+ - jstests/core/evala.js # db.eval() used
+ - jstests/core/evalb.js # db.eval() used
+ - jstests/core/evalc.js # db.eval() used
+ - jstests/core/evald.js # db.eval() used
+ - jstests/core/evale.js # db.eval() used
+ - jstests/core/evalg.js # db.eval() used
+ - jstests/core/eval_mr.js # db.eval() used
+ - jstests/core/eval_nolock.js # db.eval() used
+ - jstests/core/fsync.js # Uses fsyncLock() which prevents a linearizable read from writing
+ # an entry to the oplog.
+ - jstests/core/geo_s2cursorlimitskip.js # drops system.profile collection and counts ops.
+ - jstests/core/js3.js # db.dbEval() used
+ - jstests/core/js7.js # db.eval() used
+ - jstests/core/js9.js # db.eval() used
+ - jstests/core/max_time_ms.js # SERVER-27665 maxTimeNeverTimeOut failPoint.
+ - jstests/core/mr_merge.js # mr temp tables aren't replicated
+ - jstests/core/mr_merge2.js # mr temp tables aren't replicated
+ - jstests/core/mr_outreduce.js # mr temp tables aren't replicated
+ - jstests/core/mr_outreduce2.js # mr temp tables aren't replicated
+ - jstests/core/opcounters_active.js # off by n problem with opcounters
+ - jstests/core/opcounters_write_cmd.js # off by n problem with opcounters
+ - jstests/core/profile1.js # system.profile not replicated
+ - jstests/core/profile2.js # system.profile not replicated
+ - jstests/core/profile3.js # system.profile not replicated
+ - jstests/core/profile_agg.js # system.profile not replicated
+ - jstests/core/profile_count.js # system.profile not replicated
+ - jstests/core/profile_delete.js # system.profile not replicated
+ - jstests/core/profile_distinct.js # system.profile not replicated
+ - jstests/core/profile_find.js # system.profile not replicated
+ - jstests/core/profile_findandmodify.js # system.profile not replicated
+ - jstests/core/profile_geonear.js # system.profile not replicated
+ - jstests/core/profile_getmore.js # system.profile not replicated
+ - jstests/core/profile_group.js # system.profile not replicated
+ - jstests/core/profile_insert.js # system.profile not replicated
+ - jstests/core/profile_list_collections.js # system.profile not replicated
+ - jstests/core/profile_list_indexes.js # system.profile not replicated
+ - jstests/core/profile_mapreduce.js # system.profile not replicated
+ - jstests/core/profile_parallel_collection_scan.js # system.profile not replicated
+ - jstests/core/profile_repair_cursor.js # system.profile not replicated
+ - jstests/core/profile_sampling.js # system.profile not replicated
+ - jstests/core/profile_update.js # system.profile not replicated
+ - jstests/core/read_after_optime.js # verifies read after optime fails on standalone
+ - jstests/core/remove8.js # db.eval() used
+ - jstests/core/rename4.js # db.eval() used
+ - jstests/core/shell1.js # tests setSlaveOk() variations on standalone mongod
+ - jstests/core/shellkillop.js # db.eval() used
+ - jstests/core/shell_writeconcern.js # checks write concern shell helpers
+ - jstests/core/storefunc.js # db.eval() used
+ - jstests/core/write_result.js # Tests invalid writeConcern, we shouldn't override.
+ # Tests that need triaging & remediation | blacklist decision
+ # Comments list possible problem point under review.
+ - jstests/core/capped6.js # Uses captrunc test command.
+ - jstests/core/stages_delete.js # Uses stageDebug command for deletes.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- defaultReadConcernLevel: linearizable
- eval: "var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js');"
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CheckReplOplogs
- - class: CheckReplDBHash
- - class: CleanEveryN
- n: 20
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- num_nodes: 2
- write_concern_majority_journal_default: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ defaultReadConcernLevel: linearizable
+ eval: "var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js');"
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CheckReplOplogs
+ - class: CheckReplDBHash
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ num_nodes: 2
+ write_concern_majority_journal_default: false
diff --git a/buildscripts/resmokeconfig/suites/read_concern_majority_passthrough.yml b/buildscripts/resmokeconfig/suites/read_concern_majority_passthrough.yml
index e00fc4cb75b..6758700bc45 100644
--- a/buildscripts/resmokeconfig/suites/read_concern_majority_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/read_concern_majority_passthrough.yml
@@ -1,99 +1,99 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # Tests that won't work with an injected 'majority' readConcern
- # and/or an injected 'majority' writeConcern. Where a function is
- # listed the reason is we don't have a reliable solution to override
- # the write concern for that function.
- - jstests/core/batch_write_command*.js # these tests use various write concerns
- - jstests/core/bench_test*.js # benchRun() used for writes
- - jstests/core/capped_update.js # uses godinsert and can't run under replication.
- - jstests/core/crud_api.js # has specific w:0 tests
- - jstests/core/error2.js # db.eval() used
- - jstests/core/eval0.js # db.eval() used
- - jstests/core/eval1.js # db.eval() used
- - jstests/core/eval3.js # db.eval() used
- - jstests/core/eval4.js # db.eval() used
- - jstests/core/eval5.js # db.eval() used
- - jstests/core/eval6.js # db.eval() used
- - jstests/core/eval7.js # db.eval() used
- - jstests/core/eval9.js # db.eval() used
- - jstests/core/evala.js # db.eval() used
- - jstests/core/evalb.js # db.eval() used
- - jstests/core/evalc.js # db.eval() used
- - jstests/core/evald.js # db.eval() used
- - jstests/core/evale.js # db.eval() used
- - jstests/core/evalg.js # db.eval() used
- - jstests/core/eval_mr.js # db.eval() used
- - jstests/core/eval_nolock.js # db.eval() used
- - jstests/core/geo_s2cursorlimitskip.js # drops system.profile collection and counts ops.
- - jstests/core/js3.js # db.dbEval() used
- - jstests/core/js7.js # db.eval() used
- - jstests/core/js9.js # db.eval() used
- - jstests/core/mr_merge.js # mr temp tables aren't replicated
- - jstests/core/mr_merge2.js # mr temp tables aren't replicated
- - jstests/core/mr_outreduce.js # mr temp tables aren't replicated
- - jstests/core/mr_outreduce2.js # mr temp tables aren't replicated
- - jstests/core/opcounters_active.js # off by n problem with opcounters
- - jstests/core/opcounters_write_cmd.js # off by n problem with opcounters
- - jstests/core/profile1.js # system.profile not replicated
- - jstests/core/profile2.js # system.profile not replicated
- - jstests/core/profile3.js # system.profile not replicated
- - jstests/core/profile_agg.js # system.profile not replicated
- - jstests/core/profile_count.js # system.profile not replicated
- - jstests/core/profile_delete.js # system.profile not replicated
- - jstests/core/profile_distinct.js # system.profile not replicated
- - jstests/core/profile_find.js # system.profile not replicated
- - jstests/core/profile_findandmodify.js # system.profile not replicated
- - jstests/core/profile_geonear.js # system.profile not replicated
- - jstests/core/profile_getmore.js # system.profile not replicated
- - jstests/core/profile_group.js # system.profile not replicated
- - jstests/core/profile_insert.js # system.profile not replicated
- - jstests/core/profile_list_collections.js # system.profile not replicated
- - jstests/core/profile_list_indexes.js # system.profile not replicated
- - jstests/core/profile_mapreduce.js # system.profile not replicated
- - jstests/core/profile_parallel_collection_scan.js # system.profile not replicated
- - jstests/core/profile_repair_cursor.js # system.profile not replicated
- - jstests/core/profile_sampling.js # system.profile not replicated
- - jstests/core/profile_update.js # system.profile not replicated
- - jstests/core/read_after_optime.js # verifies read after optime fails on standalone
- - jstests/core/remove8.js # db.eval() used
- - jstests/core/rename4.js # db.eval() used
- - jstests/core/shell1.js # tests setSlaveOk() variations on standalone mongod
- - jstests/core/shellkillop.js # db.eval() used
- - jstests/core/shell_writeconcern.js # checks write concern shell helpers
- - jstests/core/storefunc.js # db.eval() used
- - jstests/core/write_result.js # Tests invalid writeConcern, we shouldn't override.
- # Tests that need triaging & remediation | blacklist decision
- # Comments list possible problem point under review.
- - jstests/core/capped6.js # Uses captrunc test command.
- - jstests/core/stages_delete.js # Uses stageDebug command for deletes.
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # Tests that won't work with an injected 'majority' readConcern
+ # and/or an injected 'majority' writeConcern. Where a function is
+ # listed the reason is we don't have a reliable solution to override
+ # the write concern for that function.
+ - jstests/core/batch_write_command*.js # these tests use various write concerns
+ - jstests/core/bench_test*.js # benchRun() used for writes
+ - jstests/core/capped_update.js # uses godinsert and can't run under replication.
+ - jstests/core/crud_api.js # has specific w:0 tests
+ - jstests/core/error2.js # db.eval() used
+ - jstests/core/eval0.js # db.eval() used
+ - jstests/core/eval1.js # db.eval() used
+ - jstests/core/eval3.js # db.eval() used
+ - jstests/core/eval4.js # db.eval() used
+ - jstests/core/eval5.js # db.eval() used
+ - jstests/core/eval6.js # db.eval() used
+ - jstests/core/eval7.js # db.eval() used
+ - jstests/core/eval9.js # db.eval() used
+ - jstests/core/evala.js # db.eval() used
+ - jstests/core/evalb.js # db.eval() used
+ - jstests/core/evalc.js # db.eval() used
+ - jstests/core/evald.js # db.eval() used
+ - jstests/core/evale.js # db.eval() used
+ - jstests/core/evalg.js # db.eval() used
+ - jstests/core/eval_mr.js # db.eval() used
+ - jstests/core/eval_nolock.js # db.eval() used
+ - jstests/core/geo_s2cursorlimitskip.js # drops system.profile collection and counts ops.
+ - jstests/core/js3.js # db.dbEval() used
+ - jstests/core/js7.js # db.eval() used
+ - jstests/core/js9.js # db.eval() used
+ - jstests/core/mr_merge.js # mr temp tables aren't replicated
+ - jstests/core/mr_merge2.js # mr temp tables aren't replicated
+ - jstests/core/mr_outreduce.js # mr temp tables aren't replicated
+ - jstests/core/mr_outreduce2.js # mr temp tables aren't replicated
+ - jstests/core/opcounters_active.js # off by n problem with opcounters
+ - jstests/core/opcounters_write_cmd.js # off by n problem with opcounters
+ - jstests/core/profile1.js # system.profile not replicated
+ - jstests/core/profile2.js # system.profile not replicated
+ - jstests/core/profile3.js # system.profile not replicated
+ - jstests/core/profile_agg.js # system.profile not replicated
+ - jstests/core/profile_count.js # system.profile not replicated
+ - jstests/core/profile_delete.js # system.profile not replicated
+ - jstests/core/profile_distinct.js # system.profile not replicated
+ - jstests/core/profile_find.js # system.profile not replicated
+ - jstests/core/profile_findandmodify.js # system.profile not replicated
+ - jstests/core/profile_geonear.js # system.profile not replicated
+ - jstests/core/profile_getmore.js # system.profile not replicated
+ - jstests/core/profile_group.js # system.profile not replicated
+ - jstests/core/profile_insert.js # system.profile not replicated
+ - jstests/core/profile_list_collections.js # system.profile not replicated
+ - jstests/core/profile_list_indexes.js # system.profile not replicated
+ - jstests/core/profile_mapreduce.js # system.profile not replicated
+ - jstests/core/profile_parallel_collection_scan.js # system.profile not replicated
+ - jstests/core/profile_repair_cursor.js # system.profile not replicated
+ - jstests/core/profile_sampling.js # system.profile not replicated
+ - jstests/core/profile_update.js # system.profile not replicated
+ - jstests/core/read_after_optime.js # verifies read after optime fails on standalone
+ - jstests/core/remove8.js # db.eval() used
+ - jstests/core/rename4.js # db.eval() used
+ - jstests/core/shell1.js # tests setSlaveOk() variations on standalone mongod
+ - jstests/core/shellkillop.js # db.eval() used
+ - jstests/core/shell_writeconcern.js # checks write concern shell helpers
+ - jstests/core/storefunc.js # db.eval() used
+ - jstests/core/write_result.js # Tests invalid writeConcern, we shouldn't override.
+ # Tests that need triaging & remediation | blacklist decision
+ # Comments list possible problem point under review.
+ - jstests/core/capped6.js # Uses captrunc test command.
+ - jstests/core/stages_delete.js # Uses stageDebug command for deletes.
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- defaultReadConcernLevel: majority
- eval: "var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js');"
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CheckReplOplogs
- - class: CheckReplDBHash
- - class: CleanEveryN
- n: 20
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- enableMajorityReadConcern: ''
- num_nodes: 2
- # Needs to be set for any ephemeral or no-journaling storage engine
- write_concern_majority_journal_default: false
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ defaultReadConcernLevel: majority
+ eval: "var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js');"
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CheckReplOplogs
+ - class: CheckReplDBHash
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ enableMajorityReadConcern: ''
+ num_nodes: 2
+ # Needs to be set for any ephemeral or no-journaling storage engine
+ write_concern_majority_journal_default: false
diff --git a/buildscripts/resmokeconfig/suites/read_only.yml b/buildscripts/resmokeconfig/suites/read_only.yml
index f5c3a373fd9..a3704cafd7b 100644
--- a/buildscripts/resmokeconfig/suites/read_only.yml
+++ b/buildscripts/resmokeconfig/suites/read_only.yml
@@ -1,14 +1,14 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/readonly/*.js
+ roots:
+ - jstests/readonly/*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- fixture: standalone
- readMode: commands
- nodb: ""
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ fixture: standalone
+ readMode: commands
+ nodb: ""
diff --git a/buildscripts/resmokeconfig/suites/read_only_sharded.yml b/buildscripts/resmokeconfig/suites/read_only_sharded.yml
index 58ab7df836e..aa791e9a2d5 100644
--- a/buildscripts/resmokeconfig/suites/read_only_sharded.yml
+++ b/buildscripts/resmokeconfig/suites/read_only_sharded.yml
@@ -1,14 +1,14 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/readonly/*.js
+ roots:
+ - jstests/readonly/*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- fixture: sharded
- readMode: commands
- nodb: ""
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ fixture: sharded
+ readMode: commands
+ nodb: ""
diff --git a/buildscripts/resmokeconfig/suites/replica_sets.yml b/buildscripts/resmokeconfig/suites/replica_sets.yml
index a3252e46268..f7515dab9ab 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets.yml
@@ -1,11 +1,11 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/replsets/*.js
+ roots:
+ - jstests/replsets/*.js
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_auth.yml b/buildscripts/resmokeconfig/suites/replica_sets_auth.yml
index 5fa3d049183..864230bbce7 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_auth.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_auth.yml
@@ -3,23 +3,23 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/replsets/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/replsets/*[aA]uth*.js
+ roots:
+ - jstests/replsets/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/replsets/*[aA]uth*.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_ese.yml b/buildscripts/resmokeconfig/suites/replica_sets_ese.yml
index 4d342ea40f7..0cfd03a97f2 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_ese.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_ese.yml
@@ -2,21 +2,21 @@
config_variables:
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/replsets/*.js
- exclude_files:
- # Disable config_server_checks.js since it starts mmap servers.
- - jstests/replsets/config_server_checks.js
+ roots:
+ - jstests/replsets/*.js
+ exclude_files:
+ # Disable config_server_checks.js since it starts mmap servers.
+ - jstests/replsets/config_server_checks.js
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- global_vars:
- TestData:
- enableEncryption: ''
- encryptionKeyFile: *keyFile
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ global_vars:
+ TestData:
+ enableEncryption: ''
+ encryptionKeyFile: *keyFile
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_initsync_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_initsync_jscore_passthrough.yml
index bbcffe401cb..de74d181e19 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_initsync_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_initsync_jscore_passthrough.yml
@@ -1,100 +1,100 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # These tests are not expected to pass with replica-sets:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/read_after_optime.js
- - jstests/core/capped_update.js
- # These tests use map-reduce which can lead to consistency mismatches (SERVER-27147).
- - jstests/core/bypass_doc_validation.js
- - jstests/core/collation.js
- - jstests/core/commands_that_do_not_write_do_not_accept_wc.js
- - jstests/core/constructors.js
- - jstests/core/eval_mr.js
- - jstests/core/geo_big_polygon3.js
- - jstests/core/geo_mapreduce.js
- - jstests/core/geo_mapreduce2.js
- - jstests/core/index_stats.js
- - jstests/core/mr1.js
- - jstests/core/mr2.js
- - jstests/core/mr3.js
- - jstests/core/mr4.js
- - jstests/core/mr5.js
- - jstests/core/mr_bigobject.js
- - jstests/core/mr_bigobject_replace.js
- - jstests/core/mr_comments.js
- - jstests/core/mr_errorhandling.js
- - jstests/core/mr_index.js
- - jstests/core/mr_index2.js
- - jstests/core/mr_index3.js
- - jstests/core/mr_killop.js
- - jstests/core/mr_merge.js
- - jstests/core/mr_merge2.js
- - jstests/core/mr_mutable_properties.js
- - jstests/core/mr_optim.js
- - jstests/core/mr_outreduce.js
- - jstests/core/mr_outreduce2.js
- - jstests/core/mr_replaceIntoDB.js
- - jstests/core/mr_sort.js
- - jstests/core/mr_stored.js
- - jstests/core/mr_undef.js
- - jstests/core/opcounters_active.js
- - jstests/core/or4.js
- # This test is blacklisted due to both map-reduce and getLatestProfilerEntry().
- - jstests/core/profile_mapreduce.js
- # Tests that query the system.profile collection cannot run in this suite since an initial sync
- # may insert unexpected operations into the profile collection.
- - jstests/core/profile_list_collections.js
- - jstests/core/profile_list_indexes.js
- - jstests/core/profile_parallel_collection_scan.js
- - jstests/core/profile_repair_cursor.js
- - jstests/core/recursion.js
- - jstests/core/system_profile.js
- - jstests/core/temp_cleanup.js
- # apply_ops1.js is blacklisted since it uses non-idempotent applyOps commands (SERVER-27096).
- - jstests/core/apply_ops1.js
- # operation_latency_histogram.js and geo_s2cursorlimitskip.js do not expect concurrent reads
- # against their test collections.
- - jstests/core/operation_latency_histogram.js
- - jstests/core/geo_s2cursorlimitskip.js
- # Having duplicate namespaces is not supported and will cause initial sync to fail.
- - jstests/core/views/duplicate_ns.js
- # These tests run getLatestProfilerEntry(). The downstream syncing node affects the profiler.
- - jstests/core/profile_agg.js
- - jstests/core/profile_count.js
- - jstests/core/profile_delete.js
- - jstests/core/profile_distinct.js
- - jstests/core/profile_find.js
- - jstests/core/profile_findandmodify.js
- - jstests/core/profile_geonear.js
- - jstests/core/profile_getmore.js
- - jstests/core/profile_group.js
- - jstests/core/profile_insert.js
- - jstests/core/profile_update.js
- # The downstream syncing node affects the top output.
- - jstests/core/top.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # These tests are not expected to pass with replica-sets:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/read_after_optime.js
+ - jstests/core/capped_update.js
+ # These tests use map-reduce which can lead to consistency mismatches (SERVER-27147).
+ - jstests/core/bypass_doc_validation.js
+ - jstests/core/collation.js
+ - jstests/core/commands_that_do_not_write_do_not_accept_wc.js
+ - jstests/core/constructors.js
+ - jstests/core/eval_mr.js
+ - jstests/core/geo_big_polygon3.js
+ - jstests/core/geo_mapreduce.js
+ - jstests/core/geo_mapreduce2.js
+ - jstests/core/index_stats.js
+ - jstests/core/mr1.js
+ - jstests/core/mr2.js
+ - jstests/core/mr3.js
+ - jstests/core/mr4.js
+ - jstests/core/mr5.js
+ - jstests/core/mr_bigobject.js
+ - jstests/core/mr_bigobject_replace.js
+ - jstests/core/mr_comments.js
+ - jstests/core/mr_errorhandling.js
+ - jstests/core/mr_index.js
+ - jstests/core/mr_index2.js
+ - jstests/core/mr_index3.js
+ - jstests/core/mr_killop.js
+ - jstests/core/mr_merge.js
+ - jstests/core/mr_merge2.js
+ - jstests/core/mr_mutable_properties.js
+ - jstests/core/mr_optim.js
+ - jstests/core/mr_outreduce.js
+ - jstests/core/mr_outreduce2.js
+ - jstests/core/mr_replaceIntoDB.js
+ - jstests/core/mr_sort.js
+ - jstests/core/mr_stored.js
+ - jstests/core/mr_undef.js
+ - jstests/core/opcounters_active.js
+ - jstests/core/or4.js
+ # This test is blacklisted due to both map-reduce and getLatestProfilerEntry().
+ - jstests/core/profile_mapreduce.js
+ # Tests that query the system.profile collection cannot run in this suite since an initial sync
+ # may insert unexpected operations into the profile collection.
+ - jstests/core/profile_list_collections.js
+ - jstests/core/profile_list_indexes.js
+ - jstests/core/profile_parallel_collection_scan.js
+ - jstests/core/profile_repair_cursor.js
+ - jstests/core/recursion.js
+ - jstests/core/system_profile.js
+ - jstests/core/temp_cleanup.js
+ # apply_ops1.js is blacklisted since it uses non-idempotent applyOps commands (SERVER-27096).
+ - jstests/core/apply_ops1.js
+ # operation_latency_histogram.js and geo_s2cursorlimitskip.js do not expect concurrent reads
+ # against their test collections.
+ - jstests/core/operation_latency_histogram.js
+ - jstests/core/geo_s2cursorlimitskip.js
+ # Having duplicate namespaces is not supported and will cause initial sync to fail.
+ - jstests/core/views/duplicate_ns.js
+ # These tests run getLatestProfilerEntry(). The downstream syncing node affects the profiler.
+ - jstests/core/profile_agg.js
+ - jstests/core/profile_count.js
+ - jstests/core/profile_delete.js
+ - jstests/core/profile_distinct.js
+ - jstests/core/profile_find.js
+ - jstests/core/profile_findandmodify.js
+ - jstests/core/profile_geonear.js
+ - jstests/core/profile_getmore.js
+ - jstests/core/profile_group.js
+ - jstests/core/profile_insert.js
+ - jstests/core/profile_update.js
+ # The downstream syncing node affects the top output.
+ - jstests/core/top.js
run_hook_interval: &run_hook_interval 20
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: BackgroundInitialSync
- n: *run_hook_interval
- - class: CleanEveryN
- n: *run_hook_interval
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- num_nodes: 2
- start_initial_sync_node: True
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: BackgroundInitialSync
+ n: *run_hook_interval
+ - class: CleanEveryN
+ n: *run_hook_interval
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ num_nodes: 2
+ start_initial_sync_node: True
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_initsync_static_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_initsync_static_jscore_passthrough.yml
index 66c253516a3..659e8efaff5 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_initsync_static_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_initsync_static_jscore_passthrough.yml
@@ -1,39 +1,39 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # These tests are not expected to pass with replica-sets:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/read_after_optime.js
- - jstests/core/capped_update.js
- # Having duplicate namespaces is not supported and will cause initial sync to fail.
- - jstests/core/views/duplicate_ns.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # These tests are not expected to pass with replica-sets:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/read_after_optime.js
+ - jstests/core/capped_update.js
+ # Having duplicate namespaces is not supported and will cause initial sync to fail.
+ - jstests/core/views/duplicate_ns.js
run_hook_interval: &run_hook_interval 20
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: IntermediateInitialSync
- n: *run_hook_interval
- - class: CleanEveryN
- n: *run_hook_interval
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- numInitialSyncConnectAttempts: 60
- num_nodes: 2
- start_initial_sync_node: True
- replset_config_options:
- settings:
- chainingAllowed: False
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: IntermediateInitialSync
+ n: *run_hook_interval
+ - class: CleanEveryN
+ n: *run_hook_interval
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ numInitialSyncConnectAttempts: 60
+ num_nodes: 2
+ start_initial_sync_node: True
+ replset_config_options:
+ settings:
+ chainingAllowed: False
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_jscore_passthrough.yml
index 86fec456a72..2434eefd737 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_jscore_passthrough.yml
@@ -1,32 +1,32 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # These tests are not expected to pass with replica-sets:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/read_after_optime.js
- - jstests/core/capped_update.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # These tests are not expected to pass with replica-sets:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/read_after_optime.js
+ - jstests/core/capped_update.js
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CheckReplOplogs
- - class: CheckReplDBHash
- - class: CleanEveryN
- n: 20
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- num_nodes: 2
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CheckReplOplogs
+ - class: CheckReplDBHash
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ num_nodes: 2
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_kill_secondaries_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_kill_secondaries_jscore_passthrough.yml
index e8d8662a642..6b9b3b20347 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_kill_secondaries_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_kill_secondaries_jscore_passthrough.yml
@@ -1,33 +1,33 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/*.js
- exclude_files:
- # These tests are not expected to pass with replica-sets:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/read_after_optime.js
- - jstests/core/capped_update.js
- # The following tests perform a write with a writeConcern of w=2 when 'testingReplication' is
- # true. This causes the test to hang because the secondary is running with the "rsSyncStopApply"
- # failpoint enabled.
- - jstests/core/geo_update_btree.js
+ roots:
+ - jstests/core/*.js
+ exclude_files:
+ # These tests are not expected to pass with replica-sets:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/read_after_optime.js
+ - jstests/core/capped_update.js
+ # The following tests perform a write with a writeConcern of w=2 when 'testingReplication' is
+ # true. This causes the test to hang because the secondary is running with the "rsSyncStopApply"
+ # failpoint enabled.
+ - jstests/core/geo_update_btree.js
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: PeriodicKillSecondaries
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- num_nodes: 2
- voting_secondaries: false
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: PeriodicKillSecondaries
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ num_nodes: 2
+ voting_secondaries: false
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_pv0.yml b/buildscripts/resmokeconfig/suites/replica_sets_pv0.yml
index 5d155accaee..a5e8a37c1cd 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_pv0.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_pv0.yml
@@ -1,42 +1,42 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/replsets/*.js
- exclude_files:
- - jstests/replsets/catchup.js
- - jstests/replsets/config_server_checks.js
- - jstests/replsets/disallow_adding_initialized_node1.js
- - jstests/replsets/disallow_adding_initialized_node2.js
- - jstests/replsets/last_op_visible.js
- # Linearizable reads not supported on PV0
- - jstests/replsets/linearizable_read_concern.js
- - jstests/replsets/oplog_truncated_on_recovery.js
- - jstests/replsets/priority_takeover_cascading_priorities.js
- - jstests/replsets/priority_takeover_one_node_higher_priority.js
- - jstests/replsets/priority_takeover_two_nodes_equal_priority.js
- - jstests/replsets/read_committed*.js
- - jstests/replsets/read_majority_two_arbs.js
- - jstests/replsets/stepup.js
- # The combination of new bridges and PV0 can lead to an improper spanning tree in sync2.js.
- - jstests/replsets/sync2.js
- # PV0's w:majority guarantees aren't strong enough for this test to pass.
- - jstests/replsets/write_concern_after_stepdown_and_stepup.js
- # PV0 does not persist the last vote
- - jstests/replsets/last_vote.js
- # This test expects the server to log a PV1-only vote-not-granted reason
- - jstests/replsets/no_flapping_during_network_partition.js
- # This test requires terms.
- - jstests/replsets/rollback_too_new.js
- # replSetGetStatus doesn't return last committed optime in PV0.
- - jstests/replsets/command_response_operation_time.js
- # Majority read concern not supported in PV0.
- - jstests/replsets/operation_time_read_and_write_concern.js
+ roots:
+ - jstests/replsets/*.js
+ exclude_files:
+ - jstests/replsets/catchup.js
+ - jstests/replsets/config_server_checks.js
+ - jstests/replsets/disallow_adding_initialized_node1.js
+ - jstests/replsets/disallow_adding_initialized_node2.js
+ - jstests/replsets/last_op_visible.js
+ # Linearizable reads not supported on PV0
+ - jstests/replsets/linearizable_read_concern.js
+ - jstests/replsets/oplog_truncated_on_recovery.js
+ - jstests/replsets/priority_takeover_cascading_priorities.js
+ - jstests/replsets/priority_takeover_one_node_higher_priority.js
+ - jstests/replsets/priority_takeover_two_nodes_equal_priority.js
+ - jstests/replsets/read_committed*.js
+ - jstests/replsets/read_majority_two_arbs.js
+ - jstests/replsets/stepup.js
+ # The combination of new bridges and PV0 can lead to an improper spanning tree in sync2.js.
+ - jstests/replsets/sync2.js
+ # PV0's w:majority guarantees aren't strong enough for this test to pass.
+ - jstests/replsets/write_concern_after_stepdown_and_stepup.js
+ # PV0 does not persist the last vote
+ - jstests/replsets/last_vote.js
+ # This test expects the server to log a PV1-only vote-not-granted reason
+ - jstests/replsets/no_flapping_during_network_partition.js
+ # This test requires terms.
+ - jstests/replsets/rollback_too_new.js
+ # replSetGetStatus doesn't return last committed optime in PV0.
+ - jstests/replsets/command_response_operation_time.js
+ # Majority read concern not supported in PV0.
+ - jstests/replsets/operation_time_read_and_write_concern.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- forceReplicationProtocolVersion: 0
- nodb: ''
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ forceReplicationProtocolVersion: 0
+ nodb: ''
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_resync_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_resync_jscore_passthrough.yml
index f8a7e886933..7e8cca6a54c 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_resync_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_resync_jscore_passthrough.yml
@@ -1,94 +1,94 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # These tests are not expected to pass with replica-sets:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/read_after_optime.js
- - jstests/core/capped_update.js
- # These tests use map-reduce which can lead to consistency mismatches (SERVER-27147).
- - jstests/core/bypass_doc_validation.js
- - jstests/core/collation.js
- - jstests/core/commands_that_do_not_write_do_not_accept_wc.js
- - jstests/core/constructors.js
- - jstests/core/eval_mr.js
- - jstests/core/geo_big_polygon3.js
- - jstests/core/geo_mapreduce.js
- - jstests/core/geo_mapreduce2.js
- - jstests/core/index_stats.js
- - jstests/core/mr1.js
- - jstests/core/mr2.js
- - jstests/core/mr3.js
- - jstests/core/mr4.js
- - jstests/core/mr5.js
- - jstests/core/mr_bigobject.js
- - jstests/core/mr_bigobject_replace.js
- - jstests/core/mr_comments.js
- - jstests/core/mr_errorhandling.js
- - jstests/core/mr_index.js
- - jstests/core/mr_index2.js
- - jstests/core/mr_index3.js
- - jstests/core/mr_killop.js
- - jstests/core/mr_merge.js
- - jstests/core/mr_merge2.js
- - jstests/core/mr_mutable_properties.js
- - jstests/core/mr_optim.js
- - jstests/core/mr_outreduce.js
- - jstests/core/mr_outreduce2.js
- - jstests/core/mr_replaceIntoDB.js
- - jstests/core/mr_sort.js
- - jstests/core/mr_stored.js
- - jstests/core/mr_undef.js
- - jstests/core/opcounters_active.js
- - jstests/core/or4.js
- # This test is blacklisted due to both map-reduce and getLatestProfilerEntry().
- - jstests/core/profile_mapreduce.js
- - jstests/core/recursion.js
- - jstests/core/system_profile.js
- - jstests/core/temp_cleanup.js
- # apply_ops1.js is blacklisted since it uses non-idempotent applyOps commands (SERVER-27096).
- - jstests/core/apply_ops1.js
- # operation_latency_histogram.js and geo_s2cursorlimitskip.js do not expect concurrent reads
- # against their test collections.
- - jstests/core/operation_latency_histogram.js
- - jstests/core/geo_s2cursorlimitskip.js
- # Having duplicate namespaces is not supported and will cause initial sync to fail.
- - jstests/core/views/duplicate_ns.js
- # These tests run getLatestProfilerEntry(). The downstream syncing node affects the profiler.
- - jstests/core/profile_agg.js
- - jstests/core/profile_count.js
- - jstests/core/profile_delete.js
- - jstests/core/profile_distinct.js
- - jstests/core/profile_find.js
- - jstests/core/profile_findandmodify.js
- - jstests/core/profile_geonear.js
- - jstests/core/profile_getmore.js
- - jstests/core/profile_group.js
- - jstests/core/profile_insert.js
- - jstests/core/profile_update.js
- # The downstream syncing node affects the top output.
- - jstests/core/top.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # These tests are not expected to pass with replica-sets:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/read_after_optime.js
+ - jstests/core/capped_update.js
+ # These tests use map-reduce which can lead to consistency mismatches (SERVER-27147).
+ - jstests/core/bypass_doc_validation.js
+ - jstests/core/collation.js
+ - jstests/core/commands_that_do_not_write_do_not_accept_wc.js
+ - jstests/core/constructors.js
+ - jstests/core/eval_mr.js
+ - jstests/core/geo_big_polygon3.js
+ - jstests/core/geo_mapreduce.js
+ - jstests/core/geo_mapreduce2.js
+ - jstests/core/index_stats.js
+ - jstests/core/mr1.js
+ - jstests/core/mr2.js
+ - jstests/core/mr3.js
+ - jstests/core/mr4.js
+ - jstests/core/mr5.js
+ - jstests/core/mr_bigobject.js
+ - jstests/core/mr_bigobject_replace.js
+ - jstests/core/mr_comments.js
+ - jstests/core/mr_errorhandling.js
+ - jstests/core/mr_index.js
+ - jstests/core/mr_index2.js
+ - jstests/core/mr_index3.js
+ - jstests/core/mr_killop.js
+ - jstests/core/mr_merge.js
+ - jstests/core/mr_merge2.js
+ - jstests/core/mr_mutable_properties.js
+ - jstests/core/mr_optim.js
+ - jstests/core/mr_outreduce.js
+ - jstests/core/mr_outreduce2.js
+ - jstests/core/mr_replaceIntoDB.js
+ - jstests/core/mr_sort.js
+ - jstests/core/mr_stored.js
+ - jstests/core/mr_undef.js
+ - jstests/core/opcounters_active.js
+ - jstests/core/or4.js
+ # This test is blacklisted due to both map-reduce and getLatestProfilerEntry().
+ - jstests/core/profile_mapreduce.js
+ - jstests/core/recursion.js
+ - jstests/core/system_profile.js
+ - jstests/core/temp_cleanup.js
+ # apply_ops1.js is blacklisted since it uses non-idempotent applyOps commands (SERVER-27096).
+ - jstests/core/apply_ops1.js
+ # operation_latency_histogram.js and geo_s2cursorlimitskip.js do not expect concurrent reads
+ # against their test collections.
+ - jstests/core/operation_latency_histogram.js
+ - jstests/core/geo_s2cursorlimitskip.js
+ # Having duplicate namespaces is not supported and will cause initial sync to fail.
+ - jstests/core/views/duplicate_ns.js
+ # These tests run getLatestProfilerEntry(). The downstream syncing node affects the profiler.
+ - jstests/core/profile_agg.js
+ - jstests/core/profile_count.js
+ - jstests/core/profile_delete.js
+ - jstests/core/profile_distinct.js
+ - jstests/core/profile_find.js
+ - jstests/core/profile_findandmodify.js
+ - jstests/core/profile_geonear.js
+ - jstests/core/profile_getmore.js
+ - jstests/core/profile_group.js
+ - jstests/core/profile_insert.js
+ - jstests/core/profile_update.js
+ # The downstream syncing node affects the top output.
+ - jstests/core/top.js
run_hook_interval: &run_hook_interval 20
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: BackgroundInitialSync
- use_resync: True
- n: *run_hook_interval
- - class: CleanEveryN
- n: *run_hook_interval
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- num_nodes: 2
- start_initial_sync_node: True
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: BackgroundInitialSync
+ use_resync: True
+ n: *run_hook_interval
+ - class: CleanEveryN
+ n: *run_hook_interval
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ num_nodes: 2
+ start_initial_sync_node: True
diff --git a/buildscripts/resmokeconfig/suites/replica_sets_resync_static_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/replica_sets_resync_static_jscore_passthrough.yml
index 86cb7bfc439..27726964c60 100644
--- a/buildscripts/resmokeconfig/suites/replica_sets_resync_static_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/replica_sets_resync_static_jscore_passthrough.yml
@@ -1,40 +1,40 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # These tests are not expected to pass with replica-sets:
- - jstests/core/dbadmin.js
- - jstests/core/opcounters_write_cmd.js
- - jstests/core/read_after_optime.js
- - jstests/core/capped_update.js
- # Having duplicate namespaces is not supported and will cause initial sync to fail.
- - jstests/core/views/duplicate_ns.js
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # These tests are not expected to pass with replica-sets:
+ - jstests/core/dbadmin.js
+ - jstests/core/opcounters_write_cmd.js
+ - jstests/core/read_after_optime.js
+ - jstests/core/capped_update.js
+ # Having duplicate namespaces is not supported and will cause initial sync to fail.
+ - jstests/core/views/duplicate_ns.js
run_hook_interval: &run_hook_interval 20
executor:
- js_test:
- config:
- shell_options:
- eval: "testingReplication = true;"
- readMode: commands
- hooks:
- - class: IntermediateInitialSync
- use_resync: True
- n: *run_hook_interval
- - class: CleanEveryN
- n: *run_hook_interval
- fixture:
- class: ReplicaSetFixture
- mongod_options:
- bind_ip_all: ''
- oplogSize: 511
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- numInitialSyncConnectAttempts: 60
- num_nodes: 2
- start_initial_sync_node: True
- replset_config_options:
- settings:
- chainingAllowed: False
+ config:
+ shell_options:
+ eval: "testingReplication = true;"
+ readMode: commands
+ hooks:
+ - class: IntermediateInitialSync
+ use_resync: True
+ n: *run_hook_interval
+ - class: CleanEveryN
+ n: *run_hook_interval
+ fixture:
+ class: ReplicaSetFixture
+ mongod_options:
+ bind_ip_all: ''
+ oplogSize: 511
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ numInitialSyncConnectAttempts: 60
+ num_nodes: 2
+ start_initial_sync_node: True
+ replset_config_options:
+ settings:
+ chainingAllowed: False
diff --git a/buildscripts/resmokeconfig/suites/rlp.yml b/buildscripts/resmokeconfig/suites/rlp.yml
index ef0dfeda45a..1d2f6c791eb 100644
--- a/buildscripts/resmokeconfig/suites/rlp.yml
+++ b/buildscripts/resmokeconfig/suites/rlp.yml
@@ -1,21 +1,21 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - src/mongo/db/modules/*/jstests/rlp/*.js
+ roots:
+ - src/mongo/db/modules/*/jstests/rlp/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- basisTechRootDirectory: /opt/basis
- set_parameters:
- enableTestCommands: 1
- rlpEnableExperimentalLanguagesForTesting: true
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ basisTechRootDirectory: /opt/basis
+ set_parameters:
+ enableTestCommands: 1
+ rlpEnableExperimentalLanguagesForTesting: true
diff --git a/buildscripts/resmokeconfig/suites/sasl.yml b/buildscripts/resmokeconfig/suites/sasl.yml
index 3333248da7c..5414a7a8ac3 100644
--- a/buildscripts/resmokeconfig/suites/sasl.yml
+++ b/buildscripts/resmokeconfig/suites/sasl.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - src/mongo/db/modules/*/jstests/sasl/*.js
+ roots:
+ - src/mongo/db/modules/*/jstests/sasl/*.js
# sasl tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/serial_run.yml b/buildscripts/resmokeconfig/suites/serial_run.yml
index 4ae010c7ec8..e1d1b623f57 100644
--- a/buildscripts/resmokeconfig/suites/serial_run.yml
+++ b/buildscripts/resmokeconfig/suites/serial_run.yml
@@ -1,19 +1,19 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/serial_run/*.js
+ roots:
+ - jstests/serial_run/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 1
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 1
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/sharded_collections_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/sharded_collections_jscore_passthrough.yml
index 26180c1d768..3dc3d38d6cc 100644
--- a/buildscripts/resmokeconfig/suites/sharded_collections_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/sharded_collections_jscore_passthrough.yml
@@ -1,106 +1,106 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # 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 # profiling.
- - jstests/core/apply_ops*.js # applyOps, SERVER-1439.
- - jstests/core/bypass_doc_validation.js # copyDatabase
- - jstests/core/capped*.js # capped collections.
- - 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/auth_copydb.js # copyDatabase.
- - jstests/core/copydb.js # copyDatabase.
- - jstests/core/dbadmin.js # "local" database.
- - jstests/core/dbhash.js # dbhash.
- - jstests/core/dbhash2.js # dbhash.
- - jstests/core/diagdata.js # Command not supported in mongos
- - jstests/core/dropdb_race.js # syncdelay.
- - jstests/core/evalb.js # profiling.
- - jstests/core/fsync.js # uses fsync.
- - jstests/core/geo_haystack*.js # geoSearch.
- - jstests/core/geo_s2cursorlimitskip.js # profiling.
- - jstests/core/geo_update_btree2.js # notablescan.
- - jstests/core/index_bigkeys_nofail.js # failIndexKeyTooLong.
- - jstests/core/index_bigkeys_validation.js # failIndexKeyTooLong.
- - jstests/core/max_time_ms.js # sleep, SERVER-2212.
- - jstests/core/mr_replaceIntoDB.js # MapReduceResult, SERVER-20495.
- - jstests/core/notablescan.js # notablescan.
- - jstests/core/profile*.js # profiling.
- - jstests/core/rename*.js # renameCollection.
- - jstests/core/repair_database.js # repairDatabase
- - jstests/core/repair_database_input_validation.js # repairDatabase
- - jstests/core/repair_server12955.js # repairDatabase
- - jstests/core/stages*.js # stageDebug.
- - jstests/core/startup_log.js # "local" database.
- - jstests/core/storageDetailsCommand.js # diskStorageStats.
- - 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.
- # TODO: SERVER-17284 remove once find cmd is implemented in mongos.
- - jstests/core/read_after_optime.js
- # TODO: SERVER-18292 remove once OP_COMMAND is implemented in mongos.
- - jstests/core/invalid_db_name.js
- - jstests/core/validate_cmd_ns.js
- # 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/collection_info_cache_race.js
- - jstests/core/create_indexes.js
- - jstests/core/indexOtherNamespace.js
- - jstests/core/list_indexes_non_existent_ns.js
- - jstests/core/rename6.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/ns_length.js
- - jstests/core/views/*.js # Views tests aren't expected to work when collections are implicitly sharded.
- - jstests/core/killop_drop_collection.js # Uses fsyncLock.
- # TODO: Remove after fixing SERVER-14324. mapReduce behaves unpredictably when the out
- # collection is sharded on anything other than {_id: 1}.
- - jstests/core/mr_undef.js
- # TODO: SERVER-16605
- - jstests/core/mr1.js
- - jstests/core/mr3.js
- - jstests/core/mr4.js
- exclude_with_any_tags:
- # 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
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # 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 # profiling.
+ - jstests/core/apply_ops*.js # applyOps, SERVER-1439.
+ - jstests/core/bypass_doc_validation.js # copyDatabase
+ - jstests/core/capped*.js # capped collections.
+ - 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/auth_copydb.js # copyDatabase.
+ - jstests/core/copydb.js # copyDatabase.
+ - jstests/core/dbadmin.js # "local" database.
+ - jstests/core/dbhash.js # dbhash.
+ - jstests/core/dbhash2.js # dbhash.
+ - jstests/core/diagdata.js # Command not supported in mongos
+ - jstests/core/dropdb_race.js # syncdelay.
+ - jstests/core/evalb.js # profiling.
+ - jstests/core/fsync.js # uses fsync.
+ - jstests/core/geo_haystack*.js # geoSearch.
+ - jstests/core/geo_s2cursorlimitskip.js # profiling.
+ - jstests/core/geo_update_btree2.js # notablescan.
+ - jstests/core/index_bigkeys_nofail.js # failIndexKeyTooLong.
+ - jstests/core/index_bigkeys_validation.js # failIndexKeyTooLong.
+ - jstests/core/max_time_ms.js # sleep, SERVER-2212.
+ - jstests/core/mr_replaceIntoDB.js # MapReduceResult, SERVER-20495.
+ - jstests/core/notablescan.js # notablescan.
+ - jstests/core/profile*.js # profiling.
+ - jstests/core/rename*.js # renameCollection.
+ - jstests/core/repair_database.js # repairDatabase
+ - jstests/core/repair_database_input_validation.js # repairDatabase
+ - jstests/core/repair_server12955.js # repairDatabase
+ - jstests/core/stages*.js # stageDebug.
+ - jstests/core/startup_log.js # "local" database.
+ - jstests/core/storageDetailsCommand.js # diskStorageStats.
+ - 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.
+ # TODO: SERVER-17284 remove once find cmd is implemented in mongos.
+ - jstests/core/read_after_optime.js
+ # TODO: SERVER-18292 remove once OP_COMMAND is implemented in mongos.
+ - jstests/core/invalid_db_name.js
+ - jstests/core/validate_cmd_ns.js
+ # 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/collection_info_cache_race.js
+ - jstests/core/create_indexes.js
+ - jstests/core/indexOtherNamespace.js
+ - jstests/core/list_indexes_non_existent_ns.js
+ - jstests/core/rename6.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/ns_length.js
+ - jstests/core/views/*.js # Views tests aren't expected to work when collections are implicitly sharded.
+ - jstests/core/killop_drop_collection.js # Uses fsyncLock.
+ # TODO: Remove after fixing SERVER-14324. mapReduce behaves unpredictably when the out
+ # collection is sharded on anything other than {_id: 1}.
+ - jstests/core/mr_undef.js
+ # TODO: SERVER-16605
+ - jstests/core/mr1.js
+ - jstests/core/mr3.js
+ - jstests/core/mr4.js
+ exclude_with_any_tags:
+ # 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
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js")
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: ShardedClusterFixture
- mongos_options:
- set_parameters:
- enableTestCommands: 1
- mongod_options:
- bind_ip_all: ''
- nopreallocj: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
+ config:
+ shell_options:
+ readMode: commands
+ eval: load("jstests/libs/override_methods/implicitly_shard_accessed_collections.js")
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ShardedClusterFixture
+ mongos_options:
+ set_parameters:
+ enableTestCommands: 1
+ mongod_options:
+ bind_ip_all: ''
+ nopreallocj: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
diff --git a/buildscripts/resmokeconfig/suites/sharding.yml b/buildscripts/resmokeconfig/suites/sharding.yml
index df402c2569e..423d61c6781 100644
--- a/buildscripts/resmokeconfig/suites/sharding.yml
+++ b/buildscripts/resmokeconfig/suites/sharding.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sharding/*.js
- exclude_files:
+ roots:
+ - jstests/sharding/*.js
+ exclude_files:
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/sharding_auth.yml b/buildscripts/resmokeconfig/suites/sharding_auth.yml
index 708366a7b37..beaa46b226f 100644
--- a/buildscripts/resmokeconfig/suites/sharding_auth.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_auth.yml
@@ -3,40 +3,40 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sharding/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/sharding/*[aA]uth*.js
- # Skip these additional tests when running with auth enabled.
- - jstests/sharding/copydb_from_mongos.js # SERVER-13080
- - jstests/sharding/parallel.js
- # Skip the testcases that do not have auth bypass when running ops in parallel.
- - jstests/sharding/cleanup_orphaned_cmd_during_movechunk.js # SERVER-21713
- - jstests/sharding/cleanup_orphaned_cmd_during_movechunk_hashed.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_1.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_2.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_3.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_4.js # SERVER-21713
- - jstests/sharding/migration_move_chunk_after_receive.js # SERVER-21713
- - jstests/sharding/migration_server_status.js # SERVER-21713
- - jstests/sharding/migration_sets_fromMigrate_flag.js # SERVER-21713
- - jstests/sharding/migration_with_source_ops.js # SERVER-21713
- - jstests/sharding/movechunk_interrupt_at_primary_stepdown.js # SERVER-21713
- - jstests/sharding/movechunk_parallel.js # SERVER-21713
- - jstests/sharding/migration_critical_section_concurrency.js # SERVER-21713
+ roots:
+ - jstests/sharding/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/sharding/*[aA]uth*.js
+ # Skip these additional tests when running with auth enabled.
+ - jstests/sharding/copydb_from_mongos.js # SERVER-13080
+ - jstests/sharding/parallel.js
+ # Skip the testcases that do not have auth bypass when running ops in parallel.
+ - jstests/sharding/cleanup_orphaned_cmd_during_movechunk.js # SERVER-21713
+ - jstests/sharding/cleanup_orphaned_cmd_during_movechunk_hashed.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_1.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_2.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_3.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_4.js # SERVER-21713
+ - jstests/sharding/migration_move_chunk_after_receive.js # SERVER-21713
+ - jstests/sharding/migration_server_status.js # SERVER-21713
+ - jstests/sharding/migration_sets_fromMigrate_flag.js # SERVER-21713
+ - jstests/sharding/migration_with_source_ops.js # SERVER-21713
+ - jstests/sharding/movechunk_interrupt_at_primary_stepdown.js # SERVER-21713
+ - jstests/sharding/movechunk_parallel.js # SERVER-21713
+ - jstests/sharding/migration_critical_section_concurrency.js # SERVER-21713
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/sharding_auth_audit.yml b/buildscripts/resmokeconfig/suites/sharding_auth_audit.yml
index 175fb4e8bae..c6713f0a088 100644
--- a/buildscripts/resmokeconfig/suites/sharding_auth_audit.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_auth_audit.yml
@@ -3,41 +3,41 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sharding/*.js
- exclude_files:
- # Skip any tests that run with auth explicitly.
- - jstests/sharding/*[aA]uth*.js
- # Skip these additional tests when running with auth enabled.
- - jstests/sharding/copydb_from_mongos.js # SERVER-13080
- - jstests/sharding/parallel.js
- # Skip the testcases that do not have auth bypass when running ops in parallel.
- - jstests/sharding/cleanup_orphaned_cmd_during_movechunk.js # SERVER-21713
- - jstests/sharding/cleanup_orphaned_cmd_during_movechunk_hashed.js # SERVER-21713
- - jstests/sharding/migration_with_source_ops.js # SERVER-21713
- - jstests/sharding/migration_sets_fromMigrate_flag.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_1.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_2.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_3.js # SERVER-21713
- - jstests/sharding/migration_ignore_interrupts_4.js # SERVER-21713
- - jstests/sharding/movechunk_interrupt_at_primary_stepdown.js # SERVER-21713
- - jstests/sharding/movechunk_parallel.js # SERVER-21713
- - jstests/sharding/migration_server_status.js # SERVER-21713
- - jstests/sharding/migration_move_chunk_after_receive.js # SERVER-21713
- - jstests/sharding/migration_critical_section_concurrency.js # SERVER-21713
+ roots:
+ - jstests/sharding/*.js
+ exclude_files:
+ # Skip any tests that run with auth explicitly.
+ - jstests/sharding/*[aA]uth*.js
+ # Skip these additional tests when running with auth enabled.
+ - jstests/sharding/copydb_from_mongos.js # SERVER-13080
+ - jstests/sharding/parallel.js
+ # Skip the testcases that do not have auth bypass when running ops in parallel.
+ - jstests/sharding/cleanup_orphaned_cmd_during_movechunk.js # SERVER-21713
+ - jstests/sharding/cleanup_orphaned_cmd_during_movechunk_hashed.js # SERVER-21713
+ - jstests/sharding/migration_with_source_ops.js # SERVER-21713
+ - jstests/sharding/migration_sets_fromMigrate_flag.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_1.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_2.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_3.js # SERVER-21713
+ - jstests/sharding/migration_ignore_interrupts_4.js # SERVER-21713
+ - jstests/sharding/movechunk_interrupt_at_primary_stepdown.js # SERVER-21713
+ - jstests/sharding/movechunk_parallel.js # SERVER-21713
+ - jstests/sharding/migration_server_status.js # SERVER-21713
+ - jstests/sharding/migration_move_chunk_after_receive.js # SERVER-21713
+ - jstests/sharding/migration_critical_section_concurrency.js # SERVER-21713
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auditDestination: 'console'
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auditDestination: 'console'
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/sharding_continuous_config_stepdown.yml b/buildscripts/resmokeconfig/suites/sharding_continuous_config_stepdown.yml
index ec2d3a1e5ab..30e0da2764a 100644
--- a/buildscripts/resmokeconfig/suites/sharding_continuous_config_stepdown.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_continuous_config_stepdown.yml
@@ -1,139 +1,139 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sharding/*.js
- exclude_files:
- # Auth tests require authentication on the stepdown thread's connection
- - jstests/sharding/auth*.js
- - jstests/sharding/cleanup_orphaned_auth.js
- - jstests/sharding/localhostAuthBypass.js
- - jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js
- - jstests/sharding/mrShardedOutputAuth.js
- # Count/write/aggregate/group commands against the config shard do not support retries yet
- - jstests/sharding/addshard1.js
- - jstests/sharding/addshard2.js
- - jstests/sharding/autosplit.js
- - jstests/sharding/auto_rebalance_parallel.js
- - jstests/sharding/auto_rebalance_parallel_replica_sets.js
- - jstests/sharding/autosplit_heuristics.js
- - jstests/sharding/basic_drop_coll.js
- - jstests/sharding/basic_merge.js
- - jstests/sharding/count1.js
- - jstests/sharding/count2.js
- - jstests/sharding/cursor1.js
- - jstests/sharding/diffservers1.js
- - jstests/sharding/disable_autosplit.js
- - jstests/sharding/drop_sharded_db.js
- - jstests/sharding/findandmodify1.js
- - jstests/sharding/findandmodify2.js
- - jstests/sharding/geo_shardedgeonear.js
- - jstests/sharding/hash_basic.js
- - jstests/sharding/hash_shard1.js
- - jstests/sharding/hash_shard_non_empty.js
- - jstests/sharding/hash_shard_num_chunks.js
- - jstests/sharding/hash_single_shard.js
- - jstests/sharding/key_many.js
- - jstests/sharding/key_string.js
- - jstests/sharding/large_chunk.js
- - jstests/sharding/limit_push.js
- - jstests/sharding/migrateBig_balancer.js
- - jstests/sharding/move_chunk_basic.js
- - jstests/sharding/movePrimary1.js
- - jstests/sharding/mrShardedOutput.js
- - jstests/sharding/names.js
- - jstests/sharding/prefix_shard_key.js
- - jstests/sharding/presplit.js
- - jstests/sharding/query_config.js
- - jstests/sharding/remove1.js
- - jstests/sharding/rename_across_mongos.js
- - jstests/sharding/shard1.js
- - jstests/sharding/shard2.js
- - jstests/sharding/shard3.js
- - jstests/sharding/shard_collection_basic.js
- - jstests/sharding/sharding_balance1.js
- - jstests/sharding/sharding_balance2.js
- - jstests/sharding/sharding_balance3.js
- - jstests/sharding/sharding_balance4.js
- - jstests/sharding/sharding_migrate_cursor1.js
- - jstests/sharding/tag_range.js
- - jstests/sharding/top_chunk_autosplit.js
- - jstests/sharding/count_config_servers.js
- - jstests/sharding/conf_server_write_concern_metadata.js
- - jstests/sharding/split_large_key.js
- - jstests/sharding/balancer_window.js
- # No retries on direct writes to the config/admin databases on the config servers
- - jstests/sharding/listDatabases.js
- - jstests/sharding/bulk_insert.js
- - jstests/sharding/printShardingStatus.js
- # Balancer writes (direct write to config database with no retries)
- - jstests/sharding/convert_to_and_from_sharded.js
- - jstests/sharding/remove2.js
- - jstests/sharding/autosplit_with_balancer.js
- - jstests/sharding/features3.js
- - jstests/sharding/in_memory_sort_limit.js
- - jstests/sharding/parallel.js
- - jstests/sharding/migrateBig.js
- - jstests/sharding/sharding_rs1.js
- # Calls the config server primary directly (not through mongos)
- - jstests/sharding/moveprimary_ignore_sharded.js
- - jstests/sharding/min_optime_recovery_on_successful_move_chunk_commit.js
- - jstests/sharding/read_after_optime.js
- - jstests/sharding/server_status.js
- - jstests/sharding/drop_configdb.js
- - jstests/sharding/shard_identity_config_update.js
- # Runs setShardVersion/getShardVersion against the config server and we don't support retries
- # for this command
- - jstests/sharding/major_version_check.js
- - jstests/sharding/ssv_config_check.js
- # Runs replSetGetStatus -- via awaitLastOpCommitted -- directly against the config server:
- # retries aren't supported.
- - jstests/sharding/coll_epoch_test1.js
- - jstests/sharding/move_stale_mongos.js
- - jstests/sharding/shard4.js
- - jstests/sharding/shard5.js
- - jstests/sharding/split_stale_mongos.js
- - jstests/sharding/stale_mongos_updates_and_removes.js
- - jstests/sharding/zero_shard_version.js
- # Already stop or blackholes the primary of the CSRS config shard
- - jstests/sharding/all_config_hosts_down.js
- - jstests/sharding/all_config_servers_blackholed_from_mongos.js
- - jstests/sharding/batch_write_command_sharded.js
- - jstests/sharding/config_rs_no_primary.js
- - jstests/sharding/config_version_rollback.js
- - jstests/sharding/startup_with_all_configs_down.js
- - jstests/sharding/lagged_config_secondary.js
- - jstests/sharding/autodiscover_config_rs_from_secondary.js
- - jstests/sharding/rs_stepdown_and_pooling.js
- - jstests/sharding/mongos_no_replica_set_refresh.js
- - jstests/sharding/movechunk_interrupt_at_primary_stepdown.js
- - jstests/sharding/primary_config_server_blackholed_from_mongos.js
- # Nothing is affected by config server step down
- - jstests/sharding/basic_sharding_params.js
- # ShardingTest is never used, so continuous step down thread never starts
- - jstests/sharding/config_rs_change.js
- - jstests/sharding/empty_cluster_init.js
- # Test runs really slow with the primary continuously stepping down
- - jstests/sharding/zbigMapReduce.js
- # Temporarily blacklisted until more robust
- - jstests/sharding/cleanup_orphaned_cmd_during_movechunk_hashed.js
- - jstests/sharding/cleanup_orphaned_cmd_during_movechunk.js
- # Expects same secondaries for entire test
- - jstests/sharding/commands_that_write_accept_wc_configRS.js
- - jstests/sharding/commands_that_write_accept_wc_shards.js
- - jstests/sharding/move_chunk_wc.js
- # Expects that connections to all shards/config servers will never close
- - jstests/sharding/shard6.js
- # Stepping down the primary can make the balancer rerun a migration that was designed to fail
- # earlier, but can potentially pass on the second try.
- - jstests/sharding/migration_ignore_interrupts_1.js
- # Stepping down the config can cause moveChunks stopped on shards via killOp to be restarted.
- - jstests/sharding/migration_ignore_interrupts_3.js
- - jstests/sharding/migration_ignore_interrupts_4.js
+ roots:
+ - jstests/sharding/*.js
+ exclude_files:
+ # Auth tests require authentication on the stepdown thread's connection
+ - jstests/sharding/auth*.js
+ - jstests/sharding/cleanup_orphaned_auth.js
+ - jstests/sharding/localhostAuthBypass.js
+ - jstests/sharding/mongos_rs_auth_shard_failure_tolerance.js
+ - jstests/sharding/mrShardedOutputAuth.js
+ # Count/write/aggregate/group commands against the config shard do not support retries yet
+ - jstests/sharding/addshard1.js
+ - jstests/sharding/addshard2.js
+ - jstests/sharding/autosplit.js
+ - jstests/sharding/auto_rebalance_parallel.js
+ - jstests/sharding/auto_rebalance_parallel_replica_sets.js
+ - jstests/sharding/autosplit_heuristics.js
+ - jstests/sharding/basic_drop_coll.js
+ - jstests/sharding/basic_merge.js
+ - jstests/sharding/count1.js
+ - jstests/sharding/count2.js
+ - jstests/sharding/cursor1.js
+ - jstests/sharding/diffservers1.js
+ - jstests/sharding/disable_autosplit.js
+ - jstests/sharding/drop_sharded_db.js
+ - jstests/sharding/findandmodify1.js
+ - jstests/sharding/findandmodify2.js
+ - jstests/sharding/geo_shardedgeonear.js
+ - jstests/sharding/hash_basic.js
+ - jstests/sharding/hash_shard1.js
+ - jstests/sharding/hash_shard_non_empty.js
+ - jstests/sharding/hash_shard_num_chunks.js
+ - jstests/sharding/hash_single_shard.js
+ - jstests/sharding/key_many.js
+ - jstests/sharding/key_string.js
+ - jstests/sharding/large_chunk.js
+ - jstests/sharding/limit_push.js
+ - jstests/sharding/migrateBig_balancer.js
+ - jstests/sharding/move_chunk_basic.js
+ - jstests/sharding/movePrimary1.js
+ - jstests/sharding/mrShardedOutput.js
+ - jstests/sharding/names.js
+ - jstests/sharding/prefix_shard_key.js
+ - jstests/sharding/presplit.js
+ - jstests/sharding/query_config.js
+ - jstests/sharding/remove1.js
+ - jstests/sharding/rename_across_mongos.js
+ - jstests/sharding/shard1.js
+ - jstests/sharding/shard2.js
+ - jstests/sharding/shard3.js
+ - jstests/sharding/shard_collection_basic.js
+ - jstests/sharding/sharding_balance1.js
+ - jstests/sharding/sharding_balance2.js
+ - jstests/sharding/sharding_balance3.js
+ - jstests/sharding/sharding_balance4.js
+ - jstests/sharding/sharding_migrate_cursor1.js
+ - jstests/sharding/tag_range.js
+ - jstests/sharding/top_chunk_autosplit.js
+ - jstests/sharding/count_config_servers.js
+ - jstests/sharding/conf_server_write_concern_metadata.js
+ - jstests/sharding/split_large_key.js
+ - jstests/sharding/balancer_window.js
+ # No retries on direct writes to the config/admin databases on the config servers
+ - jstests/sharding/listDatabases.js
+ - jstests/sharding/bulk_insert.js
+ - jstests/sharding/printShardingStatus.js
+ # Balancer writes (direct write to config database with no retries)
+ - jstests/sharding/convert_to_and_from_sharded.js
+ - jstests/sharding/remove2.js
+ - jstests/sharding/autosplit_with_balancer.js
+ - jstests/sharding/features3.js
+ - jstests/sharding/in_memory_sort_limit.js
+ - jstests/sharding/parallel.js
+ - jstests/sharding/migrateBig.js
+ - jstests/sharding/sharding_rs1.js
+ # Calls the config server primary directly (not through mongos)
+ - jstests/sharding/moveprimary_ignore_sharded.js
+ - jstests/sharding/min_optime_recovery_on_successful_move_chunk_commit.js
+ - jstests/sharding/read_after_optime.js
+ - jstests/sharding/server_status.js
+ - jstests/sharding/drop_configdb.js
+ - jstests/sharding/shard_identity_config_update.js
+ # Runs setShardVersion/getShardVersion against the config server and we don't support retries
+ # for this command
+ - jstests/sharding/major_version_check.js
+ - jstests/sharding/ssv_config_check.js
+ # Runs replSetGetStatus -- via awaitLastOpCommitted -- directly against the config server:
+ # retries aren't supported.
+ - jstests/sharding/coll_epoch_test1.js
+ - jstests/sharding/move_stale_mongos.js
+ - jstests/sharding/shard4.js
+ - jstests/sharding/shard5.js
+ - jstests/sharding/split_stale_mongos.js
+ - jstests/sharding/stale_mongos_updates_and_removes.js
+ - jstests/sharding/zero_shard_version.js
+ # Already stop or blackholes the primary of the CSRS config shard
+ - jstests/sharding/all_config_hosts_down.js
+ - jstests/sharding/all_config_servers_blackholed_from_mongos.js
+ - jstests/sharding/batch_write_command_sharded.js
+ - jstests/sharding/config_rs_no_primary.js
+ - jstests/sharding/config_version_rollback.js
+ - jstests/sharding/startup_with_all_configs_down.js
+ - jstests/sharding/lagged_config_secondary.js
+ - jstests/sharding/autodiscover_config_rs_from_secondary.js
+ - jstests/sharding/rs_stepdown_and_pooling.js
+ - jstests/sharding/mongos_no_replica_set_refresh.js
+ - jstests/sharding/movechunk_interrupt_at_primary_stepdown.js
+ - jstests/sharding/primary_config_server_blackholed_from_mongos.js
+ # Nothing is affected by config server step down
+ - jstests/sharding/basic_sharding_params.js
+ # ShardingTest is never used, so continuous step down thread never starts
+ - jstests/sharding/config_rs_change.js
+ - jstests/sharding/empty_cluster_init.js
+ # Test runs really slow with the primary continuously stepping down
+ - jstests/sharding/zbigMapReduce.js
+ # Temporarily blacklisted until more robust
+ - jstests/sharding/cleanup_orphaned_cmd_during_movechunk_hashed.js
+ - jstests/sharding/cleanup_orphaned_cmd_during_movechunk.js
+ # Expects same secondaries for entire test
+ - jstests/sharding/commands_that_write_accept_wc_configRS.js
+ - jstests/sharding/commands_that_write_accept_wc_shards.js
+ - jstests/sharding/move_chunk_wc.js
+ # Expects that connections to all shards/config servers will never close
+ - jstests/sharding/shard6.js
+ # Stepping down the primary can make the balancer rerun a migration that was designed to fail
+ # earlier, but can potentially pass on the second try.
+ - jstests/sharding/migration_ignore_interrupts_1.js
+ # Stepping down the config can cause moveChunks stopped on shards via killOp to be restarted.
+ - jstests/sharding/migration_ignore_interrupts_3.js
+ - jstests/sharding/migration_ignore_interrupts_4.js
executor:
- js_test:
- config:
- shell_options:
- eval: "load('jstests/libs/override_methods/sharding_continuous_config_stepdown.js');"
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ eval: "load('jstests/libs/override_methods/sharding_continuous_config_stepdown.js');"
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/sharding_ese.yml b/buildscripts/resmokeconfig/suites/sharding_ese.yml
index 90b493d0e02..228d25915c3 100644
--- a/buildscripts/resmokeconfig/suites/sharding_ese.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_ese.yml
@@ -2,19 +2,19 @@
config_variables:
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sharding/*.js
- exclude_files:
+ roots:
+ - jstests/sharding/*.js
+ exclude_files:
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- global_vars:
- TestData:
- enableEncryption: ''
- encryptionKeyFile: *keyFile
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ global_vars:
+ TestData:
+ enableEncryption: ''
+ encryptionKeyFile: *keyFile
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/sharding_gle_auth_basics_passthrough.yml b/buildscripts/resmokeconfig/suites/sharding_gle_auth_basics_passthrough.yml
index e8798af8f70..bfbf8b8e405 100644
--- a/buildscripts/resmokeconfig/suites/sharding_gle_auth_basics_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_gle_auth_basics_passthrough.yml
@@ -3,53 +3,53 @@ config_variables:
- &keyFile jstests/libs/authTestsKey
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/gle/core/*.js
- exclude_files:
- - jstests/gle/core/error1.js # The getPrevError command is not supported under sharding.
- - jstests/gle/core/remove5.js
- - jstests/gle/core/update4.js
+ roots:
+ - jstests/gle/core/*.js
+ exclude_files:
+ - jstests/gle/core/error1.js # The getPrevError command is not supported under sharding.
+ - jstests/gle/core/remove5.js
+ - jstests/gle/core/update4.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- auth: true
- authMechanism: SCRAM-SHA-1
- keyFile: *keyFile
- keyFileData: *keyFileData
- eval: jsTest.authenticate(db.getMongo())
- authenticationDatabase: admin
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
- readMode: commands
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ auth: true
+ authMechanism: SCRAM-SHA-1
+ keyFile: *keyFile
+ keyFileData: *keyFileData
+ eval: jsTest.authenticate(db.getMongo())
+ authenticationDatabase: admin
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
+ readMode: commands
- fixture:
- class: ShardedClusterFixture
- mongos_options:
- bind_ip_all: ''
- keyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
- enableLocalhostAuthBypass: false
- mongod_options:
- bind_ip_all: ''
- auth: ''
- keyFile: *keyFile
- set_parameters:
- enableTestCommands: 1
- enableLocalhostAuthBypass: false
- numInitialSyncAttempts: 1
- num_shards: 2
- enable_sharding:
- - test
- auth_options:
- authenticationDatabase: admin
- authenticationMechanism: SCRAM-SHA-1
- password: *keyFileData
- username: __system
+ fixture:
+ class: ShardedClusterFixture
+ mongos_options:
+ bind_ip_all: ''
+ keyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
+ enableLocalhostAuthBypass: false
+ mongod_options:
+ bind_ip_all: ''
+ auth: ''
+ keyFile: *keyFile
+ set_parameters:
+ enableTestCommands: 1
+ enableLocalhostAuthBypass: false
+ numInitialSyncAttempts: 1
+ num_shards: 2
+ enable_sharding:
+ - test
+ auth_options:
+ authenticationDatabase: admin
+ authenticationMechanism: SCRAM-SHA-1
+ password: *keyFileData
+ username: __system
diff --git a/buildscripts/resmokeconfig/suites/sharding_jscore_passthrough.yml b/buildscripts/resmokeconfig/suites/sharding_jscore_passthrough.yml
index 763ad6cc68c..d68c50f35f6 100644
--- a/buildscripts/resmokeconfig/suites/sharding_jscore_passthrough.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_jscore_passthrough.yml
@@ -1,77 +1,77 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/core/**/*.js
- exclude_files:
- # The following tests fail because a certain command or functionality is not supported on
- # mongos. This command or functionality is placed in a comment next to the failing test.
- - jstests/core/apitest_db.js # profiling.
- - jstests/core/apply_ops*.js # applyOps, SERVER-1439.
- - jstests/core/capped6.js # captrunc.
- - jstests/core/capped_convertToCapped1.js # cloneCollectionAsCapped.
- - jstests/core/capped_empty.js # emptycapped.
- - jstests/core/capped_update.js # uses godinsert and can't run under replication.
- - 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/dbadmin.js # "local" database.
- - jstests/core/dbhash.js # dbhash.
- - jstests/core/dbhash2.js # dbhash.
- - jstests/core/diagdata.js # Command not supported in mongos
- - jstests/core/dropdb_race.js # syncdelay.
- - jstests/core/evalb.js # profiling.
- - jstests/core/fsync.js # uses fsync.
- - jstests/core/geo_haystack*.js # geoSearch.
- - jstests/core/geo_s2cursorlimitskip.js # profiling.
- - jstests/core/geo_update_btree2.js # notablescan.
- - jstests/core/index_bigkeys_nofail.js # failIndexKeyTooLong.
- - jstests/core/index_bigkeys_validation.js # failIndexKeyTooLong.
- - jstests/core/max_time_ms.js # sleep, SERVER-2212.
- - jstests/core/notablescan.js # notablescan.
- - jstests/core/profile*.js # profiling.
- - jstests/core/repair_database.js # repairDatabase
- - jstests/core/repair_database_input_validation.js # repairDatabase
- - jstests/core/repair_server12955.js # repairDatabase
- - jstests/core/stages*.js # stageDebug.
- - jstests/core/startup_log.js # "local" database.
- - jstests/core/storageDetailsCommand.js # diskStorageStats.
- - 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.
- - 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.
- # TODO: SERVER-18292 remove once OP_COMMAND is implemented in mongos.
- - jstests/core/invalid_db_name.js
- - jstests/core/validate_cmd_ns.js
- - jstests/core/views/invalid_system_views.js # We expect listCollections to fail when there's an invalid view.
- # TODO: SERVER-27269: mongos can't establish cursor if view has $collStats and views another view.
- - jstests/core/views/views_coll_stats.js
- - jstests/core/killop_drop_collection.js # Uses fsyncLock.
+ roots:
+ - jstests/core/**/*.js
+ exclude_files:
+ # The following tests fail because a certain command or functionality is not supported on
+ # mongos. This command or functionality is placed in a comment next to the failing test.
+ - jstests/core/apitest_db.js # profiling.
+ - jstests/core/apply_ops*.js # applyOps, SERVER-1439.
+ - jstests/core/capped6.js # captrunc.
+ - jstests/core/capped_convertToCapped1.js # cloneCollectionAsCapped.
+ - jstests/core/capped_empty.js # emptycapped.
+ - jstests/core/capped_update.js # uses godinsert and can't run under replication.
+ - 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/dbadmin.js # "local" database.
+ - jstests/core/dbhash.js # dbhash.
+ - jstests/core/dbhash2.js # dbhash.
+ - jstests/core/diagdata.js # Command not supported in mongos
+ - jstests/core/dropdb_race.js # syncdelay.
+ - jstests/core/evalb.js # profiling.
+ - jstests/core/fsync.js # uses fsync.
+ - jstests/core/geo_haystack*.js # geoSearch.
+ - jstests/core/geo_s2cursorlimitskip.js # profiling.
+ - jstests/core/geo_update_btree2.js # notablescan.
+ - jstests/core/index_bigkeys_nofail.js # failIndexKeyTooLong.
+ - jstests/core/index_bigkeys_validation.js # failIndexKeyTooLong.
+ - jstests/core/max_time_ms.js # sleep, SERVER-2212.
+ - jstests/core/notablescan.js # notablescan.
+ - jstests/core/profile*.js # profiling.
+ - jstests/core/repair_database.js # repairDatabase
+ - jstests/core/repair_database_input_validation.js # repairDatabase
+ - jstests/core/repair_server12955.js # repairDatabase
+ - jstests/core/stages*.js # stageDebug.
+ - jstests/core/startup_log.js # "local" database.
+ - jstests/core/storageDetailsCommand.js # diskStorageStats.
+ - 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.
+ - 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.
+ # TODO: SERVER-18292 remove once OP_COMMAND is implemented in mongos.
+ - jstests/core/invalid_db_name.js
+ - jstests/core/validate_cmd_ns.js
+ - jstests/core/views/invalid_system_views.js # We expect listCollections to fail when there's an invalid view.
+ # TODO: SERVER-27269: mongos can't establish cursor if view has $collStats and views another view.
+ - jstests/core/views/views_coll_stats.js
+ - jstests/core/killop_drop_collection.js # Uses fsyncLock.
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: ShardedClusterFixture
- mongos_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- mongod_options:
- bind_ip_all: ''
- set_parameters:
- enableTestCommands: 1
- numInitialSyncAttempts: 1
- enable_sharding:
- - test
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: ShardedClusterFixture
+ mongos_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ mongod_options:
+ bind_ip_all: ''
+ set_parameters:
+ enableTestCommands: 1
+ numInitialSyncAttempts: 1
+ enable_sharding:
+ - test
diff --git a/buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml b/buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml
index 9c1905b9e61..1aca6af1d0c 100644
--- a/buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml
+++ b/buildscripts/resmokeconfig/suites/sharding_last_stable_mongos_and_mixed_shards.yml
@@ -1,42 +1,42 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sharding/*.js
- exclude_files:
- # Doesn't use ShardingTest so won't actually be run in a mixed version configuration
- - jstests/sharding/config_version_rollback.js
- # Behavior change to addShard
- - jstests/sharding/addshard_idempotent.js
- # SERVER-29066: Remove when 3.4.5 becomes 'last-stable'
- - jstests/sharding/findandmodify1.js
- # 3.6 mongods have improved covering behavior for queries on shard key index. Un-blacklist when
- # 3.6 becomes 'last-stable'.
- - jstests/sharding/covered_shard_key_indexes.js
- # Enable when 3.6 becomes last-stable.
- - jstests/sharding/views.js
- - jstests/sharding/view_rewrite.js
- - jstests/sharding/explain_agg_read_pref.js
- # New feature in v3.6 mongos
- - jstests/sharding/logical_time_metadata.js
- # New feature in v3.6 mongos and mongod.
- - jstests/sharding/logical_time_api.js
- - jstests/sharding/operation_time_api.js
- - jstests/sharding/auth_drop_user_while_logged_in.js
- # New feature in v3.6 mongo shell.
- - jstests/sharding/causal_consistency_shell_support.js
- # Changes to currentOp format in 3.6.
- - jstests/sharding/features3.js
- - jstests/sharding/migration_ignore_interrupts_3.js
- - jstests/sharding/migration_ignore_interrupts_4.js
- - jstests/sharding/mongos_query_comment.js
- - jstests/sharding/sharded_profile.js
+ roots:
+ - jstests/sharding/*.js
+ exclude_files:
+ # Doesn't use ShardingTest so won't actually be run in a mixed version configuration
+ - jstests/sharding/config_version_rollback.js
+ # Behavior change to addShard
+ - jstests/sharding/addshard_idempotent.js
+ # SERVER-29066: Remove when 3.4.5 becomes 'last-stable'
+ - jstests/sharding/findandmodify1.js
+ # 3.6 mongods have improved covering behavior for queries on shard key index. Un-blacklist when
+ # 3.6 becomes 'last-stable'.
+ - jstests/sharding/covered_shard_key_indexes.js
+ # Enable when 3.6 becomes last-stable.
+ - jstests/sharding/views.js
+ - jstests/sharding/view_rewrite.js
+ - jstests/sharding/explain_agg_read_pref.js
+ # New feature in v3.6 mongos
+ - jstests/sharding/logical_time_metadata.js
+ # New feature in v3.6 mongos and mongod.
+ - jstests/sharding/logical_time_api.js
+ - jstests/sharding/operation_time_api.js
+ - jstests/sharding/auth_drop_user_while_logged_in.js
+ # New feature in v3.6 mongo shell.
+ - jstests/sharding/causal_consistency_shell_support.js
+ # Changes to currentOp format in 3.6.
+ - jstests/sharding/features3.js
+ - jstests/sharding/migration_ignore_interrupts_3.js
+ - jstests/sharding/migration_ignore_interrupts_4.js
+ - jstests/sharding/mongos_query_comment.js
+ - jstests/sharding/sharded_profile.js
executor:
- js_test:
- config:
- shell_options:
- global_vars:
- TestData:
- mongosBinVersion: 'last-stable'
- shardMixedBinVersions: true
- nodb: ''
+ config:
+ shell_options:
+ global_vars:
+ TestData:
+ mongosBinVersion: 'last-stable'
+ shardMixedBinVersions: true
+ nodb: ''
diff --git a/buildscripts/resmokeconfig/suites/slow1.yml b/buildscripts/resmokeconfig/suites/slow1.yml
index 10c399ec9e5..954c708faa5 100644
--- a/buildscripts/resmokeconfig/suites/slow1.yml
+++ b/buildscripts/resmokeconfig/suites/slow1.yml
@@ -1,19 +1,19 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/slow1/*.js
+ roots:
+ - jstests/slow1/*.js
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- hooks:
- - class: ValidateCollections
- - class: CleanEveryN
- n: 20
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ hooks:
+ - class: ValidateCollections
+ - class: CleanEveryN
+ n: 20
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokeconfig/suites/snmp.yml b/buildscripts/resmokeconfig/suites/snmp.yml
index eb9003e15a4..a16076a6d10 100644
--- a/buildscripts/resmokeconfig/suites/snmp.yml
+++ b/buildscripts/resmokeconfig/suites/snmp.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - src/mongo/db/modules/*/jstests/snmp/*.js
+ roots:
+ - src/mongo/db/modules/*/jstests/snmp/*.js
# snmp tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/ssl.yml b/buildscripts/resmokeconfig/suites/ssl.yml
index 06fbd48aef5..fcf9a77738f 100644
--- a/buildscripts/resmokeconfig/suites/ssl.yml
+++ b/buildscripts/resmokeconfig/suites/ssl.yml
@@ -1,16 +1,16 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/ssl/*.js
+ roots:
+ - jstests/ssl/*.js
# ssl tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- ssl: ''
- sslAllowInvalidCertificates: ''
- sslCAFile: jstests/libs/ca.pem
- sslPEMKeyFile: jstests/libs/client.pem
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ ssl: ''
+ sslAllowInvalidCertificates: ''
+ sslCAFile: jstests/libs/ca.pem
+ sslPEMKeyFile: jstests/libs/client.pem
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/ssl_special.yml b/buildscripts/resmokeconfig/suites/ssl_special.yml
index 3f48f2d217a..28013dad8aa 100644
--- a/buildscripts/resmokeconfig/suites/ssl_special.yml
+++ b/buildscripts/resmokeconfig/suites/ssl_special.yml
@@ -1,12 +1,12 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/sslSpecial/*.js
+ roots:
+ - jstests/sslSpecial/*.js
# ssl tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/tool.yml b/buildscripts/resmokeconfig/suites/tool.yml
index f8b341278db..b96b42d0c9a 100644
--- a/buildscripts/resmokeconfig/suites/tool.yml
+++ b/buildscripts/resmokeconfig/suites/tool.yml
@@ -1,17 +1,17 @@
+test_kind: js_test
+
selector:
- js_test:
- roots:
- - jstests/tool/*.js
- exclude_files:
- # Skip until TOOLS-1371 is resolved.
- - jstests/tool/dumprestore_auth.js
- - jstests/tool/dumprestore_auth2.js
- - jstests/tool/dumprestore_auth3.js
+ roots:
+ - jstests/tool/*.js
+ exclude_files:
+ # Skip until TOOLS-1371 is resolved.
+ - jstests/tool/dumprestore_auth.js
+ - jstests/tool/dumprestore_auth2.js
+ - jstests/tool/dumprestore_auth3.js
# Tool tests start their own mongod's.
executor:
- js_test:
- config:
- shell_options:
- nodb: ''
- readMode: commands
+ config:
+ shell_options:
+ nodb: ''
+ readMode: commands
diff --git a/buildscripts/resmokeconfig/suites/unittests.yml b/buildscripts/resmokeconfig/suites/unittests.yml
index c8a259fe19a..5bf28525966 100644
--- a/buildscripts/resmokeconfig/suites/unittests.yml
+++ b/buildscripts/resmokeconfig/suites/unittests.yml
@@ -1,7 +1,7 @@
+test_kind: cpp_unit_test
+
selector:
- cpp_unit_test:
- root: build/unittests.txt
+ root: build/unittests.txt
executor:
- cpp_unit_test:
- config: {}
+ config: {}
diff --git a/buildscripts/resmokeconfig/suites/unittests_auth.yml b/buildscripts/resmokeconfig/suites/unittests_auth.yml
index de3ccbb98cf..86dde627fa4 100644
--- a/buildscripts/resmokeconfig/suites/unittests_auth.yml
+++ b/buildscripts/resmokeconfig/suites/unittests_auth.yml
@@ -1,9 +1,9 @@
+test_kind: cpp_unit_test
+
selector:
- cpp_unit_test:
- root: build/unittests.txt
- include_files:
- - build/**/auth/*
+ root: build/unittests.txt
+ include_files:
+ - build/**/auth/*
executor:
- cpp_unit_test:
- config: {}
+ config: {}
diff --git a/buildscripts/resmokeconfig/suites/unittests_client.yml b/buildscripts/resmokeconfig/suites/unittests_client.yml
index 108aa0d8619..bb1abdad1d6 100644
--- a/buildscripts/resmokeconfig/suites/unittests_client.yml
+++ b/buildscripts/resmokeconfig/suites/unittests_client.yml
@@ -1,9 +1,9 @@
+test_kind: cpp_unit_test
+
selector:
- cpp_unit_test:
- root: build/unittests.txt
- include_files:
- - build/**/mongo/client/*
+ root: build/unittests.txt
+ include_files:
+ - build/**/mongo/client/*
executor:
- cpp_unit_test:
- config: {}
+ config: {}
diff --git a/buildscripts/resmokeconfig/suites/unittests_query.yml b/buildscripts/resmokeconfig/suites/unittests_query.yml
index 13e2a3889cb..c544098ca93 100644
--- a/buildscripts/resmokeconfig/suites/unittests_query.yml
+++ b/buildscripts/resmokeconfig/suites/unittests_query.yml
@@ -1,9 +1,9 @@
+test_kind: cpp_unit_test
+
selector:
- cpp_unit_test:
- root: build/unittests.txt
- include_files:
- - build/**/query/*
+ root: build/unittests.txt
+ include_files:
+ - build/**/query/*
executor:
- cpp_unit_test:
- config: {}
+ config: {}
diff --git a/buildscripts/resmokeconfig/suites/unittests_repl.yml b/buildscripts/resmokeconfig/suites/unittests_repl.yml
index c51718b17b6..eec4d109114 100644
--- a/buildscripts/resmokeconfig/suites/unittests_repl.yml
+++ b/buildscripts/resmokeconfig/suites/unittests_repl.yml
@@ -1,9 +1,9 @@
+test_kind: cpp_unit_test
+
selector:
- cpp_unit_test:
- root: build/unittests.txt
- include_files:
- - build/**/repl/*
+ root: build/unittests.txt
+ include_files:
+ - build/**/repl/*
executor:
- cpp_unit_test:
- config: {}
+ config: {}
diff --git a/buildscripts/resmokeconfig/suites/unittests_sharding.yml b/buildscripts/resmokeconfig/suites/unittests_sharding.yml
index 6b275f41544..19b6f20f04c 100644
--- a/buildscripts/resmokeconfig/suites/unittests_sharding.yml
+++ b/buildscripts/resmokeconfig/suites/unittests_sharding.yml
@@ -1,9 +1,9 @@
+test_kind: cpp_unit_test
+
selector:
- cpp_unit_test:
- root: build/unittests.txt
- include_files:
- - build/**/s/**/*
+ root: build/unittests.txt
+ include_files:
+ - build/**/s/**/*
executor:
- cpp_unit_test:
- config: {}
+ config: {}
diff --git a/buildscripts/resmokeconfig/suites/with_server.yml b/buildscripts/resmokeconfig/suites/with_server.yml
index 28347632778..a384ddb9055 100644
--- a/buildscripts/resmokeconfig/suites/with_server.yml
+++ b/buildscripts/resmokeconfig/suites/with_server.yml
@@ -1,10 +1,11 @@
+test_kind: js_test
+
executor:
- js_test:
- config:
- shell_options:
- readMode: commands
- fixture:
- class: MongoDFixture
- mongod_options:
- set_parameters:
- enableTestCommands: 1
+ config:
+ shell_options:
+ readMode: commands
+ fixture:
+ class: MongoDFixture
+ mongod_options:
+ set_parameters:
+ enableTestCommands: 1
diff --git a/buildscripts/resmokelib/parser.py b/buildscripts/resmokelib/parser.py
index 0bdaf4782af..91dbe9bf3f9 100644
--- a/buildscripts/resmokelib/parser.py
+++ b/buildscripts/resmokelib/parser.py
@@ -305,11 +305,10 @@ def create_test_membership_map(fail_on_missing_selector=False):
continue
raise
- for group in suite.test_groups:
- for testfile in group.tests:
- if isinstance(testfile, dict):
- continue
- test_membership[testfile].append(suite_name)
+ for testfile in suite.test_group.tests:
+ if isinstance(testfile, dict):
+ continue
+ test_membership[testfile].append(suite_name)
return test_membership
@@ -319,17 +318,21 @@ def get_suites(values, args):
_config.INTERNAL_EXECUTOR_NAME = values.executor_file
- # If there are no suites specified, but there are args, assume they are jstests.
+ # If there are no suites specified, but args, collect the specified files.
if args:
- # Do not change the execution order of the jstests passed as args, unless a tag option is
+ # Do not change the execution order of the tests passed as args, unless a tag option is
# specified. If an option is specified, then sort the tests for consistent execution order.
_config.ORDER_TESTS_BY_NAME = any(tag_filter is not None for
tag_filter in (_config.EXCLUDE_WITH_ANY_TAGS,
_config.INCLUDE_WITH_ANY_TAGS))
# No specified config, just use the following, and default the logging and executor.
- suite_config = _make_jstests_config(args)
+ suite_config = _make_config(args)
_ensure_executor(suite_config, values.executor_file)
- suite = testing.suite.Suite("<jstests>", suite_config)
+ # The test_kind comes from the executor file.
+ _ensure_test_kind(suite_config,
+ _get_yaml_config("executor", values.executor_file),
+ values.executor_file)
+ suite = testing.suite.Suite("<%s>" % suite_config["test_kind"], suite_config)
return [suite]
suite_files = values.suite_files.split(",")
@@ -390,41 +393,37 @@ def _get_suite_config(pathname):
Attempts to read a YAML configuration from 'pathname' that describes
what tests to run and how to run them.
"""
+ return _get_yaml_config("suite", pathname)
+
+
+def _make_config(files):
+ return {"selector": {"roots": files}}
+
+
+def _ensure_test_kind(suite_config, yaml_config, yaml_file):
+ if "test_kind" not in yaml_config:
+ raise ValueError("YAML config file %s missing key 'test_kind'" % (yaml_file))
+ suite_config["test_kind"] = yaml_config["test_kind"]
+
- # Named suites are specified as the basename of the file, without the .yml extension.
+def _get_yaml_config(kind, pathname):
+ # Named executors or suites are specified as the basename of the file, without the .yml
+ # extension.
if not utils.is_yaml_file(pathname) and not os.path.dirname(pathname):
if pathname not in resmokeconfig.NAMED_SUITES:
- raise optparse.OptionValueError("Unknown suite '%s'" % (pathname))
+ raise optparse.OptionValueError("Unknown %s '%s'" % (kind, pathname))
pathname = resmokeconfig.NAMED_SUITES[pathname] # Expand 'pathname' to full path.
if not utils.is_yaml_file(pathname) or not os.path.isfile(pathname):
- raise optparse.OptionValueError("Expected a suite YAML config, but got '%s'" % (pathname))
-
+ raise optparse.OptionValueError("Expected a %s YAML config, but got '%s'"
+ % (kind, pathname))
return utils.load_yaml_file(pathname)
-def _make_jstests_config(js_files):
- for pathname in js_files:
- if not utils.is_js_file(pathname) or not os.path.isfile(pathname):
- raise optparse.OptionValueError("Expected a list of JS files, but got '%s'"
- % (pathname))
-
- return {"selector": {"js_test": {"roots": js_files}}}
-
-
-def _ensure_executor(suite_config, executor_pathname):
+def _ensure_executor(suite_config, pathname):
if "executor" not in suite_config:
# Named executors are specified as the basename of the file, without the .yml extension.
- if not utils.is_yaml_file(executor_pathname) and not os.path.dirname(executor_pathname):
- if executor_pathname not in resmokeconfig.NAMED_SUITES:
- raise optparse.OptionValueError("Unknown executor '%s'" % (executor_pathname))
- executor_pathname = resmokeconfig.NAMED_SUITES[executor_pathname]
-
- if not utils.is_yaml_file(executor_pathname) or not os.path.isfile(executor_pathname):
- raise optparse.OptionValueError("Expected an executor YAML config, but got '%s'"
- % (executor_pathname))
-
- suite_config["executor"] = utils.load_yaml_file(executor_pathname).pop("executor")
+ suite_config["executor"] = _get_yaml_config("executor", pathname).pop("executor")
def _expand_user(pathname):
diff --git a/buildscripts/resmokelib/reportfile.py b/buildscripts/resmokelib/reportfile.py
index 7bf288069e2..716f90d8cae 100644
--- a/buildscripts/resmokelib/reportfile.py
+++ b/buildscripts/resmokelib/reportfile.py
@@ -21,8 +21,7 @@ def write(suites):
reports = []
for suite in suites:
- for group in suite.test_groups:
- reports.extend(group.get_reports())
+ reports.extend(suite.test_group.get_reports())
combined_report_dict = _report.TestReport.combine(*reports).as_dict()
with open(config.REPORT_FILE, "w") as fp:
diff --git a/buildscripts/resmokelib/selector.py b/buildscripts/resmokelib/selector.py
index 30cc2d1b31d..ce1cf7ecbfd 100644
--- a/buildscripts/resmokelib/selector.py
+++ b/buildscripts/resmokelib/selector.py
@@ -88,27 +88,38 @@ def _filter_cpp_tests(kind, root, include_files, exclude_files):
def filter_cpp_unit_tests(root=config.DEFAULT_UNIT_TEST_LIST,
+ roots=None,
include_files=None,
exclude_files=None):
"""
Filters out what C++ unit tests to run.
"""
+ # 'roots' is provided only if a file list is given from the command line.
+ if roots is not None:
+ return roots
return _filter_cpp_tests("C++ unit test", root, include_files, exclude_files)
def filter_cpp_integration_tests(root=config.DEFAULT_INTEGRATION_TEST_LIST,
+ roots=None,
include_files=None,
exclude_files=None):
"""
Filters out what C++ integration tests to run.
"""
+ # 'roots' is provided only if a file list is given from the command line.
+ if roots is not None:
+ return roots
return _filter_cpp_tests("C++ integration test", root, include_files, exclude_files)
-def filter_dbtests(binary=None, include_suites=None):
+def filter_dbtests(binary=None, roots=None, include_suites=None):
"""
Filters out what dbtests to run.
"""
+ # 'roots' is provided only if a file list is given from the command line.
+ if roots is not None:
+ return roots
# TODO: SERVER-22170 Implement full tagging support
# If --includeWithAnyTags is supplied, then no tests should be run since
diff --git a/buildscripts/resmokelib/testing/suite.py b/buildscripts/resmokelib/testing/suite.py
index 11777c0e12f..dbaef7edfdd 100644
--- a/buildscripts/resmokelib/testing/suite.py
+++ b/buildscripts/resmokelib/testing/suite.py
@@ -17,8 +17,6 @@ class Suite(object):
A suite of tests.
"""
- TESTS_ORDER = ("cpp_unit_test", "cpp_integration_test", "db_test", "js_test", "mongos_test")
-
def __init__(self, suite_name, suite_config):
"""
Initializes the suite with the specified name and configuration.
@@ -27,13 +25,9 @@ class Suite(object):
self._suite_name = suite_name
self._suite_config = suite_config
- self.test_groups = []
- for test_kind in Suite.TESTS_ORDER:
- if test_kind not in suite_config["selector"]:
- continue
- tests = self._get_tests_for_group(test_kind)
- test_group = testgroup.TestGroup(test_kind, tests)
- self.test_groups.append(test_group)
+ test_kind = self.get_test_kind_config()
+ tests = self._get_tests_for_group(test_kind)
+ self.test_group = testgroup.TestGroup(test_kind, tests)
self.return_code = None
@@ -46,7 +40,7 @@ class Suite(object):
filtering policy.
"""
- test_info = self.get_selector_config()[test_kind]
+ test_info = self.get_selector_config()
# The mongos_test doesn't have to filter anything, the test_info is just the arguments to
# the mongos program to be used as the test case.
@@ -86,6 +80,12 @@ class Suite(object):
"""
return self._suite_config["executor"]
+ def get_test_kind_config(self):
+ """
+ Returns the "test_kind" section of the YAML configuration.
+ """
+ return self._suite_config["test_kind"]
+
def record_start(self):
"""
Records the start time of the suite.
@@ -105,28 +105,19 @@ class Suite(object):
# Only set 'return_code' if it hasn't been set already. It may have been set if there was
# an exception that happened during the execution of the suite.
if self.return_code is None:
- # The return code of the suite should be 2 if any test group has a return code of 2.
- # The return code of the suite should be 1 if any test group has a return code of 1,
- # and none have a return code of 2. Otherwise, the return code should be 0.
- self.return_code = max(test_group.return_code for test_group in self.test_groups)
+ self.return_code = self.test_group.return_code
def summarize(self, sb):
"""
- Appends a summary of each individual test group onto the string
- builder 'sb'.
+ Appends a summary of the test group onto the string builder 'sb'.
"""
- combined_summary = _summary.Summary(0, 0.0, 0, 0, 0, 0)
-
- summarized_groups = []
- for group in self.test_groups:
- group_sb = []
- summary = group.summarize(group_sb)
- summarized_groups.append(" %ss: %s" % (group.test_kind, "\n ".join(group_sb)))
+ summary = _summary.Summary(0, 0.0, 0, 0, 0, 0)
- combined_summary = _summary.combine(combined_summary, summary)
+ summary = self.test_group.summarize(sb)
+ summarized_group = " %ss: %s" % (self.test_group.test_kind, "\n ".join(sb))
- if combined_summary.num_run == 0:
+ if summary.num_run == 0:
sb.append("Suite did not run any tests.")
return
@@ -134,10 +125,9 @@ class Suite(object):
# information available.
if self._start_time is not None and self._end_time is not None:
time_taken = self._end_time - self._start_time
- combined_summary = combined_summary._replace(time_taken=time_taken)
+ summary = summary._replace(time_taken=time_taken)
sb.append("%d test(s) ran in %0.2f seconds"
- " (%d succeeded, %d were skipped, %d failed, %d errored)" % combined_summary)
+ " (%d succeeded, %d were skipped, %d failed, %d errored)" % summary)
- for summary_text in summarized_groups:
- sb.append(summary_text)
+ sb.append(summarized_group)