SERVER-120023 Add bazel targets for release-critical, query resmoke suites (#48597)
GitOrigin-RevId: 0dd010a1ffb8b12b826201462e4c01bee5aa70a2
This commit is contained in:
@@ -36,8 +36,8 @@ executor:
|
||||
matrix_suite: true
|
||||
selector:
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/accumulators/accumulator_js_size_limits.js
|
||||
- jstests/aggregation/exec/query_limits_test.js
|
||||
- jstests/aggregation/sources/geonear/geonear_hint.js
|
||||
|
||||
@@ -39,8 +39,8 @@ executor:
|
||||
matrix_suite: true
|
||||
selector:
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/accumulators/accumulator_js_size_limits.js
|
||||
- jstests/aggregation/exec/query_limits_test.js
|
||||
- jstests/aggregation/sources/geonear/geonear_hint.js
|
||||
|
||||
@@ -42,15 +42,15 @@ executor:
|
||||
matrix_suite: true
|
||||
selector:
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/exec/spill_to_disk.js
|
||||
- jstests/aggregation/optimization/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/optimization/use_query_sort.js
|
||||
- jstests/aggregation/optimization/use_query_project_and_sort.js
|
||||
- jstests/aggregation/optimization/use_query_projection.js
|
||||
- jstests/aggregation/optimization/use_query_sort.js
|
||||
- jstests/aggregation/sources/group/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
- jstests/aggregation/sources/group/groupMissing.js
|
||||
- jstests/aggregation/accumulators/accumulator_js_size_limits.js
|
||||
- jstests/aggregation/exec/query_limits_test.js
|
||||
- jstests/aggregation/sources/geonear/geonear_hint.js
|
||||
|
||||
@@ -44,15 +44,15 @@ executor:
|
||||
matrix_suite: true
|
||||
selector:
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/exec/spill_to_disk.js
|
||||
- jstests/aggregation/optimization/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/optimization/use_query_sort.js
|
||||
- jstests/aggregation/optimization/use_query_project_and_sort.js
|
||||
- jstests/aggregation/optimization/use_query_projection.js
|
||||
- jstests/aggregation/optimization/use_query_sort.js
|
||||
- jstests/aggregation/sources/group/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
- jstests/aggregation/sources/group/groupMissing.js
|
||||
- jstests/aggregation/accumulators/accumulator_js_size_limits.js
|
||||
- jstests/aggregation/exec/query_limits_test.js
|
||||
- jstests/aggregation/sources/geonear/geonear_hint.js
|
||||
|
||||
@@ -43,8 +43,8 @@ executor:
|
||||
matrix_suite: true
|
||||
selector:
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/sources/geonear/geonear_hint.js
|
||||
- jstests/aggregation/sources/lookup/lookup_query_stats.js
|
||||
- jstests/aggregation/sources/unionWith/unionWith_query_stats.js
|
||||
|
||||
@@ -43,8 +43,8 @@ executor:
|
||||
matrix_suite: true
|
||||
selector:
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/sources/geonear/geonear_hint.js
|
||||
- jstests/aggregation/sources/lookup/lookup_query_stats.js
|
||||
- jstests/aggregation/sources/unionWith/unionWith_query_stats.js
|
||||
|
||||
@@ -3,11 +3,7 @@ description: |
|
||||
This suite runs the tests in the aggregation sub-directory against a standalone mongod fixture.
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
from_target: //jstests/suites/query:aggregation
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
||||
@@ -11,11 +11,7 @@ config_variables:
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
from_target: //jstests/suites/query:aggregation_auth
|
||||
|
||||
executor:
|
||||
config:
|
||||
|
||||
@@ -1,28 +1,7 @@
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# This test specifies a $out stage not as the last stage in the aggregation pipeline, causing a
|
||||
# non-local readConcern to erroneously be sent with the command.
|
||||
- jstests/aggregation/sources/out/required_last_position.js
|
||||
# These tests fail due to the inability to specify a writeConcern when secondaryThrottle is not
|
||||
# set as part of the moveChunk command.
|
||||
- jstests/aggregation/sources/facet/use_cases.js
|
||||
exclude_with_any_tags:
|
||||
##
|
||||
# The next three 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 read concern of command: ..."
|
||||
- assumes_read_concern_unchanged
|
||||
# "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
from_target: //jstests/suites/query:aggregation_read_concern_majority_passthrough
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
||||
@@ -1,34 +1,7 @@
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# This test makes assertions about whether aggregations will need to spill to disk, which assumes
|
||||
# all the data is located on a single shard.
|
||||
- jstests/aggregation/exec/spill_to_disk.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/optimization/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/optimization/use_query_project_and_sort.js
|
||||
- jstests/aggregation/optimization/use_query_projection.js
|
||||
- jstests/aggregation/optimization/use_query_sort.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/sources/group/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
exclude_with_any_tags:
|
||||
# This passthrough implicitly shards the accessed collections. Do not run tests where collections
|
||||
# can't be created on `getCollection` call.
|
||||
- assumes_no_implicit_collection_creation_on_get_collection
|
||||
# Tests tagged with the following will fail because they assume collections are not sharded.
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
- requires_sharding
|
||||
- requires_profiling
|
||||
from_target: //jstests/suites/query:aggregation_sharded_collections_passthrough
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
||||
@@ -121,6 +121,7 @@ tasks:
|
||||
"release_critical",
|
||||
"aggregation",
|
||||
"common",
|
||||
"has_bazel_target",
|
||||
]
|
||||
commands:
|
||||
- func: "do setup"
|
||||
@@ -137,6 +138,7 @@ tasks:
|
||||
"aggregation",
|
||||
"auth",
|
||||
"common",
|
||||
"has_bazel_target",
|
||||
]
|
||||
commands:
|
||||
- func: "do setup"
|
||||
@@ -309,6 +311,7 @@ tasks:
|
||||
"aggregation",
|
||||
"read_write_concern",
|
||||
"requires_large_host",
|
||||
"has_bazel_target",
|
||||
]
|
||||
commands:
|
||||
- func: "do setup"
|
||||
@@ -357,6 +360,7 @@ tasks:
|
||||
"common",
|
||||
"sharded",
|
||||
"requires_large_host",
|
||||
"has_bazel_target",
|
||||
]
|
||||
commands:
|
||||
- func: "do setup"
|
||||
|
||||
157
jstests/suites/query/BUILD.bazel
Normal file
157
jstests/suites/query/BUILD.bazel
Normal file
@@ -0,0 +1,157 @@
|
||||
load("//bazel/resmoke:resmoke.bzl", "resmoke_suite_test")
|
||||
|
||||
resmoke_suite_test(
|
||||
name = "aggregation",
|
||||
srcs = ["//jstests/aggregation:all_subpackage_javascript_files"],
|
||||
config = "//buildscripts/resmokeconfig:suites/aggregation.yml",
|
||||
data = [
|
||||
"//jstests/with_mongot/e2e_lib",
|
||||
],
|
||||
exclude_files = [
|
||||
"//jstests/aggregation/data:all_javascript_files",
|
||||
"//jstests/aggregation/extras:all_javascript_files",
|
||||
],
|
||||
shard_count = 4,
|
||||
tags = [
|
||||
"aggregation",
|
||||
"ci-release-critical",
|
||||
"common",
|
||||
],
|
||||
deps = [
|
||||
"//src/mongo/db:mongod",
|
||||
"//src/mongo/shell:mongo",
|
||||
],
|
||||
)
|
||||
|
||||
resmoke_suite_test(
|
||||
name = "aggregation_auth",
|
||||
srcs = ["//jstests/aggregation:all_subpackage_javascript_files"],
|
||||
config = "//buildscripts/resmokeconfig:suites/aggregation_auth.yml",
|
||||
data = [
|
||||
"//jstests/libs:authTestsKey",
|
||||
"//jstests/with_mongot/e2e_lib",
|
||||
],
|
||||
exclude_files = [
|
||||
"//jstests/aggregation/extras:all_javascript_files",
|
||||
"//jstests/aggregation/data:all_javascript_files",
|
||||
],
|
||||
shard_count = 4,
|
||||
tags = [
|
||||
"aggregation",
|
||||
"auth",
|
||||
"ci-release-critical",
|
||||
"common",
|
||||
],
|
||||
target_compatible_with = select({
|
||||
"@platforms//os:macos": ["@platforms//:incompatible"],
|
||||
"@platforms//os:windows": ["@platforms//:incompatible"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
deps = [
|
||||
"//src/mongo/db:mongod",
|
||||
"//src/mongo/shell:mongo",
|
||||
],
|
||||
)
|
||||
|
||||
resmoke_suite_test(
|
||||
name = "aggregation_read_concern_majority_passthrough",
|
||||
srcs = ["//jstests/aggregation:all_subpackage_javascript_files"],
|
||||
config = "//buildscripts/resmokeconfig:suites/aggregation_read_concern_majority_passthrough.yml",
|
||||
data = [
|
||||
"//jstests/with_mongot/e2e_lib",
|
||||
],
|
||||
exclude_files = [
|
||||
"//jstests/aggregation/data:all_javascript_files",
|
||||
"//jstests/aggregation/extras:all_javascript_files",
|
||||
|
||||
# This test fails due to the inability to specify a writeConcern when secondaryThrottle is not
|
||||
# set as part of the moveChunk command.
|
||||
"//jstests/aggregation/sources/facet:use_cases.js",
|
||||
|
||||
# This test specifies a $out stage not as the last stage in the aggregation pipeline, causing a
|
||||
# non-local readConcern to erroneously be sent with the command.
|
||||
"//jstests/aggregation/sources/out:required_last_position.js",
|
||||
],
|
||||
exclude_with_any_tags = [
|
||||
# The next two 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 read concern of command: ..."
|
||||
"assumes_read_concern_unchanged",
|
||||
# "Cowardly refusing to override write concern of command: ..."
|
||||
"assumes_write_concern_unchanged",
|
||||
],
|
||||
shard_count = 8,
|
||||
tags = [
|
||||
"aggregation",
|
||||
"ci-release-critical",
|
||||
"read_write_concern",
|
||||
"resources:cpu:2",
|
||||
],
|
||||
target_compatible_with = select({
|
||||
"@platforms//os:macos": ["@platforms//:incompatible"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
deps = [
|
||||
"//src/mongo/db:mongod",
|
||||
"//src/mongo/shell:mongo",
|
||||
],
|
||||
)
|
||||
|
||||
resmoke_suite_test(
|
||||
name = "aggregation_sharded_collections_passthrough",
|
||||
srcs = ["//jstests/aggregation:all_subpackage_javascript_files"],
|
||||
config = "//buildscripts/resmokeconfig:suites/aggregation_sharded_collections_passthrough.yml",
|
||||
data = [
|
||||
"//jstests/with_mongot/e2e_lib",
|
||||
],
|
||||
exclude_files = [
|
||||
"//jstests/aggregation/data:all_javascript_files",
|
||||
"//jstests/aggregation/extras:all_javascript_files",
|
||||
|
||||
# This test makes assertions about whether aggregations will need to spill to disk, which assumes
|
||||
# all the data is located on a single shard.
|
||||
"//jstests/aggregation/exec:spill_to_disk.js",
|
||||
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
"//jstests/aggregation/optimization:match_swapping_renamed_fields.js",
|
||||
"//jstests/aggregation/optimization:use_query_sort.js",
|
||||
"//jstests/aggregation/optimization:use_query_project_and_sort.js",
|
||||
"//jstests/aggregation/optimization:use_query_projection.js",
|
||||
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
"//jstests/aggregation/sources/graphLookup:variables.js",
|
||||
"//jstests/aggregation/sources/group:groupMissing.js",
|
||||
],
|
||||
exclude_with_any_tags = [
|
||||
# This passthrough implicitly shards the accessed collections. Do not run tests where collections
|
||||
# can't be created on `getCollection` call.
|
||||
"assumes_no_implicit_collection_creation_on_get_collection",
|
||||
|
||||
# Tests tagged with the following will fail because they assume collections are not sharded.
|
||||
"assumes_against_mongod_not_mongos",
|
||||
"assumes_no_implicit_collection_creation_after_drop",
|
||||
"assumes_no_implicit_index_creation",
|
||||
"assumes_unsharded_collection",
|
||||
"cannot_create_unique_index_when_using_hashed_shard_key",
|
||||
"requires_sharding",
|
||||
"requires_profiling",
|
||||
],
|
||||
shard_count = 8,
|
||||
tags = [
|
||||
"aggregation",
|
||||
"ci-release-critical",
|
||||
"common",
|
||||
"sharded",
|
||||
],
|
||||
target_compatible_with = select({
|
||||
"@platforms//os:macos": ["@platforms//:incompatible"],
|
||||
"//conditions:default": [],
|
||||
}),
|
||||
deps = [
|
||||
"//src/mongo/db:mongod",
|
||||
"//src/mongo/s:mongos",
|
||||
"//src/mongo/shell:mongo",
|
||||
],
|
||||
)
|
||||
5
jstests/suites/query/OWNERS.yml
Normal file
5
jstests/suites/query/OWNERS.yml
Normal file
@@ -0,0 +1,5 @@
|
||||
version: 2.0.0
|
||||
filters:
|
||||
- "*":
|
||||
approvers:
|
||||
- 10gen/query
|
||||
Reference in New Issue
Block a user