# This test suite exercises core, generic transactions behavior. The tests in this suite, pulled # from 'jstests/core/txns', should be "topology agnostic". They ideally generalize to single replica # sets and sharded clusters. test_kind: js_test selector: roots: - jstests/core/txns/**/*.js exclude_files: # Profile can only be run against the admin database on mongos. - jstests/core/txns/transactions_profiling.js - jstests/core/txns/transactions_profiling_with_drops.js # Implicitly creates a database through a collection rename, which does not work in a sharded # cluster. - jstests/core/txns/transactions_block_ddl.js # transactionLifetimeLimitSeconds parameter is not available in mongos. - jstests/core/txns/abort_expired_transaction.js - jstests/core/txns/abort_transaction_thread_does_not_block_on_locks.js - jstests/core/txns/kill_op_on_txn_expiry.js # Uses hangAfterCollectionInserts failpoint not available on mongos. - jstests/core/txns/speculative_snapshot_includes_all_writes.js exclude_with_any_tags: - assumes_against_mongod_not_mongos # Transactions are not allowed to operate on capped collections. - requires_capped # Prepare is not a command on mongos. - uses_prepare_transaction executor: archive: hooks: - ValidateCollections config: shell_options: eval: "testingReplication = true;" 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