summaryrefslogtreecommitdiff
path: root/buildscripts/resmokeconfig/suites/replica_sets_reconfig_jscore_passthrough.yml
blob: 9baa473f3e46d95fdeeeadc8dc01fde61f2f0142 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
test_kind: js_test
# This suite starts a 5-node replica set and uses DoReconfigInBackground hook to periodically run
# safe reconfigs against the primary. These reconfigs change the number of voting nodes in the
# replica set, which changes the voting majority used to satisfy the config commitment check and
# oplog commitment check.

selector:
  roots:
  - jstests/core/**/*.js
  - jstests/fle2/**/*.js
  - src/mongo/db/modules/*/jstests/fle2/**/*.js
  exclude_files:
  # Transactions do not support retryability of individual operations.
  # TODO: Remove this once it is supported (SERVER-33952).
  - jstests/core/txns/**/*.js
  # The set_param1.js test attempts to compare the response from running the {getParameter: "*"}
  # command multiple times, which may observe the change to the "transactionLifetimeLimitSeconds"
  # server parameter.
  - jstests/core/**/set_param1.js

  # These test run commands using legacy queries, which are not supported on sessions.
  - jstests/core/**/comment_field.js
  - jstests/core/**/exhaust.js

  # Unacknowledged writes prohibited in an explicit session.
  - jstests/core/**/batch_write_command_w0.js
  - jstests/core/**/crud_api.js

  - jstests/core/**/connection_string_validation.js # Does not expect a replica set connection string.

  # TODO: SERVER-71487 Legacy shell does not carry over encryption information through
  # getMores in reconfig suites.
  - src/mongo/db/modules/*/jstests/fle2/query/*getMore*.js

  exclude_with_any_tags:
  - assumes_standalone_mongod
  - assumes_read_preference_unchanged
  - requires_sharding

executor:
  archive:
    hooks:
      - CheckReplDBHash
      - CheckReplOplogs
      - ValidateCollections
  config:
    shell_options:
      eval: >-
        testingReplication = true;
        load('jstests/libs/override_methods/network_error_and_txn_override.js');
        load("jstests/libs/override_methods/enable_sessions.js");
      global_vars:
        TestData:
          networkErrorAndTxnOverrideConfig:
            backgroundReconfigs: true
          sessionOptions:
            # Force DBClientRS to find the primary for non-write commands to make sure reads still
            # work as expected during reconfigs.
            readPreference:
              mode: "primary"
  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: DoReconfigInBackground
    shell_options:
      nodb: ""
  - class: CheckReplOplogs
  - class: CheckReplDBHash
  - class: ValidateCollections
  - class: CleanEveryN
    n: 20
  fixture:
    class: ReplicaSetFixture
    mongod_options:
      enableMajorityReadConcern: ''
      set_parameters:
        enableTestCommands: 1
        logComponentVerbosity:
          replication:
            heartbeats: 2
    all_nodes_electable: true
    num_nodes: 5