diff options
author | Jack Mulrow <jack.mulrow@mongodb.com> | 2018-11-02 14:45:56 -0400 |
---|---|---|
committer | Jack Mulrow <jack.mulrow@mongodb.com> | 2018-11-06 12:15:11 -0500 |
commit | c0f43e12c3cb6382421b9d08d12adcae12dfcbe5 (patch) | |
tree | 2a38c49b74c316dfeaef4ffdd54fc4c0bc645dd8 | |
parent | 36d4668e854d8bd17e8b684dbbf42b3b0903bbe7 (diff) | |
download | mongo-c0f43e12c3cb6382421b9d08d12adcae12dfcbe5.tar.gz |
SERVER-37878 Run causally_consistent_jscore_txns_passthrough against unsharded collections
-rw-r--r-- | buildscripts/resmokeconfig/suites/sharded_causally_consistent_jscore_txns_passthrough.yml | 82 | ||||
-rw-r--r-- | etc/evergreen.yml | 42 |
2 files changed, 124 insertions, 0 deletions
diff --git a/buildscripts/resmokeconfig/suites/sharded_causally_consistent_jscore_txns_passthrough.yml b/buildscripts/resmokeconfig/suites/sharded_causally_consistent_jscore_txns_passthrough.yml new file mode 100644 index 00000000000..6934729f9d9 --- /dev/null +++ b/buildscripts/resmokeconfig/suites/sharded_causally_consistent_jscore_txns_passthrough.yml @@ -0,0 +1,82 @@ +# This suite tests the core transactions functionality with causal consistency enabled on the +# session. The purpose of this passthrough is to ensure that enabling causal consistency has no +# effect on this core functionality when run against unsharded collections in a sharded cluster. + +test_kind: js_test +selector: + roots: + - jstests/core/txns/**/*.js + exclude_files: + # Profile can only be run against the admin database on mongos. + - jstests/core/txns/transactions_profiling.js + - jstests/core/txns/transactions_profiling_with_drops.js + + # No featureCompatibilityVersion parameter on mongos. + - jstests/core/txns/abort_transactions_on_FCV_downgrade.js + + # Mongos doesn't upconvert from local or majority level readConcern to snapshot. + - jstests/core/txns/upconvert_read_concern.js + + # Implicitly creates a database through a collection rename, which does not work in a sharded + # cluster. + - jstests/core/txns/transactions_block_ddl.js + + # TODO SERVER-36124: maxTimeMS doesn't work for insert on mongos. + - jstests/core/txns/write_conflicts_with_non_txns.js + + # TODO SERVER-36120: No doTxn command on mongos. + - jstests/core/txns/do_txn_atomicity.js + - jstests/core/txns/do_txn_basic.js + + # TODO SERVER-36121: Set the transactionLifetimeLimitSeconds parameter, which is not on mongos. + - jstests/core/txns/abort_expired_transaction.js + - jstests/core/txns/abort_transaction_thread_does_not_block_on_locks.js + - jstests/core/txns/kill_op_on_txn_expiry.js + + # Writes to the local database are not allowed through mongos. + # TODO SERVER-28756: Mongos CSRS write retry logic drops txnNumbers. + - jstests/core/txns/banned_txn_dbs.js + + # TODO SERVER-36260: Mongos should reject commands with txnNumbers that aren't allowed in a + # transaction. + # TODO SERVER-33709: Support readConcern snapshot in cluster count command. + - jstests/core/txns/commands_not_allowed_in_txn.js + + # TODO SERVER-35825: Mongos should only allow readConcern on writes that start transactions. + - jstests/core/txns/no_read_concern_snapshot_outside_txn.js + + # Uses hangAfterCollectionInserts failpoint not available on mongos. + - jstests/core/txns/speculative_snapshot_includes_all_writes.js + + # Does not use the transactions shell helpers so afterClusterTime read concern is incorrectly + # attached to statements in a transaction beyond the first one. + - jstests/core/txns/non_transactional_operations_on_session_with_transaction.js + exclude_with_any_tags: + # Prepare is not a command on mongos. + - uses_prepare_transaction +executor: + archive: + hooks: + - ValidateCollections + config: + shell_options: + eval: >- + var testingReplication = true; + load('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js'); + readMode: commands + hooks: + # We don't execute dbHash or oplog consistency checks since there is only a single replica set + # node. + - class: ValidateCollections + - class: CleanEveryN + n: 20 + fixture: + class: ShardedClusterFixture + mongos_options: + set_parameters: + enableTestCommands: 1 + mongod_options: + set_parameters: + enableTestCommands: 1 + numInitialSyncAttempts: 1 + num_rs_nodes_per_shard: 1 diff --git a/etc/evergreen.yml b/etc/evergreen.yml index 802585de1de..bc87613245e 100644 --- a/etc/evergreen.yml +++ b/etc/evergreen.yml @@ -5708,6 +5708,15 @@ tasks: run_multiple_jobs: true - <<: *task_template + name: sharded_causally_consistent_jscore_txns_passthrough + commands: + - func: "do setup" + - func: "run tests" + vars: + resmoke_args: --suites=sharded_causally_consistent_jscore_txns_passthrough --storageEngine=wiredTiger + run_multiple_jobs: true + +- <<: *task_template name: replica_sets_jscore_passthrough depends_on: - name: jsCore @@ -8591,6 +8600,7 @@ buildvariants: - name: sharding_auth - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -8775,6 +8785,7 @@ buildvariants: - name: serial_run - name: session_jscore_passthrough - name: sharded_causally_consistent_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_0 @@ -9006,6 +9017,7 @@ buildvariants: - name: sharding_last_stable_mongos_and_mixed_shards - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: ssl @@ -9099,6 +9111,7 @@ buildvariants: - name: sharding_auth - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: ssl @@ -9363,6 +9376,7 @@ buildvariants: - name: sharding_last_stable_mongos_and_mixed_shards - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: ssl @@ -9451,6 +9465,7 @@ buildvariants: - name: sharding_auth - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: ssl @@ -9575,6 +9590,7 @@ buildvariants: - name: sharding_auth - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: ssl @@ -9672,6 +9688,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -9764,6 +9781,7 @@ buildvariants: - name: sharding_ese - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -9863,6 +9881,7 @@ buildvariants: - name: sharding_last_stable_mongos_and_mixed_shards - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -9947,6 +9966,7 @@ buildvariants: - name: sharding_ese - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -10050,6 +10070,7 @@ buildvariants: - name: sharding_last_stable_mongos_and_mixed_shards - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -10322,6 +10343,7 @@ buildvariants: - name: replica_sets_ese_misc - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_auth_0 distros: @@ -10652,6 +10674,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_auth distros: @@ -10764,6 +10787,7 @@ buildvariants: - name: replica_sets - name: replica_sets_jscore_passthrough - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -10923,6 +10947,7 @@ buildvariants: - name: rollback_fuzzer_unclean_shutdowns - name: serial_run - name: session_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_gle_auth_basics_passthrough @@ -11748,6 +11773,7 @@ buildvariants: - rhel62-large - name: sasl - name: session_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_0 @@ -12764,6 +12790,7 @@ buildvariants: - name: retryable_writes_jscore_passthrough - name: sasl - name: session_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -12994,6 +13021,7 @@ buildvariants: - name: sharding_auth - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: sharding_last_stable_mongos_and_mixed_shards @@ -13097,6 +13125,7 @@ buildvariants: - name: replica_sets - name: replica_sets_auth - name: replica_sets_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding - name: sharding_auth @@ -13203,6 +13232,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -13316,6 +13346,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -13422,6 +13453,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -13818,6 +13850,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -13928,6 +13961,7 @@ buildvariants: - name: sharding_last_stable_mongos_and_mixed_shards - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough - name: ssl @@ -14246,6 +14280,7 @@ buildvariants: - name: sharding_last_stable_mongos_and_mixed_shards - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -14387,6 +14422,7 @@ buildvariants: - name: rollback_fuzzer - name: sasl - name: session_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_core_txns - name: sharded_collections_jscore_passthrough - name: sharding @@ -14727,6 +14763,7 @@ buildvariants: - name: sharding_op_query - name: slow1 - name: serial_run + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding_jscore_passthrough @@ -14803,6 +14840,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -14905,6 +14943,7 @@ buildvariants: - name: replica_sets_auth - name: replica_sets_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -15058,6 +15097,7 @@ buildvariants: - name: retryable_writes_jscore_stepdown_passthrough - name: sasl - name: session_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -15245,6 +15285,7 @@ buildvariants: - name: retryable_writes_jscore_stepdown_passthrough - name: sasl - name: session_jscore_passthrough + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding @@ -15390,6 +15431,7 @@ buildvariants: - name: replica_sets_initsync_static_jscore_passthrough - name: replica_sets_kill_secondaries_jscore_passthrough - name: sasl + - name: sharded_causally_consistent_jscore_txns_passthrough - name: sharded_collections_jscore_passthrough - name: sharded_core_txns - name: sharding |