Skip to content

Commit bc85e30

Browse files
jordistEvergreen Agent
authored andcommitted
SERVER-83240 Create aggregation passthrough suite with unsharded collections placed on random shards
1 parent 1b6505d commit bc85e30

File tree

4 files changed

+84
-3
lines changed

4 files changed

+84
-3
lines changed
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
test_kind: js_test
2+
3+
selector:
4+
roots:
5+
- jstests/aggregation/**/*.js
6+
exclude_files:
7+
- jstests/aggregation/extras/*.js
8+
- jstests/aggregation/data/*.js
9+
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
10+
- jstests/aggregation/match_swapping_renamed_fields.js
11+
- jstests/aggregation/use_query_project_and_sort.js
12+
- jstests/aggregation/use_query_projection.js
13+
- jstests/aggregation/use_query_sort.js
14+
15+
# TODO: SERVER-83220 (Failing due to incorrect pushdown of $lookup for non-collocated collections).
16+
# Reenable:
17+
- jstests/aggregation/sources/facet/inner_lookup.js
18+
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_inlj.js
19+
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_nlj.js
20+
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_hj.js
21+
- jstests/aggregation/sources/lookup/lookup_collation.js
22+
- jstests/aggregation/sources/lookup/lookup_foreign_collation.js
23+
- jstests/aggregation/dbref.js
24+
25+
# TODO: SERVER-83351 (failing due to incorrect explain expectations). Reenable:
26+
- jstests/aggregation/explain_writing_aggs.js
27+
- jstests/aggregation/sources/unionWith/unionWith_explain.js
28+
- jstests/aggregation/sources/indexStats/verify_index_stats_output.js
29+
- jstests/aggregation/sources/lookup/lookup_single_solution_cache.js
30+
- jstests/aggregation/spill_to_disk.js
31+
32+
# TODO: SERVER-83443 Reenable:
33+
- jstests/aggregation/sources/lookup/lookup_contains_text.js
34+
35+
exclude_with_any_tags:
36+
- assumes_against_mongod_not_mongos
37+
- assumes_no_implicit_index_creation
38+
- cannot_create_unique_index_when_using_hashed_shard_key
39+
- requires_profiling
40+
41+
# This passthrough implicitly creates the accessed collections. Do not run tests where collections
42+
# can't be created on `getCollection` call. (TODO SERVER-83396 Remove this).
43+
- assumes_no_implicit_collection_creation_on_get_collection
44+
- assumes_no_implicit_collection_creation_after_drop
45+
46+
executor:
47+
archive:
48+
hooks:
49+
- CheckReplDBHash
50+
- CheckMetadataConsistencyInBackground
51+
- ValidateCollections
52+
config:
53+
shell_options:
54+
eval: await import("jstests/libs/override_methods/implicitly_create_unsplittable_collections_on_random_shards.js")
55+
hooks:
56+
- class: CheckReplDBHash
57+
- class: CheckMetadataConsistencyInBackground
58+
- class: ValidateCollections
59+
- class: CheckOrphansDeleted
60+
- class: CleanEveryN
61+
n: 20
62+
fixture:
63+
class: ShardedClusterFixture
64+
num_shards: 2
65+
mongos_options:
66+
set_parameters:
67+
enableTestCommands: 1
68+
mongod_options:
69+
set_parameters:
70+
enableTestCommands: 1

etc/evergreen_yml_components/definitions.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5524,6 +5524,16 @@ tasks:
55245524
- func: "do setup"
55255525
- func: "run tests"
55265526

5527+
- <<: *gen_task_template
5528+
name: aggregation_unsplittable_collections_on_random_shard_passthrough
5529+
# TODO SERVER-83445 Enable on non-all-feature-flag variants.
5530+
tags: ["unsplittable_collections"]
5531+
depends_on:
5532+
- name: aggregation
5533+
commands:
5534+
- func: "do setup"
5535+
- func: "run tests"
5536+
55275537
- <<: *task_template
55285538
name: aggregation_column_store_index_passthrough
55295539
# TODO SERVER-75026 Remove the 'feature_flag_guarded' tag and ensure this suite is run on all
@@ -6462,6 +6472,7 @@ tasks:
64626472

64636473
- <<: *gen_task_template
64646474
name: unsplittable_collections_created_on_any_shard_jscore_passthrough_gen
6475+
# TODO SERVER-83445 Enable on non-all-feature-flag variants.
64656476
tags: ["unsplittable_collections"]
64666477
commands:
64676478
- func: "generate resmoke tasks"

jstests/aggregation/accumulators/internal_js_reduce_with_scope.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
//
44
// Do not run in sharded passthroughs since 'runtimeConstants' is disallowed on mongos.
55
// @tags: [
6-
// assumes_unsharded_collection,
6+
// assumes_against_mongod_not_mongos,
77
// requires_scripting,
88
// ]
99
import {resultsEq} from "jstests/aggregation/extras/utils.js";
@@ -47,4 +47,4 @@ const expectedResults = [
4747
];
4848

4949
const res = assert.commandWorked(db.runCommand(command));
50-
assert(resultsEq(res.cursor.firstBatch, expectedResults, res.cursor));
50+
assert(resultsEq(res.cursor.firstBatch, expectedResults, res.cursor));

jstests/aggregation/expressions/internal_js_emit_with_scope.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
//
44
// Do not run in sharded passthroughs since 'runtimeConstants' is disallowed on mongos.
55
// @tags: [
6-
// assumes_unsharded_collection,
6+
// assumes_against_mongod_not_mongos,
77
// requires_scripting,
88
// ]
99
import {resultsEq} from "jstests/aggregation/extras/utils.js";

0 commit comments

Comments
 (0)