test_kind: js_test selector: roots: - jstests/change_streams/**/*.js exclude_files: # Expects oplog entries to be in $v:2 format. - jstests/change_streams/pipeline_style_updates_v2_oplog_entries.js exclude_with_any_tags: ## # The next tags correspond to the special errors thrown by the # set_read_and_write_concerns.js override when it refuses to replace the readConcern or # writeConcern of a particular command. Above each tag are the message(s) that cause the tag to be # warranted. ## # "Cowardly refusing to override write concern of command: ..." - assumes_write_concern_unchanged executor: archive: hooks: - CheckReplDBHash - CheckReplOplogs - ValidateCollections config: shell_options: global_vars: TestData: defaultReadConcernLevel: null enableMajorityReadConcern: '' # Enable causal consistency for change streams suites. Some tests rely on the assumption that # a w:majority write will be visible immediately in a subsequently opened change stream. An # operation that majority commits at timestamp T will force the majority snapshot to advance # to T, but the oplog visibility point may not have advanced to T yet. Subsequent majority # snapshot reads will see this write in the oplog, but speculative majority reads may not, # since they read from a local snapshot and are bound to the oplog visibility rules. Using # causal consistency forces the visibility point to advance to the timestamp of the last write # before doing a new read. eval: >- var testingReplication = true; load('jstests/libs/override_methods/set_read_and_write_concerns.js'); load('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js'); hooks: # The CheckReplDBHash hook waits until all operations have replicated to and have been applied # on the secondaries, so we run the ValidateCollections hook after it to ensure we're # validating the entire contents of the collection. - class: CheckReplOplogs - class: CheckReplDBHash - class: ValidateCollections - class: CleanEveryN n: 20 fixture: class: ReplicaSetFixture mongod_options: bind_ip_all: '' set_parameters: enableTestCommands: 1 internalQueryEnableLoggingV2OplogEntries: false num_nodes: 2