summaryrefslogtreecommitdiff
path: root/buildscripts/resmokeconfig/suites/causally_consistent_jscore_passthrough.yml
blob: 3b3a9832ea5cf4f8adcefcd23f9c00d66bd439ca (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
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
test_kind: js_test

selector:
  roots:
  - jstests/core/**/*.js
  exclude_files:
  # The following tests fail because a certain command or functionality is not supported on
  # mongos. This command or functionality is placed in a comment next to the failing test.
  - jstests/core/apitest_db.js  # profiling.
  - jstests/core/apply_ops*.js  # applyOps, SERVER-1439.
  - jstests/core/capped6.js  # captrunc.
  - jstests/core/capped_convertToCapped1.js  # cloneCollectionAsCapped.
  - jstests/core/capped_empty.js  # emptycapped.
  - jstests/core/capped_update.js # uses godinsert and can't run under replication.
  - jstests/core/check_shard_index.js  # checkShardingIndex.
  - jstests/core/collection_truncate.js  # emptycapped.
  - jstests/core/compact_keeps_indexes.js  # compact.
  - jstests/core/currentop.js  # uses fsync.
  - jstests/core/dbadmin.js  # "local" database.
  - jstests/core/dbhash.js  # dbhash.
  - jstests/core/dbhash2.js  # dbhash.
  - jstests/core/diagdata.js # Command not supported in mongos
  - jstests/core/dropdb_race.js  # syncdelay.
  - jstests/core/evalb.js  # db.eval() and profiling.
  - jstests/core/fsync.js  # uses fsync.
  - jstests/core/geo_haystack*.js  # geoSearch.
  - jstests/core/geo_s2cursorlimitskip.js  # db.eval() and profiling.
  - jstests/core/geo_update_btree2.js  # notablescan.
  - jstests/core/index_bigkeys_nofail.js  # failIndexKeyTooLong.
  - jstests/core/index_bigkeys_validation.js  # failIndexKeyTooLong.
  - jstests/core/max_time_ms.js  # sleep, SERVER-2212.
  - jstests/core/notablescan.js  # notablescan.
  - jstests/core/profile*.js  # profiling.
  - jstests/core/repair_database.js # repairDatabase
  - jstests/core/repair_database_input_validation.js # repairDatabase
  - jstests/core/repair_server12955.js # repairDatabase
  - jstests/core/stages*.js  # stageDebug.
  - jstests/core/startup_log.js  # "local" database.
  - jstests/core/storageDetailsCommand.js  # diskStorageStats.
  - jstests/core/top.js  # top.
  # The following tests fail because mongos behaves differently from mongod when testing certain
  # functionality. The differences are in a comment next to the failing test.
  - jstests/core/explain_missing_database.js  # Behavior with no db different on mongos.
  - jstests/core/geo_2d_explain.js  # executionSuccess in different spot in explain().
  - jstests/core/geo_s2explain.js  # inputStage in different spot in explain().
  - jstests/core/geo_s2sparse.js  # keysPerIndex in different spot in validate().
  - jstests/core/operation_latency_histogram.js  # Stats are counted differently on mongos, SERVER-24880.
  # TODO: SERVER-27269: mongos can't establish cursor if view has $collStats and views another view.
  - jstests/core/views/views_coll_stats.js
  - jstests/core/killop_drop_collection.js # Uses fsyncLock.
  # 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/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/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/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/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/stages_delete.js # Uses stageDebug command for deletes.
  # Tests that fail for Causal Consistency as they have statements that do not support
  # non-local read concern.
  - jstests/core/geo_mapreduce.js
  - jstests/core/geo_mapreduce2.js
  - jstests/core/geo_big_polygon3.js
  - jstests/core/mr*.js
  - jstests/core/profile_mapreduce.js
  - jstests/core/collation.js
  - jstests/core/loadserverscripts.js
  - jstests/core/bypass_doc_validation.js
  - jstests/core/capped_max1.js
  - jstests/core/commands_namespace_parsing.js
  - jstests/core/tailable_skip_limit.js
  - jstests/core/constructors.js
  - jstests/core/index_stats.js
  - jstests/core/views/views_all_commands.js
  - jstests/core/or4.js
  - jstests/core/recursion.js
  - jstests/core/temp_cleanup.js
  # Tests that fail for Causal Consistency with default injected readPreference 'secondary'
  # "TODO SERVER-30384: These tests assume that documents are returned in the same order they are
  # written when no sort is specified; however, the order of documents within a collection can
  # be different across a primary and secondary."
  - jstests/core/coveredIndex1.js
  - jstests/core/distinct1.js
  - jstests/core/elemMatchProjection.js
  - jstests/core/find1.js
  - jstests/core/find4.js
  - jstests/core/find5.js
  - jstests/core/fts1.js
  - jstests/core/find_dedup.js
  - jstests/core/fts_spanish.js
  - jstests/core/geo_distinct.js
  - jstests/core/geo_s2ordering.js
  - jstests/core/group1.js
  - jstests/core/group2.js
  - jstests/core/maxscan.js
  - jstests/core/nan.js
  - jstests/core/null2.js
  - jstests/core/not2.js
  - jstests/core/snapshot_queries.js
  - jstests/core/sorta.js
  - jstests/core/sortc.js
  - jstests/core/sort3.js
  - jstests/core/sort4.js
  - jstests/core/ord.js
  # plan_cache tests does not work because they check the plan_cache on the primary while the 
  # cache is created on the secondary.
  - jstests/core/plan_cache*.js 
  - jstests/core/collation_plan_cache.js
  - jstests/core/index_filter_commands.js
  # Parallel shell is not causally consistent
  - jstests/core/count10.js
  - jstests/core/cursora.js
  - jstests/core/count_plan_summary.js
  - jstests/core/shellstartparallel.js
  # TODO SERVER-30466
  - jstests/core/index_partial_read_ops.js
  - jstests/core/update_arrayFilters.js
  # TODO: SERVER-30488
  - jstests/core/apitest_dbcollection.js 
  - jstests/core/getmore_invalidated_cursors.js
  - jstests/core/system_profile.js
  - jstests/core/views/views_stats.js
  - jstests/core/orf.js #explain.executionStats is not CC
  - jstests/core/rename7.js
  # TODO: SERVER-30582
  - jstests/core/agg_hint.js
  - jstests/core/explain_agg_write_concern.js
  - jstests/core/explain_missing_collection.js
  - jstests/core/explain_shell_helpers.js
  - jstests/core/sort_array.js
  - jstests/core/views/views_aggregation.js
  - jstests/core/views/views_distinct.js
  - jstests/core/views/views_count.js
  - jstests/core/views/views_find.js
  # TODO: SERVER-30582
  - jstests/core/explain_multi_plan.js
  - jstests/core/list_local_sessions.js # SERVER-29628 needs MongoSOnly support
  - jstests/core/list_all_local_sessions.js # SERVER-29628 needs MongoSOnly support

executor:
  config:
    shell_options:
      eval: load("jstests/libs/override_methods/enable_causal_consistency.js")
      readMode: commands
  hooks:
  - class: ValidateCollections
  - class: CleanEveryN
    n: 20
  fixture:
    class: ShardedClusterFixture
    mongos_options:
      bind_ip_all: ''
      set_parameters:
        enableTestCommands: 1
        logComponentVerbosity:
          verbosity: 0
          command: 1
          network:
            verbosity: 1
            asio: 2
          tracking: 0
    mongod_options:
      bind_ip_all: ''
      nopreallocj: ''
      enableMajorityReadConcern: ''
      set_parameters:
        enableTestCommands: 1
        logComponentVerbosity:
          verbosity: 0
          command: 1
          network:
            verbosity: 1
            asio: 2
          replication:
            heartbeats: 2
          tracking: 0
        numInitialSyncAttempts: 1
    num_rs_nodes_per_shard: 2
    enable_sharding:
    - test