diff options
author | Spencer T Brody <spencer@mongodb.com> | 2016-10-24 18:12:42 -0400 |
---|---|---|
committer | Spencer T Brody <spencer@mongodb.com> | 2016-10-25 18:37:42 -0400 |
commit | 3349bcb22aef6036a48d2696c6cb2802395622a7 (patch) | |
tree | 3de0049bcc5b9c00f0854a8eebe956b78a041fe0 /buildscripts/resmokeconfig | |
parent | 11b7bdd825b610dec627ceaf5ef5afaa374e559e (diff) | |
download | mongo-3349bcb22aef6036a48d2696c6cb2802395622a7.tar.gz |
SERVER-26754 Allow readConcern majority reads with protocol version 0
Diffstat (limited to 'buildscripts/resmokeconfig')
3 files changed, 132 insertions, 3 deletions
diff --git a/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough_pv0.yml b/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough_pv0.yml new file mode 100644 index 00000000000..c2303389783 --- /dev/null +++ b/buildscripts/resmokeconfig/suites/aggregation_read_concern_majority_passthrough_pv0.yml @@ -0,0 +1,39 @@ +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. + +executor: + js_test: + config: + shell_options: + global_vars: + TestData: + enableMajorityReadConcern: '' + eval: "var testingReplication = true; load('jstests/libs/override_methods/set_majority_read_and_write_concerns.js');" + readMode: commands + hooks: + - class: ValidateCollections + - class: CheckReplOplogs + - class: CheckReplDBHash + fixture: + class: ReplicaSetFixture + mongod_options: + enableMajorityReadConcern: '' + set_parameters: + enableTestCommands: 1 + numInitialSyncAttempts: 1 + num_nodes: 2 + replset_config_options: + protocolVersion: 0 + # 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_concern_majority_passthrough_pv0.yml b/buildscripts/resmokeconfig/suites/read_concern_majority_passthrough_pv0.yml new file mode 100644 index 00000000000..33b578c73fe --- /dev/null +++ b/buildscripts/resmokeconfig/suites/read_concern_majority_passthrough_pv0.yml @@ -0,0 +1,93 @@ +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/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_mapreduce.js # system.profile not replicated + - jstests/core/profile_update.js # system.profile not replicated + - 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/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/convert_to_capped_nonexistant.js # Uses convertToCapped and captrunc command. + - jstests/core/stages_delete.js # Uses stageDebug command for deletes. + +executor: + js_test: + config: + shell_options: + eval: "var testingReplication = true; load('jstests/libs/override_methods/set_majority_read_and_write_concerns.js');" + readMode: commands + hooks: + - class: ValidateCollections + - class: CheckReplOplogs + - class: CheckReplDBHash + - class: CleanEveryN + n: 20 + fixture: + class: ReplicaSetFixture + mongod_options: + 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 + replset_config_options: + protocolVersion: 0 diff --git a/buildscripts/resmokeconfig/suites/replica_sets_legacy.yml b/buildscripts/resmokeconfig/suites/replica_sets_legacy.yml index e1c96106cc9..8803dc88e12 100644 --- a/buildscripts/resmokeconfig/suites/replica_sets_legacy.yml +++ b/buildscripts/resmokeconfig/suites/replica_sets_legacy.yml @@ -7,15 +7,12 @@ selector: - 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 |