mirror of https://github.com/mongodb/mongo
SERVER-88970 Added yaml formatting to server repo
GitOrigin-RevId: 35db3811d8f749edd5b79ba910adcbc1ceb54cc4
This commit is contained in:
parent
364e04a8db
commit
b665258d9d
|
|
@ -12,19 +12,19 @@ rules:
|
|||
no-useless-escape: 0
|
||||
no-irregular-whitespace: 0
|
||||
no-inner-declarations: 0
|
||||
no-unused-vars: [0, { "varsIgnorePattern": "^_", "args": "none" }]
|
||||
no-unused-vars: [0, {"varsIgnorePattern": "^_", "args": "none"}]
|
||||
no-empty: 0
|
||||
no-redeclare: 0
|
||||
no-constant-condition: 0
|
||||
no-loss-of-precision: 0
|
||||
no-restricted-syntax: [
|
||||
'error',
|
||||
{
|
||||
message: "Invalid load call. Please convert your library to a module and import it instead.",
|
||||
selector:
|
||||
'CallExpression > Identifier[name="load"]'
|
||||
}
|
||||
]
|
||||
no-restricted-syntax:
|
||||
[
|
||||
"error",
|
||||
{
|
||||
message: "Invalid load call. Please convert your library to a module and import it instead.",
|
||||
selector: 'CallExpression > Identifier[name="load"]',
|
||||
},
|
||||
]
|
||||
|
||||
globals:
|
||||
TestData: true
|
||||
|
|
@ -237,4 +237,3 @@ globals:
|
|||
helloStatePrompt: true
|
||||
_validateMemberIndex: true
|
||||
help: true
|
||||
|
||||
|
|
|
|||
|
|
@ -5,10 +5,12 @@
|
|||
*
|
||||
!*/
|
||||
|
||||
# Do not ignore markdown
|
||||
# We are only going to do markdown file formatting for now
|
||||
# Do not ignore markdown and yaml
|
||||
# We are only going to do markdown and yaml file formatting for now
|
||||
# Hopefully we will use prettier for more file types in the future
|
||||
!*.md
|
||||
!*.yml
|
||||
!*.yaml
|
||||
|
||||
# Ignore all template files
|
||||
# When we eventually enable prettier on javascript these files are invalid and should be ignored
|
||||
|
|
@ -17,5 +19,14 @@
|
|||
# Ignore .yy files since prettier seems to think these are json files
|
||||
**/*.yy
|
||||
|
||||
# Ignored generated resmoke suites
|
||||
buildscripts/resmokeconfig/matrix_suites/generated_suites/*.yml
|
||||
|
||||
# Ignore generated pnpm lock file
|
||||
pnpm-lock.yaml
|
||||
|
||||
# Ignore version expansions that are created in evergreen
|
||||
version_expansions.yml
|
||||
|
||||
# Ignore all formatting in third_party/*
|
||||
src/third_party
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
{
|
||||
"tabWidth": 4,
|
||||
"bracketSpacing": false
|
||||
}
|
||||
|
|
|
|||
|
|
@ -64,6 +64,9 @@
|
|||
"editor.formatOnSave": true,
|
||||
"editor.defaultFormatter": "eeyore.yapf"
|
||||
},
|
||||
"[starlark]": {
|
||||
"editor.defaultFormatter": "BazelBuild.vscode-bazel"
|
||||
},
|
||||
},
|
||||
"extensions": {
|
||||
"recommendations": [
|
||||
|
|
|
|||
26
README.md
26
README.md
|
|
@ -4,15 +4,15 @@ Welcome to MongoDB!
|
|||
|
||||
## Components
|
||||
|
||||
- `mongod` - The database server.
|
||||
- `mongos` - Sharding router.
|
||||
- `mongo` - The database shell (uses interactive javascript).
|
||||
- `mongod` - The database server.
|
||||
- `mongos` - Sharding router.
|
||||
- `mongo` - The database shell (uses interactive javascript).
|
||||
|
||||
## Download MongoDB
|
||||
|
||||
- https://www.mongodb.com/try/download/community
|
||||
- Using homebrew `brew tap mongodb/brew`
|
||||
- Using docker image `docker pull mongo`
|
||||
- https://www.mongodb.com/try/download/community
|
||||
- Using homebrew `brew tap mongodb/brew`
|
||||
- Using docker image `docker pull mongo`
|
||||
|
||||
## Building
|
||||
|
||||
|
|
@ -65,9 +65,9 @@ This will generate RPM and Debian packages.
|
|||
|
||||
## Learn MongoDB
|
||||
|
||||
- Documentation - https://docs.mongodb.com/manual/
|
||||
- Developer Center - https://www.mongodb.com/developer/
|
||||
- MongoDB University - https://learn.mongodb.com
|
||||
- Documentation - https://docs.mongodb.com/manual/
|
||||
- Developer Center - https://www.mongodb.com/developer/
|
||||
- MongoDB University - https://learn.mongodb.com
|
||||
|
||||
## Cloud Hosted MongoDB
|
||||
|
||||
|
|
@ -75,13 +75,13 @@ https://www.mongodb.com/cloud/atlas
|
|||
|
||||
## Forums
|
||||
|
||||
- https://mongodb.com/community/forums/
|
||||
- https://mongodb.com/community/forums/
|
||||
|
||||
Technical questions about using MongoDB.
|
||||
Technical questions about using MongoDB.
|
||||
|
||||
- https://mongodb.com/community/forums/c/server-dev
|
||||
- https://mongodb.com/community/forums/c/server-dev
|
||||
|
||||
Technical questions about building and developing MongoDB.
|
||||
Technical questions about building and developing MongoDB.
|
||||
|
||||
## LICENSE
|
||||
|
||||
|
|
|
|||
|
|
@ -131,21 +131,3 @@ npm_translate_lock(
|
|||
load("@npm//:repositories.bzl", "npm_repositories")
|
||||
|
||||
npm_repositories()
|
||||
|
||||
# TODO: This comes with a lot of built in formatters
|
||||
# Since we are only using prettier for now we do not use the others
|
||||
# See https://github.com/aspect-build/rules_lint/releases/tag/v0.11.0 for all supported formatters
|
||||
http_archive(
|
||||
name = "aspect_rules_lint",
|
||||
sha256 = "41fad363f11ccab46a244f93f8ccb0f442bc235e606d2fad87801987ad0759b1",
|
||||
strip_prefix = "rules_lint-0.12.0",
|
||||
urls = [
|
||||
# Implements retry by relisting each url multiple times to be used as a failover.
|
||||
# TODO(SERVER-86719): Re-implement http_archive to allow sleeping between retries
|
||||
"https://github.com/aspect-build/rules_lint/releases/download/v0.12.0/rules_lint-v0.12.0.tar.gz",
|
||||
"https://github.com/aspect-build/rules_lint/releases/download/v0.12.0/rules_lint-v0.12.0.tar.gz",
|
||||
"https://github.com/aspect-build/rules_lint/releases/download/v0.12.0/rules_lint-v0.12.0.tar.gz",
|
||||
"https://github.com/aspect-build/rules_lint/releases/download/v0.12.0/rules_lint-v0.12.0.tar.gz",
|
||||
"https://github.com/aspect-build/rules_lint/releases/download/v0.12.0/rules_lint-v0.12.0.tar.gz",
|
||||
],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
# MongoDB Bazel Documentation
|
||||
|
||||
- [Developer Workflow](docs/developer_workflow.md)
|
||||
- [Best Practices](docs/best_practices.md)
|
||||
- [Developer Workflow](docs/developer_workflow.md)
|
||||
- [Best Practices](docs/best_practices.md)
|
||||
|
|
|
|||
|
|
@ -50,9 +50,9 @@ The divergence from SCons is that now source files have to be declared in additi
|
|||
|
||||
The DevProd Build Team created MongoDB-specific macros for the different types of build targets you may want to specify. These include:
|
||||
|
||||
- mongo_cc_binary
|
||||
- mongo_cc_library
|
||||
- idl_generator
|
||||
- mongo_cc_binary
|
||||
- mongo_cc_library
|
||||
- idl_generator
|
||||
|
||||
Creating a new library is similar to the steps above for creating a new binary. A new **mongo_cc_library** definition would be created in the BUILD.bazel file.
|
||||
|
||||
|
|
|
|||
|
|
@ -6,19 +6,19 @@ To install the necessary credentials to enable remote execution, run scons.py wi
|
|||
|
||||
(Only if not in the Engineering org)
|
||||
|
||||
- Request access to the MANA group https://mana.corp.mongodbgov.com/resources/659ec4b9bccf3819e5608712
|
||||
- Request access to the MANA group https://mana.corp.mongodbgov.com/resources/659ec4b9bccf3819e5608712
|
||||
|
||||
(For everyone)
|
||||
|
||||
- Go to https://sodalite.cluster.engflow.com/gettingstarted
|
||||
- Login with OKTA, then click the "GENERATE AND DOWNLOAD MTLS CERTIFICATE" button
|
||||
- (If logging in with OKTA doesn't work) Login with Google using your MongoDB email, then click the "GENERATE AND DOWNLOAD MTLS CERTIFICATE" button
|
||||
- On your local system (usually your MacBook), open a shell terminal and, after setting the variables on the first three lines, run:
|
||||
- Go to https://sodalite.cluster.engflow.com/gettingstarted
|
||||
- Login with OKTA, then click the "GENERATE AND DOWNLOAD MTLS CERTIFICATE" button
|
||||
- (If logging in with OKTA doesn't work) Login with Google using your MongoDB email, then click the "GENERATE AND DOWNLOAD MTLS CERTIFICATE" button
|
||||
- On your local system (usually your MacBook), open a shell terminal and, after setting the variables on the first three lines, run:
|
||||
|
||||
REMOTE_USER=<SSH User from https://spruce.mongodb.com/spawn/host>
|
||||
REMOTE_HOST=<DNS Name from https://spruce.mongodb.com/spawn/host>
|
||||
ZIP_FILE=~/Downloads/engflow-mTLS.zip
|
||||
REMOTE_USER=<SSH User from https://spruce.mongodb.com/spawn/host>
|
||||
REMOTE_HOST=<DNS Name from https://spruce.mongodb.com/spawn/host>
|
||||
ZIP_FILE=~/Downloads/engflow-mTLS.zip
|
||||
|
||||
curl https://raw.githubusercontent.com/mongodb/mongo/master/buildscripts/setup_engflow_creds.sh -o setup_engflow_creds.sh
|
||||
chmod +x ./setup_engflow_creds.sh
|
||||
./setup_engflow_creds.sh $REMOTE_USER $REMOTE_HOST $ZIP_FILE
|
||||
curl https://raw.githubusercontent.com/mongodb/mongo/master/buildscripts/setup_engflow_creds.sh -o setup_engflow_creds.sh
|
||||
chmod +x ./setup_engflow_creds.sh
|
||||
./setup_engflow_creds.sh $REMOTE_USER $REMOTE_HOST $ZIP_FILE
|
||||
|
|
|
|||
|
|
@ -1,4 +1,3 @@
|
|||
load("@aspect_rules_lint//format:defs.bzl", "multi_formatter_binary")
|
||||
load("@npm//:prettier/package_json.bzl", prettier = "bin")
|
||||
|
||||
# TODO: SERVER-82329 eslint binary should almost exactly mirror prettier binary
|
||||
|
|
@ -12,8 +11,14 @@ prettier.prettier_binary(
|
|||
env = {"BAZEL_BINDIR": "."},
|
||||
)
|
||||
|
||||
multi_formatter_binary(
|
||||
py_binary(
|
||||
name = "format",
|
||||
markdown = ":prettier",
|
||||
srcs = ["format.py"],
|
||||
args = [
|
||||
"--prettier",
|
||||
"$(location :prettier)",
|
||||
],
|
||||
data = [":prettier"],
|
||||
main = "format.py",
|
||||
visibility = ["//visibility:public"],
|
||||
)
|
||||
|
|
|
|||
|
|
@ -0,0 +1,50 @@
|
|||
import argparse
|
||||
import os
|
||||
import pathlib
|
||||
import subprocess
|
||||
|
||||
|
||||
def run_prettier(prettier: pathlib.Path, check: bool) -> int:
|
||||
try:
|
||||
command = [prettier, "."]
|
||||
if check:
|
||||
command.append("--check")
|
||||
else:
|
||||
command.append("--write")
|
||||
print(f"Running command: '{command}'")
|
||||
subprocess.run(command, check=True)
|
||||
except subprocess.CalledProcessError:
|
||||
print("Found formatting errors. Run 'bazel run //:format' to fix")
|
||||
print(
|
||||
"If bazel is not installed, visit https://github.com/bazelbuild/bazelisk/blob/master/README.md#installation for installation steps."
|
||||
)
|
||||
return 1
|
||||
|
||||
if check:
|
||||
print("No formatting errors")
|
||||
return 0
|
||||
|
||||
|
||||
def main() -> int:
|
||||
# If we are running in bazel, default the directory to the workspace
|
||||
default_dir = os.environ.get("BUILD_WORKSPACE_DIRECTORY")
|
||||
if not default_dir:
|
||||
print("This script must be run though bazel. Please run 'bazel run //:format' instead")
|
||||
return 1
|
||||
|
||||
parser = argparse.ArgumentParser(prog='Format',
|
||||
description='This script formats code in mongodb')
|
||||
|
||||
parser.add_argument("--check", help="Run in check mode", default=False, action="store_true")
|
||||
parser.add_argument("--prettier", help="Set the path to prettier", required=True,
|
||||
type=pathlib.Path)
|
||||
|
||||
args = parser.parse_args()
|
||||
prettier_path: pathlib.Path = args.prettier.resolve()
|
||||
|
||||
os.chdir(default_dir)
|
||||
return run_prettier(prettier_path, args.check)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
exit(main())
|
||||
|
|
@ -4,5 +4,5 @@ version: 1.0.0
|
|||
filters:
|
||||
- "*":
|
||||
approvers:
|
||||
- 10gen/devprod-correctness
|
||||
- 10gen/devprod-build
|
||||
- 10gen/devprod-correctness
|
||||
- 10gen/devprod-build
|
||||
|
|
|
|||
|
|
@ -207,14 +207,14 @@ To create a new topology for Antithesis testing is easy & requires a few simple
|
|||
|
||||
These are the required updates to `evergreen/antithesis_image_build.sh`:
|
||||
|
||||
- Add the following command for each of your `mongos` and `mongod` containers in your topology to
|
||||
create your log directories.
|
||||
- Add the following command for each of your `mongos` and `mongod` containers in your topology to
|
||||
create your log directories.
|
||||
|
||||
```shell
|
||||
mkdir -p antithesis/topologies/[topology_name]/{logs,data}/[container_name]
|
||||
```
|
||||
|
||||
- Build an image for your new topology ending in `-config`
|
||||
- Build an image for your new topology ending in `-config`
|
||||
|
||||
```shell
|
||||
cd [your_topology_dir]
|
||||
|
|
@ -224,7 +224,7 @@ sudo docker build . -t [your-topology-name]-config:$tag
|
|||
|
||||
These are the required updates to `evergreen/antithesis_image_push.sh`:
|
||||
|
||||
- Push your new image to the Antithesis Docker registry
|
||||
- Push your new image to the Antithesis Docker registry
|
||||
|
||||
```shell
|
||||
sudo docker tag "[your-topology-name]-config:$tag" "us-central1-docker.pkg.dev/molten-verve-216720/mongodb-repository/[your-topology-name]-config:$tag"
|
||||
|
|
|
|||
|
|
@ -1,72 +1,72 @@
|
|||
version: '3.0'
|
||||
version: "3.0"
|
||||
|
||||
services:
|
||||
database1:
|
||||
container_name: database1
|
||||
hostname: database1
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
command: /bin/bash /scripts/database_init.sh
|
||||
volumes:
|
||||
- ./logs/database1:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database1:/data/db/
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.3
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database2:
|
||||
container_name: database2
|
||||
hostname: database2
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
command: /bin/bash /scripts/database_init.sh
|
||||
volumes:
|
||||
- ./logs/database2:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database2:/data/db/
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.4
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database3:
|
||||
container_name: database3
|
||||
hostname: database3
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
command: /bin/bash /scripts/database_init.sh
|
||||
volumes:
|
||||
- ./logs/database3:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database3:/data/db/
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.5
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
database1:
|
||||
container_name: database1
|
||||
hostname: database1
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
command: /bin/bash /scripts/database_init.sh
|
||||
volumes:
|
||||
- ./logs/database1:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database1:/data/db/
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.3
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database2:
|
||||
container_name: database2
|
||||
hostname: database2
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
command: /bin/bash /scripts/database_init.sh
|
||||
volumes:
|
||||
- ./logs/database2:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database2:/data/db/
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.4
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database3:
|
||||
container_name: database3
|
||||
hostname: database3
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
command: /bin/bash /scripts/database_init.sh
|
||||
volumes:
|
||||
- ./logs/database3:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database3:/data/db/
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.5
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
|
||||
workload:
|
||||
container_name: workload
|
||||
hostname: workload
|
||||
image: workload:evergreen-latest-master
|
||||
command: /bin/bash /scripts/workload_init.sh
|
||||
volumes:
|
||||
- ./logs/workload:/var/log/resmoke/
|
||||
- ./scripts:/scripts/
|
||||
depends_on:
|
||||
- "database1"
|
||||
- "database2"
|
||||
- "database3"
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.130
|
||||
# The subnet provided here is an example
|
||||
# An alternative subnet can be used
|
||||
workload:
|
||||
container_name: workload
|
||||
hostname: workload
|
||||
image: workload:evergreen-latest-master
|
||||
command: /bin/bash /scripts/workload_init.sh
|
||||
volumes:
|
||||
- ./logs/workload:/var/log/resmoke/
|
||||
- ./scripts:/scripts/
|
||||
depends_on:
|
||||
- "database1"
|
||||
- "database2"
|
||||
- "database3"
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.130
|
||||
# The subnet provided here is an example
|
||||
# An alternative subnet can be used
|
||||
|
||||
networks:
|
||||
antithesis-net:
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.20.20.0/24
|
||||
antithesis-net:
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.20.20.0/24
|
||||
|
|
|
|||
|
|
@ -1,185 +1,185 @@
|
|||
version: '3.0'
|
||||
version: "3.0"
|
||||
|
||||
services:
|
||||
configsvr1:
|
||||
container_name: configsvr1
|
||||
hostname: configsvr1
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/configsvr1:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/configsvr1:/data/configdb/
|
||||
command: /bin/bash /scripts/configsvr_init.sh
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.6
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
configsvr1:
|
||||
container_name: configsvr1
|
||||
hostname: configsvr1
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/configsvr1:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/configsvr1:/data/configdb/
|
||||
command: /bin/bash /scripts/configsvr_init.sh
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.6
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
|
||||
configsvr2:
|
||||
container_name: configsvr2
|
||||
hostname: configsvr2
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/configsvr2:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/configsvr2:/data/configdb/
|
||||
command: /bin/bash /scripts/configsvr_init.sh
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.7
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
configsvr2:
|
||||
container_name: configsvr2
|
||||
hostname: configsvr2
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/configsvr2:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/configsvr2:/data/configdb/
|
||||
command: /bin/bash /scripts/configsvr_init.sh
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.7
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
|
||||
configsvr3:
|
||||
container_name: configsvr3
|
||||
hostname: configsvr3
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/configsvr3:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/configsvr3:/data/configdb/
|
||||
command: /bin/bash /scripts/configsvr_init.sh
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.8
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
configsvr3:
|
||||
container_name: configsvr3
|
||||
hostname: configsvr3
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/configsvr3:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/configsvr3:/data/configdb/
|
||||
command: /bin/bash /scripts/configsvr_init.sh
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.8
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
|
||||
database1:
|
||||
container_name: database1
|
||||
hostname: database1
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database1:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database1:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard1
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.3
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database2:
|
||||
container_name: database2
|
||||
hostname: database2
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database2:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database2:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard1
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.4
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database3:
|
||||
container_name: database3
|
||||
hostname: database3
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database3:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database3:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard1
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.5
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
database1:
|
||||
container_name: database1
|
||||
hostname: database1
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database1:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database1:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard1
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.3
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database2:
|
||||
container_name: database2
|
||||
hostname: database2
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database2:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database2:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard1
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.4
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database3:
|
||||
container_name: database3
|
||||
hostname: database3
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database3:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database3:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard1
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.5
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
|
||||
database4:
|
||||
container_name: database4
|
||||
hostname: database4
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database4:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database4:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard2
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.10
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database5:
|
||||
container_name: database5
|
||||
hostname: database5
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database5:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database5:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard2
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.11
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database6:
|
||||
container_name: database6
|
||||
hostname: database6
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database6:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database6:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard2
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.12
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
database4:
|
||||
container_name: database4
|
||||
hostname: database4
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database4:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database4:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard2
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.10
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database5:
|
||||
container_name: database5
|
||||
hostname: database5
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database5:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database5:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard2
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.11
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
#
|
||||
database6:
|
||||
container_name: database6
|
||||
hostname: database6
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/database6:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
- ./data/database6:/data/db/
|
||||
command: /bin/bash /scripts/database_init.sh Shard2
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.12
|
||||
# Set the an IPv4 with an address of 10.20.20.130 or higher
|
||||
# to be ignored by the fault injector
|
||||
|
||||
mongos:
|
||||
container_name: mongos
|
||||
hostname: mongos
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/mongos:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
command: python3 /scripts/mongos_init.py
|
||||
depends_on:
|
||||
- "database1"
|
||||
- "database2"
|
||||
- "database3"
|
||||
- "database4"
|
||||
- "database5"
|
||||
- "database6"
|
||||
- "configsvr1"
|
||||
- "configsvr2"
|
||||
- "configsvr3"
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.9
|
||||
# The subnet provided here is an example
|
||||
# An alternative subnet can be used
|
||||
workload:
|
||||
container_name: workload
|
||||
hostname: workload
|
||||
image: workload:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/workload:/var/log/resmoke/
|
||||
- ./scripts:/scripts/
|
||||
command: python3 /scripts/workload_init.py
|
||||
depends_on:
|
||||
- "mongos"
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.130
|
||||
# The subnet provided here is an example
|
||||
# An alternative subnet can be used
|
||||
mongos:
|
||||
container_name: mongos
|
||||
hostname: mongos
|
||||
image: mongo-binaries:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/mongos:/var/log/mongodb/
|
||||
- ./scripts:/scripts/
|
||||
command: python3 /scripts/mongos_init.py
|
||||
depends_on:
|
||||
- "database1"
|
||||
- "database2"
|
||||
- "database3"
|
||||
- "database4"
|
||||
- "database5"
|
||||
- "database6"
|
||||
- "configsvr1"
|
||||
- "configsvr2"
|
||||
- "configsvr3"
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.9
|
||||
# The subnet provided here is an example
|
||||
# An alternative subnet can be used
|
||||
workload:
|
||||
container_name: workload
|
||||
hostname: workload
|
||||
image: workload:evergreen-latest-master
|
||||
volumes:
|
||||
- ./logs/workload:/var/log/resmoke/
|
||||
- ./scripts:/scripts/
|
||||
command: python3 /scripts/workload_init.py
|
||||
depends_on:
|
||||
- "mongos"
|
||||
networks:
|
||||
antithesis-net:
|
||||
ipv4_address: 10.20.20.130
|
||||
# The subnet provided here is an example
|
||||
# An alternative subnet can be used
|
||||
networks:
|
||||
antithesis-net:
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.20.20.0/24
|
||||
antithesis-net:
|
||||
driver: bridge
|
||||
ipam:
|
||||
config:
|
||||
- subnet: 10.20.20.0/24
|
||||
|
|
|
|||
|
|
@ -26,13 +26,13 @@ Ex:
|
|||
|
||||
```yaml
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
- requires_pipeline_optimization
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
- requires_pipeline_optimization
|
||||
```
|
||||
|
||||
### selector.roots
|
||||
|
|
@ -56,7 +56,7 @@ Ex:
|
|||
|
||||
```yaml
|
||||
executor:
|
||||
archive:
|
||||
archive:
|
||||
---
|
||||
config:
|
||||
---
|
||||
|
|
@ -77,9 +77,9 @@ Ex:
|
|||
|
||||
```yaml
|
||||
archive:
|
||||
hooks:
|
||||
- Hook1
|
||||
- Hook2
|
||||
hooks:
|
||||
- Hook1
|
||||
- Hook2
|
||||
---
|
||||
tests: true
|
||||
```
|
||||
|
|
@ -95,17 +95,17 @@ Ex:
|
|||
|
||||
```yaml
|
||||
config:
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ""
|
||||
nodb: ""
|
||||
gssapiServiceName: "mockservice"
|
||||
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');
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ""
|
||||
nodb: ""
|
||||
gssapiServiceName: "mockservice"
|
||||
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');
|
||||
```
|
||||
|
||||
Above is an example of the most common `test_kind` -- `js_test`. `js_test` uses `shell_options` to
|
||||
|
|
@ -138,14 +138,14 @@ Ex:
|
|||
|
||||
```yaml
|
||||
hooks:
|
||||
- class: CheckReplOplogs
|
||||
- class: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: MyHook
|
||||
param1: something
|
||||
param2: somethingelse
|
||||
- class: CheckReplOplogs
|
||||
- class: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: MyHook
|
||||
param1: something
|
||||
param2: somethingelse
|
||||
```
|
||||
|
||||
The hook name in the `.yml` must match its Python class name in the
|
||||
|
|
@ -164,18 +164,18 @@ Ex:
|
|||
|
||||
```yaml
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 2
|
||||
mongos_options:
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
periodicNoopIntervalSecs: 1
|
||||
writePeriodicNoops: true
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 2
|
||||
mongos_options:
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
periodicNoopIntervalSecs: 1
|
||||
writePeriodicNoops: true
|
||||
```
|
||||
|
||||
## Examples
|
||||
|
|
|
|||
|
|
@ -4,51 +4,51 @@
|
|||
|
||||
1. Install the latest [Node.js](https://nodejs.org/en/download/) if you don't have it.
|
||||
2. Install [pkg](https://www.npmjs.com/package/pkg) with npm.
|
||||
```
|
||||
npm install -g pkg
|
||||
```
|
||||
```
|
||||
npm install -g pkg
|
||||
```
|
||||
3. Get [ESLint](https://github.com/eslint/eslint) source code.
|
||||
```
|
||||
git clone git@github.com:eslint/eslint.git
|
||||
```
|
||||
```
|
||||
git clone git@github.com:eslint/eslint.git
|
||||
```
|
||||
4. Checkout the latest version using git tag.
|
||||
```
|
||||
cd eslint
|
||||
git checkout v${version}
|
||||
```
|
||||
```
|
||||
cd eslint
|
||||
git checkout v${version}
|
||||
```
|
||||
5. Add pkg options to `package.json` file.
|
||||
```
|
||||
"pkg": {
|
||||
"scripts": [ "conf/**/*", "lib/**/*", "messages/**/*" ],
|
||||
"targets": [ "linux-x64", "macos-x64" ]
|
||||
# "targets": [ "linux-arm" ]
|
||||
},
|
||||
```
|
||||
```
|
||||
"pkg": {
|
||||
"scripts": [ "conf/**/*", "lib/**/*", "messages/**/*" ],
|
||||
"targets": [ "linux-x64", "macos-x64" ]
|
||||
# "targets": [ "linux-arm" ]
|
||||
},
|
||||
```
|
||||
6. Run pkg command to make ESLint executables.
|
||||
```
|
||||
npm install
|
||||
pkg .
|
||||
```
|
||||
```
|
||||
npm install
|
||||
pkg .
|
||||
```
|
||||
7. Check that executables are working.
|
||||
Copy files to somewhere in your PATH and try to run it.
|
||||
|
||||
Depending on your system
|
||||
Depending on your system
|
||||
|
||||
```
|
||||
eslint-linux --help
|
||||
```
|
||||
```
|
||||
eslint-linux --help
|
||||
```
|
||||
|
||||
or
|
||||
or
|
||||
|
||||
```
|
||||
eslint-macos --help
|
||||
```
|
||||
```
|
||||
eslint-macos --help
|
||||
```
|
||||
|
||||
or (if you are on arm)
|
||||
or (if you are on arm)
|
||||
|
||||
```
|
||||
eslint --help
|
||||
```
|
||||
```
|
||||
eslint --help
|
||||
```
|
||||
|
||||
(\*) If executable fails to find some .js files there are [extra steps](#extra-steps)
|
||||
required to be done before step 6.
|
||||
|
|
|
|||
|
|
@ -1,17 +1,17 @@
|
|||
# options passed to IWYU
|
||||
iwyu_options:
|
||||
- '--mapping_file=etc/iwyu_mapping.imp'
|
||||
- '--no_fwd_decls'
|
||||
- '--prefix_header_includes=add'
|
||||
- '--transitive_includes_only'
|
||||
- "--mapping_file=etc/iwyu_mapping.imp"
|
||||
- "--no_fwd_decls"
|
||||
- "--prefix_header_includes=add"
|
||||
- "--transitive_includes_only"
|
||||
|
||||
# options passed to the fix script
|
||||
fix_options:
|
||||
- '--blank_lines'
|
||||
- '--nocomments'
|
||||
- '--noreorder'
|
||||
- '--separate_project_includes=mongo'
|
||||
- '--safe_headers'
|
||||
- "--blank_lines"
|
||||
- "--nocomments"
|
||||
- "--noreorder"
|
||||
- "--separate_project_includes=mongo"
|
||||
- "--safe_headers"
|
||||
- '--only_re=^src/mongo\/.*'
|
||||
# TODO SERVER-77051 we will eventually turn this on when our codebase is cleaned up with out.
|
||||
# - '--nosafe_headers'
|
||||
|
|
@ -21,17 +21,17 @@ fix_options:
|
|||
# since this is targeting IWYU added headers
|
||||
no_includes:
|
||||
# avoid boost crazyness
|
||||
- 'boost/.+/detail/.+'
|
||||
- 'asio/impl/.+'
|
||||
- "boost/.+/detail/.+"
|
||||
- "asio/impl/.+"
|
||||
- 'boost/.+\.ipp'
|
||||
# avoid stdlib detail headers
|
||||
- 'ext/alloc_traits\.h'
|
||||
- 'ext/type_traits\.h'
|
||||
- 'cxxabi\.h' # https://github.com/include-what-you-use/include-what-you-use/issues/909
|
||||
- 'bits/.+'
|
||||
- "bits/.+"
|
||||
- 'syscall\.h'
|
||||
# arch specific
|
||||
- 'boost/predef/hardware/simd/x86.+'
|
||||
- "boost/predef/hardware/simd/x86.+"
|
||||
- 'emmintrin\.h'
|
||||
# we use a third party format which confuses IWYU
|
||||
- 'format\.h'
|
||||
|
|
@ -42,24 +42,24 @@ no_includes:
|
|||
|
||||
# path prefixes (non regex) to skip
|
||||
skip_files:
|
||||
- 'src/third_party'
|
||||
- 'build/'
|
||||
- 'src/mongo/tools/mongo_tidy_checks'
|
||||
- 'src/mongo/util/net' # causes linkage issues
|
||||
- 'src/mongo/util/text.cpp'
|
||||
- "src/third_party"
|
||||
- "build/"
|
||||
- "src/mongo/tools/mongo_tidy_checks"
|
||||
- "src/mongo/util/net" # causes linkage issues
|
||||
- "src/mongo/util/text.cpp"
|
||||
# IWYU confused on forward declares
|
||||
- 'src/mongo/db/exec/near.cpp'
|
||||
- 'src/mongo/db/storage/wiredtiger/wiredtiger_index.cpp'
|
||||
- "src/mongo/db/exec/near.cpp"
|
||||
- "src/mongo/db/storage/wiredtiger/wiredtiger_index.cpp"
|
||||
# Asio is going to need some special treatment, the headers are very finicky
|
||||
- 'src/mongo/transport/asio'
|
||||
- "src/mongo/transport/asio"
|
||||
# causes IWYU to crash:
|
||||
- 'src/mongo/db/update/update_internal_node.cpp'
|
||||
- 'src/mongo/db/update/update_array_node.cpp'
|
||||
- 'src/mongo/db/update/update_object_node.cpp'
|
||||
- 'src/mongo/db/update/update_array_node_test.cpp'
|
||||
- 'src/mongo/db/update/update_object_node_test.cpp'
|
||||
- 'src/mongo/util/options_parser/environment.cpp'
|
||||
- 'src/mongo/util/options_parser/option_section.cpp'
|
||||
- "src/mongo/db/update/update_internal_node.cpp"
|
||||
- "src/mongo/db/update/update_array_node.cpp"
|
||||
- "src/mongo/db/update/update_object_node.cpp"
|
||||
- "src/mongo/db/update/update_array_node_test.cpp"
|
||||
- "src/mongo/db/update/update_object_node_test.cpp"
|
||||
- "src/mongo/util/options_parser/environment.cpp"
|
||||
- "src/mongo/util/options_parser/option_section.cpp"
|
||||
|
||||
# regex file paths to add keep pragma
|
||||
# include quotes are angle brackets
|
||||
|
|
@ -68,15 +68,15 @@ keep_includes:
|
|||
- '<fmt/printf\.h>'
|
||||
- '<fmt/ranges\.h>'
|
||||
- '<fmt/chrono\.h>'
|
||||
- '<yaml-cpp/yaml.h>'
|
||||
- "<yaml-cpp/yaml.h>"
|
||||
- '<asio\.hpp>'
|
||||
- '<boost/utility/in_place_factory\.hpp>'
|
||||
- '<libunwind.h>'
|
||||
- '<fstream>' # IWYU messes up template instantiation
|
||||
- "<libunwind.h>"
|
||||
- "<fstream>" # IWYU messes up template instantiation
|
||||
- '"mongo/rpc/object_check\.h"'
|
||||
- '"mongo/base/init\.h"'
|
||||
- '"mongo/scripting/mozjs/wrapconstrainedmethod\.h"'
|
||||
- '"mongo/dbtests/dbtests\.h"' # this is due to using statements in the header
|
||||
- '"mongo/dbtests/dbtests\.h"' # this is due to using statements in the header
|
||||
- '"mongo/config\.h"'
|
||||
- '"mongo/util/overloaded_visitor\.h"'
|
||||
- '"mongo/db/query/optimizer/node\.h"'
|
||||
|
|
|
|||
|
|
@ -1,16 +1,16 @@
|
|||
# options passed to IWYU
|
||||
iwyu_options:
|
||||
- '--max_line_length=100'
|
||||
- '--no_fwd_decls'
|
||||
- '--prefix_header_includes=add'
|
||||
- '--transitive_includes_only'
|
||||
- "--max_line_length=100"
|
||||
- "--no_fwd_decls"
|
||||
- "--prefix_header_includes=add"
|
||||
- "--transitive_includes_only"
|
||||
|
||||
# options passed to the fix script
|
||||
fix_options:
|
||||
- '--blank_lines'
|
||||
- '--nocomments'
|
||||
- '--noreorder'
|
||||
- '--safe_headers'
|
||||
- "--blank_lines"
|
||||
- "--nocomments"
|
||||
- "--noreorder"
|
||||
- "--safe_headers"
|
||||
|
||||
# filename regex to swap no_include in place
|
||||
# quotes and brackets not included quotes are always assumed
|
||||
|
|
|
|||
|
|
@ -1,22 +1,22 @@
|
|||
# options passed to IWYU
|
||||
iwyu_options:
|
||||
- '--max_line_length=100'
|
||||
- '--no_fwd_decls'
|
||||
- '--prefix_header_includes=add'
|
||||
- '--transitive_includes_only'
|
||||
- "--max_line_length=100"
|
||||
- "--no_fwd_decls"
|
||||
- "--prefix_header_includes=add"
|
||||
- "--transitive_includes_only"
|
||||
|
||||
# options passed to the fix script
|
||||
fix_options:
|
||||
- '--blank_lines'
|
||||
- '--nocomments'
|
||||
- '--noreorder'
|
||||
- '--safe_headers'
|
||||
- "--blank_lines"
|
||||
- "--nocomments"
|
||||
- "--noreorder"
|
||||
- "--safe_headers"
|
||||
|
||||
# filename regex to swap no_include in place
|
||||
# quotes and brackets not included quotes are always assumed
|
||||
# since this is targeting IWYU added headers
|
||||
no_includes:
|
||||
- 'b.h'
|
||||
- "b.h"
|
||||
|
||||
# prefixes (non regex) to skip
|
||||
skip_files:
|
||||
|
|
@ -24,4 +24,4 @@ skip_files:
|
|||
# regex file paths to add keep pragma
|
||||
# include quotes are angle brackets
|
||||
keep_includes:
|
||||
- '"a.h"'
|
||||
- '"a.h"'
|
||||
|
|
|
|||
|
|
@ -11,14 +11,12 @@ storage:
|
|||
systemLog:
|
||||
destination: file
|
||||
logAppend: true
|
||||
path: %MONGO_LOG_PATH%\mongod.log
|
||||
path: %MONGO_LOG_PATH%\mongod.log
|
||||
|
||||
# network interfaces
|
||||
net:
|
||||
port: 27017
|
||||
bindIp: 127.0.0.1
|
||||
|
||||
|
||||
#processManagement:
|
||||
|
||||
#security:
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
logging:
|
||||
executor:
|
||||
format: '[%(name)s] %(asctime)s %(message)s'
|
||||
format: "[%(name)s] %(asctime)s %(message)s"
|
||||
handlers:
|
||||
- class: logging.StreamHandler
|
||||
fixture:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: buildlogger
|
||||
tests:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: buildlogger
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
logging:
|
||||
executor:
|
||||
format: '[%(name)s] %(asctime)s %(message)s'
|
||||
format: "[%(name)s] %(asctime)s %(message)s"
|
||||
handlers:
|
||||
- class: logging.StreamHandler
|
||||
fixture:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: logging.StreamHandler
|
||||
tests:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: logging.StreamHandler
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1,14 @@
|
|||
logging:
|
||||
executor:
|
||||
format: '[%(name)s] %(asctime)s %(message)s'
|
||||
format: "[%(name)s] %(asctime)s %(message)s"
|
||||
handlers:
|
||||
- class: logging.StreamHandler
|
||||
fixture:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: evergreen
|
||||
tests:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: evergreen
|
||||
|
||||
|
|
|
|||
|
|
@ -1,18 +1,18 @@
|
|||
logging:
|
||||
executor:
|
||||
format: '[%(name)s] %(asctime)s %(message)s'
|
||||
format: "[%(name)s] %(asctime)s %(message)s"
|
||||
handlers:
|
||||
- class: logging.FileHandler
|
||||
filename: executor.log
|
||||
mode: w
|
||||
fixture:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: logging.FileHandler
|
||||
filename: fixture.log
|
||||
mode: w
|
||||
tests:
|
||||
format: '[%(name)s] %(message)s'
|
||||
format: "[%(name)s] %(message)s"
|
||||
handlers:
|
||||
- class: logging.FileHandler
|
||||
filename: tests.log
|
||||
|
|
|
|||
|
|
@ -1,10 +1,10 @@
|
|||
logging:
|
||||
executor:
|
||||
handlers:
|
||||
- class: logging.NullHandler
|
||||
- class: logging.NullHandler
|
||||
fixture:
|
||||
handlers:
|
||||
- class: logging.NullHandler
|
||||
- class: logging.NullHandler
|
||||
tests:
|
||||
handlers:
|
||||
- class: logging.NullHandler
|
||||
- class: logging.NullHandler
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
base_suite: change_streams
|
||||
overrides:
|
||||
- "change_streams.mongos_passthrough"
|
||||
- "change_streams.sharded_collections_passthrough"
|
||||
- "change_streams.base_eval"
|
||||
eval:
|
||||
- "change_streams.sharded_collections_passthrough_eval"
|
||||
- "change_streams.causal_consistency"
|
||||
excludes:
|
||||
- "change_streams.mongos_passthrough_excludes"
|
||||
- "change_streams.sharded_collections_passthrough_excludes"
|
||||
base_suite: change_streams
|
||||
overrides:
|
||||
- "change_streams.mongos_passthrough"
|
||||
- "change_streams.sharded_collections_passthrough"
|
||||
- "change_streams.base_eval"
|
||||
eval:
|
||||
- "change_streams.sharded_collections_passthrough_eval"
|
||||
- "change_streams.causal_consistency"
|
||||
excludes:
|
||||
- "change_streams.mongos_passthrough_excludes"
|
||||
- "change_streams.sharded_collections_passthrough_excludes"
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
base_suite: sharding_jscore_passthrough_with_balancer
|
||||
overrides:
|
||||
- "embedded_router.embedded_router"
|
||||
- "embedded_router.embedded_router"
|
||||
excludes:
|
||||
- "embedded_router.exclude_auth_tests"
|
||||
- "embedded_router.exclude_auth_tests"
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
base_suite: replica_sets_jscore_passthrough
|
||||
eval:
|
||||
- "recordids_replicated.enable"
|
||||
- "recordids_replicated.enable"
|
||||
|
||||
excludes:
|
||||
- "recordids_replicated.excluded_files"
|
||||
- "recordids_replicated.excluded_files"
|
||||
|
|
|
|||
|
|
@ -6,4 +6,4 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
auditDestination: 'console'
|
||||
auditDestination: "console"
|
||||
|
|
|
|||
|
|
@ -9,77 +9,77 @@
|
|||
- name: single_op_core_excluded_files
|
||||
value:
|
||||
exclude_files:
|
||||
# The following timeseries tests use failpoints that bulkWrite doesn't support.
|
||||
- jstests/core/timeseries/timeseries_delete_hint.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
|
||||
# BulkWrite profiling and currentOp output format is not the same as normal writes.
|
||||
- jstests/core/**/profile*.js
|
||||
- jstests/core/comment_field.js
|
||||
- jstests/core/fsync.js
|
||||
# Runs an update with illegal format (no 'updates'). We could work around this in the override
|
||||
# but it is very annoying.
|
||||
- jstests/core/write/insert/batch_write_command_insert.js
|
||||
- jstests/core/write/update/batch_write_command_update.js
|
||||
- jstests/core/write/delete/batch_write_command_delete.js
|
||||
# Requires specific commands to be run to trigger failpoint (i.e. requires insert, we run bulkWrite).
|
||||
- jstests/core/failcommand_failpoint.js
|
||||
# This test adds unknown fields to insert/update/delete ops which we ignore
|
||||
- jstests/core/write/write_commands_reject_unknown_fields.js
|
||||
# Expects explain to fail for using UUID instead of collection name.
|
||||
- jstests/core/query/explain/explain_uuid.js
|
||||
# Checks for specific name in the command that was executed that we override.
|
||||
- jstests/core/query/explain/explain_includes_command.js
|
||||
# The following timeseries tests use failpoints that bulkWrite doesn't support.
|
||||
- jstests/core/timeseries/timeseries_delete_hint.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
|
||||
# BulkWrite profiling and currentOp output format is not the same as normal writes.
|
||||
- jstests/core/**/profile*.js
|
||||
- jstests/core/comment_field.js
|
||||
- jstests/core/fsync.js
|
||||
# Runs an update with illegal format (no 'updates'). We could work around this in the override
|
||||
# but it is very annoying.
|
||||
- jstests/core/write/insert/batch_write_command_insert.js
|
||||
- jstests/core/write/update/batch_write_command_update.js
|
||||
- jstests/core/write/delete/batch_write_command_delete.js
|
||||
# Requires specific commands to be run to trigger failpoint (i.e. requires insert, we run bulkWrite).
|
||||
- jstests/core/failcommand_failpoint.js
|
||||
# This test adds unknown fields to insert/update/delete ops which we ignore
|
||||
- jstests/core/write/write_commands_reject_unknown_fields.js
|
||||
# Expects explain to fail for using UUID instead of collection name.
|
||||
- jstests/core/query/explain/explain_uuid.js
|
||||
# Checks for specific name in the command that was executed that we override.
|
||||
- jstests/core/query/explain/explain_includes_command.js
|
||||
|
||||
- name: single_op_txns_excluded_files
|
||||
value:
|
||||
exclude_files:
|
||||
# Checks for op names which bulkWrite will not show up as
|
||||
- jstests/core/txns/transactions_profiling.js
|
||||
- jstests/core/txns/currentop_blocked_operations.js
|
||||
# Checks for collation at top level in profile
|
||||
- jstests/core/txns/transactions_profiling_with_drops.js
|
||||
# The conditions of this test returns a different error for delete compared to the function bulkWrite uses.
|
||||
# bulkWrite is consistent with the other CRUD operations here.
|
||||
- jstests/core/txns/multi_statement_transaction_write_error.js
|
||||
# Checks for op names which bulkWrite will not show up as
|
||||
- jstests/core/txns/transactions_profiling.js
|
||||
- jstests/core/txns/currentop_blocked_operations.js
|
||||
# Checks for collation at top level in profile
|
||||
- jstests/core/txns/transactions_profiling_with_drops.js
|
||||
# The conditions of this test returns a different error for delete compared to the function bulkWrite uses.
|
||||
# bulkWrite is consistent with the other CRUD operations here.
|
||||
- jstests/core/txns/multi_statement_transaction_write_error.js
|
||||
|
||||
- name: single_op_fle_excluded_files
|
||||
value:
|
||||
exclude_files:
|
||||
# Asserts a location specific error code failure that happens after we fail out in bulkWrite.
|
||||
- src/mongo/db/modules/enterprise/jstests/fle2/basic_update.js
|
||||
- src/mongo/db/modules/enterprise/jstests/fle2/basic_delete.js
|
||||
# The way we override explain doesn't work with FLE tests.
|
||||
- src/mongo/db/modules/enterprise/jstests/fle2/query/explain*.js
|
||||
# Asserts a location specific error code failure that happens after we fail out in bulkWrite.
|
||||
- src/mongo/db/modules/enterprise/jstests/fle2/basic_update.js
|
||||
- src/mongo/db/modules/enterprise/jstests/fle2/basic_delete.js
|
||||
# The way we override explain doesn't work with FLE tests.
|
||||
- src/mongo/db/modules/enterprise/jstests/fle2/query/explain*.js
|
||||
|
||||
- name: txn_passthrough_runner_selftest
|
||||
value:
|
||||
exclude_files:
|
||||
# BulkWrite profiling output format is not the same as normal writes.
|
||||
- jstests/libs/txns/txn_passthrough_runner_selftest.js
|
||||
# BulkWrite profiling output format is not the same as normal writes.
|
||||
- jstests/libs/txns/txn_passthrough_runner_selftest.js
|
||||
|
||||
- name: causal_consistency_exclude_tags
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
- uses_transactions
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
- uses_transactions
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
|
||||
- name: kill_stepdown_hooks
|
||||
value:
|
||||
|
|
|
|||
|
|
@ -33,17 +33,17 @@
|
|||
- CheckReplDBHash
|
||||
- ValidateCollections
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
# Use two shards to make sure we will only talk to the primary shard for the database and will
|
||||
# not delay changes to wait for notifications or a clock advancement from other shards.
|
||||
num_shards: 2
|
||||
mongos_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
|
|
@ -55,8 +55,8 @@
|
|||
- name: mongos_passthrough_excludes
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
|
||||
- name: sharded_collections_passthrough
|
||||
value:
|
||||
|
|
@ -69,8 +69,8 @@
|
|||
- name: sharded_collections_passthrough_excludes
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
- assumes_unsharded_collection
|
||||
- assumes_no_implicit_collection_creation_on_get_collection
|
||||
- assumes_unsharded_collection
|
||||
- assumes_no_implicit_collection_creation_on_get_collection
|
||||
|
||||
- name: sharded_collections_passthrough_eval
|
||||
value:
|
||||
|
|
@ -108,9 +108,9 @@
|
|||
- name: secondary_reads_excludes
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
- assumes_read_preference_unchanged
|
||||
- assumes_read_preference_unchanged
|
||||
exclude_files:
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
|
||||
- name: secondary_reads_eval
|
||||
value:
|
||||
|
|
|
|||
|
|
@ -9,13 +9,13 @@
|
|||
fixture:
|
||||
mongod_options:
|
||||
set_parameters:
|
||||
changeCollectionTruncateMarkersMinBytes: 4096 # 4KiB
|
||||
changeCollectionTruncateMarkersMinBytes: 4096 # 4KiB
|
||||
changeCollectionExpiredDocumentsRemoverJobSleepSeconds: 1
|
||||
|
||||
- name: exclusions
|
||||
value:
|
||||
exclude_files:
|
||||
# TODO(SERVER-77000): Remove the test exclusion when $out.db in response has expected prefix.
|
||||
- jstests/core/query/explain/explain_agg_write_concern.js
|
||||
# `rolesInfo` is returning unprefixed database names
|
||||
- jstests/core/administrative/builtin_roles_external.js
|
||||
# TODO(SERVER-77000): Remove the test exclusion when $out.db in response has expected prefix.
|
||||
- jstests/core/query/explain/explain_agg_write_concern.js
|
||||
# `rolesInfo` is returning unprefixed database names
|
||||
- jstests/core/administrative/builtin_roles_external.js
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
fixture:
|
||||
mongod_options:
|
||||
set_parameters:
|
||||
preImagesCollectionTruncateMarkersMinBytes: 4096 # 4KiB
|
||||
preImagesCollectionTruncateMarkersMinBytes: 4096 # 4KiB
|
||||
expiredChangeStreamPreImageRemovalJobSleepSecs: 1
|
||||
failpoint.preImagesEnabledOnAllCollectionsByDefault: "{mode: 'alwaysOn'}"
|
||||
|
||||
|
|
@ -17,14 +17,14 @@
|
|||
value:
|
||||
executor:
|
||||
hooks:
|
||||
- class: ClusterParameter
|
||||
key: changeStreamOptions
|
||||
value:
|
||||
preAndPostImages:
|
||||
expireAfterSeconds: 10
|
||||
- class: ClusterParameter
|
||||
key: changeStreamOptions
|
||||
value:
|
||||
preAndPostImages:
|
||||
expireAfterSeconds: 10
|
||||
|
||||
# Exclude incompatible tests
|
||||
- name: exclusion_tags
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
- incompatible_with_preimages_by_default
|
||||
- incompatible_with_preimages_by_default
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
executor:
|
||||
fixture:
|
||||
embedded_router: 1
|
||||
mongos_options: null # mongos doesn't run in embedded router suites
|
||||
mongos_options: null # mongos doesn't run in embedded router suites
|
||||
mongod_options:
|
||||
set_parameters:
|
||||
featureFlagRouterPort: 1
|
||||
|
|
|
|||
|
|
@ -6,8 +6,8 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
enableEncryption: ''
|
||||
encryptionKeyFile: 'src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2'
|
||||
enableEncryption: ""
|
||||
encryptionKeyFile: "src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2"
|
||||
|
||||
- name: testdata_gcm
|
||||
value:
|
||||
|
|
@ -16,30 +16,30 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
encryptionCipherMode: 'AES256-GCM'
|
||||
encryptionCipherMode: "AES256-GCM"
|
||||
|
||||
- name: mongodfixture_ese
|
||||
value:
|
||||
executor:
|
||||
fixture:
|
||||
mongod_options:
|
||||
enableEncryption: ''
|
||||
encryptionKeyFile: 'src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2'
|
||||
enableEncryption: ""
|
||||
encryptionKeyFile: "src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2"
|
||||
|
||||
- name: mongodfixture_gcm
|
||||
value:
|
||||
executor:
|
||||
fixture:
|
||||
mongod_options:
|
||||
encryptionCipherMode: 'AES256-GCM'
|
||||
encryptionCipherMode: "AES256-GCM"
|
||||
|
||||
- name: excluded_files
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
- does_not_support_encrypted_storage_engine
|
||||
- does_not_support_encrypted_storage_engine
|
||||
|
||||
# Shard merge protocol won't work with encrypted storage engines.
|
||||
- name: serverless_excluded_files
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
- serverless
|
||||
- serverless
|
||||
|
|
|
|||
|
|
@ -77,7 +77,7 @@
|
|||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
mongod_options:
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
syncdelay: 5
|
||||
wiredTigerEngineConfigString: "debug_mode=(table_logging=true)"
|
||||
set_parameters:
|
||||
|
|
@ -101,7 +101,7 @@
|
|||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
mongod_options:
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
wiredTigerEngineConfigString: "debug_mode=(table_logging=true)"
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@
|
|||
- name: excluded_files
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
# Transactions are not allowed to operate on capped collections.
|
||||
- requires_capped
|
||||
# Transactions are not allowed to operate on capped collections.
|
||||
- requires_capped
|
||||
|
||||
- name: replica_sets_excluded_files
|
||||
value:
|
||||
|
|
|
|||
|
|
@ -12,4 +12,4 @@
|
|||
- name: sharding_excluded_files
|
||||
value:
|
||||
exclude_files:
|
||||
- jstests/sharding/query/mrShardedOutput.js
|
||||
- jstests/sharding/query/mrShardedOutput.js
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
- name: excluded_files
|
||||
value:
|
||||
exclude_files:
|
||||
- jstests/core/**/profile1.js # Extra operation for a getmore.
|
||||
- jstests/core/**/profile2.js # Extra operation for a getmore.
|
||||
- jstests/core/**/find9.js # Extra operation for a getmore.
|
||||
- jstests/core/**/express.js # Assumes default batch size.
|
||||
- jstests/core/**/profile1.js # Extra operation for a getmore.
|
||||
- jstests/core/**/profile2.js # Extra operation for a getmore.
|
||||
- jstests/core/**/find9.js # Extra operation for a getmore.
|
||||
- jstests/core/**/express.js # Assumes default batch size.
|
||||
|
|
|
|||
|
|
@ -109,7 +109,6 @@
|
|||
TestData:
|
||||
nonClusteredConfigTransactions: true
|
||||
|
||||
|
||||
### Suite-specific overrides ###
|
||||
- name: multiversion_future_git_tag_exclude_files
|
||||
value:
|
||||
|
|
@ -200,7 +199,7 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
useRandomBinVersionsWithinReplicaSet: 'last-lts'
|
||||
useRandomBinVersionsWithinReplicaSet: "last-lts"
|
||||
nonClusteredConfigTransactions: true
|
||||
|
||||
- name: replica_sets_multiversion_testdata_last_continuous
|
||||
|
|
@ -210,7 +209,7 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
useRandomBinVersionsWithinReplicaSet: 'last-continuous'
|
||||
useRandomBinVersionsWithinReplicaSet: "last-continuous"
|
||||
nonClusteredConfigTransactions: true
|
||||
|
||||
- name: rollback_multiversion_fuzzer_testdata_last_lts
|
||||
|
|
@ -229,7 +228,7 @@
|
|||
storage:
|
||||
verbosity: 1
|
||||
rollbackShutdowns: true
|
||||
useRandomBinVersionsWithinReplicaSet: 'last-lts'
|
||||
useRandomBinVersionsWithinReplicaSet: "last-lts"
|
||||
nonClusteredConfigTransactions: true
|
||||
|
||||
- name: rollback_multiversion_fuzzer_testdata_last_continuous
|
||||
|
|
@ -248,7 +247,7 @@
|
|||
storage:
|
||||
verbosity: 1
|
||||
rollbackShutdowns: true
|
||||
useRandomBinVersionsWithinReplicaSet: 'last-continuous'
|
||||
useRandomBinVersionsWithinReplicaSet: "last-continuous"
|
||||
nonClusteredConfigTransactions: true
|
||||
|
||||
- name: sharding_multiversion_selector
|
||||
|
|
@ -281,8 +280,8 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
useRandomBinVersionsWithinReplicaSet: 'last-lts'
|
||||
mongosBinVersion: 'last-lts'
|
||||
useRandomBinVersionsWithinReplicaSet: "last-lts"
|
||||
mongosBinVersion: "last-lts"
|
||||
nonClusteredConfigTransactions: true
|
||||
|
||||
- name: sharding_multiversion_testdata_last_continuous
|
||||
|
|
@ -292,8 +291,8 @@
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
useRandomBinVersionsWithinReplicaSet: 'last-continuous'
|
||||
mongosBinVersion: 'last-continuous'
|
||||
useRandomBinVersionsWithinReplicaSet: "last-continuous"
|
||||
mongosBinVersion: "last-continuous"
|
||||
|
||||
- name: jstestfuzz_replication_multiversion_hooks
|
||||
value:
|
||||
|
|
|
|||
|
|
@ -8,8 +8,8 @@
|
|||
- name: excluded_files
|
||||
value:
|
||||
exclude_with_any_tags:
|
||||
# Used to tag tests which cannot run in the 'repeat_queries' suites.
|
||||
- does_not_support_repeated_reads
|
||||
# By repeating queries when the profiler is enabled, we end up writing additional profiler entries.
|
||||
# Most tests using profiling are not prepared for these additional profiler entries.
|
||||
- requires_profiling
|
||||
# Used to tag tests which cannot run in the 'repeat_queries' suites.
|
||||
- does_not_support_repeated_reads
|
||||
# By repeating queries when the profiler is enabled, we end up writing additional profiler entries.
|
||||
# Most tests using profiling are not prepared for these additional profiler entries.
|
||||
- requires_profiling
|
||||
|
|
|
|||
|
|
@ -2,4 +2,4 @@
|
|||
value:
|
||||
selector:
|
||||
roots:
|
||||
- jstests/replsets/*.js
|
||||
- jstests/replsets/*.js
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
value:
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
exclude_files:
|
||||
# Intentional empty override.
|
||||
|
||||
|
|
@ -39,31 +39,31 @@
|
|||
hooks:
|
||||
- PeriodicKillSecondaries
|
||||
hooks:
|
||||
- class: PeriodicKillSecondaries
|
||||
- class: PeriodicKillSecondaries
|
||||
|
||||
- name: exclusions
|
||||
value:
|
||||
exclude_files:
|
||||
# The following tests perform a write with a writeConcern of w=2 when 'testingReplication' is
|
||||
# true. This causes the test to hang because the secondary is running with the "rsSyncApplyStop"
|
||||
# failpoint enabled.
|
||||
- jstests/core/**/geo_update_btree.js
|
||||
# The following tests create large oplog entries, which can cause the secondary to fall off the
|
||||
# primary's oplog when run as a part of burn_in_tests.
|
||||
- jstests/core/**/max_doc_size.js
|
||||
- jstests/core/**/mr_bigobject.js
|
||||
- jstests/core/**/capped_large_docs.js
|
||||
- jstests/core/**/capped_resize.js
|
||||
- jstests/core/**/exhaust.js
|
||||
# The following tests also create large oplog entries due to the maximum blocking sort size being
|
||||
# 100 MB.
|
||||
- jstests/core/**/explain_execution_error.js
|
||||
- jstests/core/**/sortb.js
|
||||
- jstests/core/**/sortg.js
|
||||
- jstests/core/**/sortj.js
|
||||
# The following test tries to directly query secondaries, which fails if the secondary has been
|
||||
# killed.
|
||||
- jstests/core/**/column_store_index_compression.js
|
||||
# The following tests perform a write with a writeConcern of w=2 when 'testingReplication' is
|
||||
# true. This causes the test to hang because the secondary is running with the "rsSyncApplyStop"
|
||||
# failpoint enabled.
|
||||
- jstests/core/**/geo_update_btree.js
|
||||
# The following tests create large oplog entries, which can cause the secondary to fall off the
|
||||
# primary's oplog when run as a part of burn_in_tests.
|
||||
- jstests/core/**/max_doc_size.js
|
||||
- jstests/core/**/mr_bigobject.js
|
||||
- jstests/core/**/capped_large_docs.js
|
||||
- jstests/core/**/capped_resize.js
|
||||
- jstests/core/**/exhaust.js
|
||||
# The following tests also create large oplog entries due to the maximum blocking sort size being
|
||||
# 100 MB.
|
||||
- jstests/core/**/explain_execution_error.js
|
||||
- jstests/core/**/sortb.js
|
||||
- jstests/core/**/sortg.js
|
||||
- jstests/core/**/sortj.js
|
||||
# The following test tries to directly query secondaries, which fails if the secondary has been
|
||||
# killed.
|
||||
- jstests/core/**/column_store_index_compression.js
|
||||
exclude_with_any_tags:
|
||||
# emptycapped is not supported with rollback using recover-to-timestamp.
|
||||
- requires_emptycapped
|
||||
# emptycapped is not supported with rollback using recover-to-timestamp.
|
||||
- requires_emptycapped
|
||||
|
|
|
|||
|
|
@ -65,7 +65,6 @@
|
|||
exclude_files:
|
||||
- jstests/aggregation/**/*.js
|
||||
|
||||
|
||||
- name: reconfig_kill_primary_jscore_passthrough_exclude_files
|
||||
value:
|
||||
selector:
|
||||
|
|
@ -135,7 +134,6 @@
|
|||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
|
||||
|
||||
- name: kill_primary_jscore_passthrough_exclude_with_any_tags
|
||||
value:
|
||||
selector:
|
||||
|
|
|
|||
|
|
@ -6,20 +6,20 @@
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
hashTestNamesForMultitenancy: true
|
||||
tenantId: "636d957b2646ddfaf9b5e13f"
|
||||
useResponsePrefixChecking: true
|
||||
hooks:
|
||||
- class: EnableChangeStream
|
||||
tenant_id: "636d957b2646ddfaf9b5e13f"
|
||||
- class: EnableChangeStream
|
||||
tenant_id: "636d957b2646ddfaf9b5e13f"
|
||||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
replset_name: "ChangeStreamMultitenantReplSet"
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
serverless: true
|
||||
noscripting: ''
|
||||
noscripting: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
featureFlagServerlessChangeStreams: true
|
||||
|
|
@ -30,8 +30,8 @@
|
|||
value:
|
||||
executor:
|
||||
hooks:
|
||||
- class: EnableChangeStream
|
||||
tenant_id: "636d957b2646ddfaf9b5e13f"
|
||||
- class: EnableChangeStream
|
||||
tenant_id: "636d957b2646ddfaf9b5e13f"
|
||||
|
||||
- name: shell_eval
|
||||
value:
|
||||
|
|
|
|||
|
|
@ -13,32 +13,31 @@
|
|||
# - 'mongod_options'
|
||||
|
||||
tasks:
|
||||
- name: powercycle
|
||||
|
||||
- name: powercycle
|
||||
- name: powercycle_smoke
|
||||
test_loops: 3
|
||||
seed_doc_num: 1000
|
||||
|
||||
- name: powercycle_smoke
|
||||
test_loops: 3
|
||||
seed_doc_num: 1000
|
||||
- name: powercycle_smoke_skip_compile
|
||||
test_loops: 3
|
||||
seed_doc_num: 1000
|
||||
|
||||
- name: powercycle_smoke_skip_compile
|
||||
test_loops: 3
|
||||
seed_doc_num: 1000
|
||||
- name: powercycle_kill_mongod
|
||||
crash_method: kill
|
||||
|
||||
- name: powercycle_kill_mongod
|
||||
crash_method: kill
|
||||
- name: powercycle_last_lts_fcv
|
||||
fcv: "7.0"
|
||||
|
||||
- name: powercycle_last_lts_fcv
|
||||
fcv: "7.0"
|
||||
- name: powercycle_replication
|
||||
repl_set: powercycle
|
||||
|
||||
- name: powercycle_replication
|
||||
repl_set: powercycle
|
||||
- name: powercycle_replication_smalloplog
|
||||
repl_set: powercycle
|
||||
mongod_options: "--setParameter enableTestCommands=1 --setParameter logComponentVerbosity='{storage:{recovery:2}}' --oplogSize 20 --storageEngine wiredTiger --wiredTigerEngineConfigString 'debug_mode=[table_logging=true]'"
|
||||
|
||||
- name: powercycle_replication_smalloplog
|
||||
repl_set: powercycle
|
||||
mongod_options: "--setParameter enableTestCommands=1 --setParameter logComponentVerbosity='{storage:{recovery:2}}' --oplogSize 20 --storageEngine wiredTiger --wiredTigerEngineConfigString 'debug_mode=[table_logging=true]'"
|
||||
- name: powercycle_syncdelay
|
||||
mongod_options: "--setParameter enableTestCommands=1 --setParameter logComponentVerbosity='{storage:{recovery:2}}' --syncdelay 10 --storageEngine wiredTiger --wiredTigerEngineConfigString 'debug_mode=[table_logging=true]'"
|
||||
|
||||
- name: powercycle_syncdelay
|
||||
mongod_options: "--setParameter enableTestCommands=1 --setParameter logComponentVerbosity='{storage:{recovery:2}}' --syncdelay 10 --storageEngine wiredTiger --wiredTigerEngineConfigString 'debug_mode=[table_logging=true]'"
|
||||
|
||||
- name: powercycle_write_concern_majority
|
||||
write_concern: "{'w': 'majority'}"
|
||||
- name: powercycle_write_concern_majority
|
||||
write_concern: "{'w': 'majority'}"
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -15,9 +15,9 @@ executor:
|
|||
shell_options:
|
||||
eval: await import("jstests/libs/override_methods/detect_spawning_own_mongod.js");
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -1,16 +1,16 @@
|
|||
# Section that is ignored by resmoke.py.
|
||||
config_variables:
|
||||
- &keyFile jstests/libs/authTestsKey
|
||||
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
|
||||
- &keyFile jstests/libs/authTestsKey
|
||||
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
|
||||
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
|
||||
executor:
|
||||
config:
|
||||
|
|
@ -28,12 +28,12 @@ executor:
|
|||
password: *keyFileData
|
||||
username: __system
|
||||
hooks:
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
auth: ''
|
||||
auth: ""
|
||||
keyFile: *keyFile
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
|
|
|
|||
|
|
@ -5,16 +5,16 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_no_implicit_index_creation
|
||||
# Column Store Indexes are known to mess up projection field order and it is fundamental to the
|
||||
# design so we accept these tests will fail.
|
||||
- tests_projection_field_order
|
||||
- assumes_no_implicit_index_creation
|
||||
# Column Store Indexes are known to mess up projection field order and it is fundamental to the
|
||||
# design so we accept these tests will fail.
|
||||
- tests_projection_field_order
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -27,9 +27,9 @@ executor:
|
|||
# indexes that the test itself created.
|
||||
eval: await import("jstests/libs/override_methods/hide_column_store_indexes_from_get_indexes.js")
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,12 +2,12 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
- requires_pipeline_optimization
|
||||
- requires_pipeline_optimization
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -15,9 +15,9 @@ executor:
|
|||
- ValidateCollections
|
||||
config: {}
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,31 +2,31 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
# Mongos does not support runtimeConstants.
|
||||
- jstests/aggregation/accumulators/internal_js_reduce_with_scope.js
|
||||
- jstests/aggregation/expressions/internal_js_emit_with_scope.js
|
||||
# $unionWith explain output does not check whether the collection is sharded in a sharded
|
||||
# cluster.
|
||||
- jstests/aggregation/sources/unionWith/unionWith_explain.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
# Mongos does not support runtimeConstants.
|
||||
- jstests/aggregation/accumulators/internal_js_reduce_with_scope.js
|
||||
- jstests/aggregation/expressions/internal_js_emit_with_scope.js
|
||||
# $unionWith explain output does not check whether the collection is sharded in a sharded
|
||||
# cluster.
|
||||
- jstests/aggregation/sources/unionWith/unionWith_explain.js
|
||||
|
||||
# TODO SERVER-87318: Remove once it is fixed.
|
||||
- jstests/aggregation/sources/indexStats/verify_index_stats_output.js
|
||||
# TODO SERVER-87318: Remove once it is fixed.
|
||||
- jstests/aggregation/sources/indexStats/verify_index_stats_output.js
|
||||
|
||||
# Embedded Router Exclusions:
|
||||
# Explicit auth is not supported in embedded router mode yet.
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_against_mongod_not_mongos
|
||||
- requires_profiling
|
||||
# The following tests start their own ShardingTest or ReplSetTest, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
- assumes_against_mongod_not_mongos
|
||||
- requires_profiling
|
||||
# The following tests start their own ShardingTest or ReplSetTest, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -40,12 +40,12 @@ executor:
|
|||
# be part of this passthrough.
|
||||
eval: await import("jstests/libs/override_methods/detect_spawning_own_mongod.js");
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -1,30 +1,30 @@
|
|||
# Section that is ignored by resmoke.py.
|
||||
config_variables:
|
||||
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
|
||||
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
|
||||
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
- does_not_support_encrypted_storage_engine
|
||||
- does_not_support_encrypted_storage_engine
|
||||
executor:
|
||||
archive:
|
||||
hooks:
|
||||
- ValidateCollections
|
||||
config: {}
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
enableEncryption: ''
|
||||
enableEncryption: ""
|
||||
encryptionKeyFile: *keyFile
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
|
|
|
|||
|
|
@ -1,31 +1,31 @@
|
|||
# Section that is ignored by resmoke.py.
|
||||
config_variables:
|
||||
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
|
||||
- &keyFile src/mongo/db/modules/enterprise/jstests/encryptdb/libs/ekf2
|
||||
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
- does_not_support_encrypted_storage_engine
|
||||
- does_not_support_encrypted_storage_engine
|
||||
executor:
|
||||
archive:
|
||||
hooks:
|
||||
- ValidateCollections
|
||||
config: {}
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
enableEncryption: ''
|
||||
enableEncryption: ""
|
||||
encryptionKeyFile: *keyFile
|
||||
encryptionCipherMode: 'AES256-GCM'
|
||||
encryptionCipherMode: "AES256-GCM"
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
|
|
|
|||
|
|
@ -2,12 +2,12 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
- do_not_wrap_aggregations_in_facets
|
||||
- do_not_wrap_aggregations_in_facets
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -17,9 +17,9 @@ executor:
|
|||
shell_options:
|
||||
eval: await import("jstests/libs/override_methods/implicitly_wrap_pipelines_in_facets.js");
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,24 +2,24 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
# Mongos does not support runtimeConstants.
|
||||
- jstests/aggregation/accumulators/internal_js_reduce_with_scope.js
|
||||
- jstests/aggregation/expressions/internal_js_emit_with_scope.js
|
||||
# $unionWith explain output does not check whether the collection is sharded in a sharded
|
||||
# cluster.
|
||||
- jstests/aggregation/sources/unionWith/unionWith_explain.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
# Mongos does not support runtimeConstants.
|
||||
- jstests/aggregation/accumulators/internal_js_reduce_with_scope.js
|
||||
- jstests/aggregation/expressions/internal_js_emit_with_scope.js
|
||||
# $unionWith explain output does not check whether the collection is sharded in a sharded
|
||||
# cluster.
|
||||
- jstests/aggregation/sources/unionWith/unionWith_explain.js
|
||||
exclude_with_any_tags:
|
||||
- assumes_against_mongod_not_mongos
|
||||
- requires_profiling
|
||||
# The following tests start their own ShardingTest or ReplSetTest, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
- assumes_against_mongod_not_mongos
|
||||
- requires_profiling
|
||||
# The following tests start their own ShardingTest or ReplSetTest, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -33,12 +33,12 @@ executor:
|
|||
# be part of this passthrough.
|
||||
eval: await import("jstests/libs/override_methods/detect_spawning_own_mongod.js");
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
|
|
|
|||
|
|
@ -2,27 +2,27 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/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_profiling
|
||||
# The following tests start their own ShardingTest or ReplSetTest, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
# 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_profiling
|
||||
# The following tests start their own ShardingTest or ReplSetTest, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -38,12 +38,12 @@ executor:
|
|||
await import("jstests/libs/override_methods/implicitly_shard_accessed_collections.js");
|
||||
await import("jstests/libs/override_methods/detect_spawning_own_mongod.js");
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 1
|
||||
|
|
|
|||
|
|
@ -2,27 +2,27 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- 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
|
||||
- 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
|
||||
##
|
||||
# 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
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -35,21 +35,21 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: majority
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
eval: >-
|
||||
globalThis.testingReplication = true;
|
||||
await import('jstests/libs/override_methods/set_read_and_write_concerns.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
|
||||
# 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
|
||||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
mongod_options:
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
num_nodes: 2
|
||||
|
|
|
|||
|
|
@ -6,16 +6,16 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
exclude_with_any_tags:
|
||||
# Used to tag tests which cannot run in the 'core_repeat_queries' or 'aggregation_repeat_queries' suites.
|
||||
- does_not_support_repeated_reads
|
||||
# By repeating queries when the profiler is enabled, we end up writing additional profiler entries.
|
||||
# Most tests using profiling are not prepared for these additional profiler entries.
|
||||
- requires_profiling
|
||||
# Used to tag tests which cannot run in the 'core_repeat_queries' or 'aggregation_repeat_queries' suites.
|
||||
- does_not_support_repeated_reads
|
||||
# By repeating queries when the profiler is enabled, we end up writing additional profiler entries.
|
||||
# Most tests using profiling are not prepared for these additional profiler entries.
|
||||
- requires_profiling
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -27,9 +27,9 @@ executor:
|
|||
await import("jstests/libs/override_methods/detect_spawning_own_mongod.js");
|
||||
await import("jstests/libs/override_methods/rerun_queries.js");
|
||||
hooks:
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: MongoDFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,38 +2,38 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
# The files in these directories contain utilities for use in other tests, not tests.
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# This test modifies the 'internalDocumentSourceGroupMaxMemoryBytes' parameter on the primary
|
||||
# node and would need to set it on every node in the replica set to run correctly when
|
||||
# performing secondary reads.
|
||||
- jstests/aggregation/sources/unionWith/unionWith.js
|
||||
# This test uses >100MB per node, which can overwhelm test hosts.
|
||||
- jstests/aggregation/sources/graphLookup/error.js
|
||||
# The files in these directories contain utilities for use in other tests, not tests.
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# This test modifies the 'internalDocumentSourceGroupMaxMemoryBytes' parameter on the primary
|
||||
# node and would need to set it on every node in the replica set to run correctly when
|
||||
# performing secondary reads.
|
||||
- jstests/aggregation/sources/unionWith/unionWith.js
|
||||
# This test uses >100MB per node, which can overwhelm test hosts.
|
||||
- jstests/aggregation/sources/graphLookup/error.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
#
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
# collStats and dbStats are not causally consistent.
|
||||
- requires_collstats
|
||||
- requires_dbstats
|
||||
# These tests attempt to read from the "system.profile" collection, which may be missing entries
|
||||
# if a write was performed on the primary of the replica set instead.
|
||||
- requires_profiling
|
||||
# These tests start their own ShardingTest, ReplicaSetTest, or mongods, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
- requires_spawning_own_processes
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
#
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
# collStats and dbStats are not causally consistent.
|
||||
- requires_collstats
|
||||
- requires_dbstats
|
||||
# These tests attempt to read from the "system.profile" collection, which may be missing entries
|
||||
# if a write was performed on the primary of the replica set instead.
|
||||
- requires_profiling
|
||||
# These tests start their own ShardingTest, ReplicaSetTest, or mongods, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
- requires_spawning_own_processes
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -48,14 +48,14 @@ executor:
|
|||
await import('jstests/libs/override_methods/enable_causal_consistency.js');
|
||||
await import('jstests/libs/override_methods/detect_spawning_own_mongod.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: 5
|
||||
# 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: 5
|
||||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,55 +2,55 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/aggregation/**/*.js
|
||||
exclude_files:
|
||||
# The files in these directories contain utilities for use in other tests, not tests.
|
||||
- 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/spill_to_disk.js
|
||||
# This test modifies internal parameter on primary node. In order for this test to run
|
||||
# successfully in this passthrough, it would need to run setParameter on every shardsvr in the
|
||||
# cluster.
|
||||
- jstests/aggregation/sources/unionWith/unionWith.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
# The files in these directories contain utilities for use in other tests, not tests.
|
||||
- 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/spill_to_disk.js
|
||||
# This test modifies internal parameter on primary node. In order for this test to run
|
||||
# successfully in this passthrough, it would need to run setParameter on every shardsvr in the
|
||||
# cluster.
|
||||
- jstests/aggregation/sources/unionWith/unionWith.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
exclude_with_any_tags:
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
#
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
# These tests assume that the 'db' object refers to unsharded cluster.
|
||||
- assumes_against_mongod_not_mongos
|
||||
# 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
|
||||
# These tests cannot work with 'implicitly_shard_accessed_collections.js' override.
|
||||
- assumes_no_implicit_collection_creation_after_drop
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
# collStats and dbStats are not causally consistent.
|
||||
- requires_collstats
|
||||
- requires_dbstats
|
||||
# These tests attempt to read from the "system.profile" collection, which may be missing entries
|
||||
# if a write was performed on the primary of the replica set instead.
|
||||
- requires_profiling
|
||||
# These tests start their own ShardingTest, ReplicaSetTest, or mongods, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
- requires_spawning_own_processes
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
#
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
# These tests assume that the 'db' object refers to unsharded cluster.
|
||||
- assumes_against_mongod_not_mongos
|
||||
# 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
|
||||
# These tests cannot work with 'implicitly_shard_accessed_collections.js' override.
|
||||
- assumes_no_implicit_collection_creation_after_drop
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
# collStats and dbStats are not causally consistent.
|
||||
- requires_collstats
|
||||
- requires_dbstats
|
||||
# These tests attempt to read from the "system.profile" collection, which may be missing entries
|
||||
# if a write was performed on the primary of the replica set instead.
|
||||
- requires_profiling
|
||||
# These tests start their own ShardingTest, ReplicaSetTest, or mongods, respectively.
|
||||
- requires_sharding
|
||||
- requires_replication
|
||||
- requires_spawning_own_processes
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -66,16 +66,16 @@ executor:
|
|||
await import('jstests/libs/override_methods/detect_spawning_own_mongod.js');
|
||||
await import("jstests/libs/override_methods/implicitly_shard_accessed_collections.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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
# 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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
|
|
|
|||
|
|
@ -2,35 +2,35 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- 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/spill_to_disk.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
# TODO SERVER-87318: Remove once it is fixed.
|
||||
- jstests/aggregation/sources/indexStats/verify_index_stats_output.js
|
||||
- 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/spill_to_disk.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
# TODO SERVER-87318: Remove once it is fixed.
|
||||
- jstests/aggregation/sources/indexStats/verify_index_stats_output.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
|
||||
# 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
|
||||
|
||||
# Embedded Router Exclusions:
|
||||
# Explicit auth is not supported in embedded router mode yet.
|
||||
|
|
@ -46,12 +46,12 @@ executor:
|
|||
shell_options:
|
||||
eval: await import("jstests/libs/override_methods/implicitly_shard_accessed_collections.js")
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,33 +2,33 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- 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/spill_to_disk.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/groupMissing.js
|
||||
- jstests/aggregation/sources/graphLookup/variables.js
|
||||
- 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/spill_to_disk.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
# TODO: Remove when SERVER-23229 is fixed.
|
||||
- jstests/aggregation/bugs/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
|
||||
# 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
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -40,12 +40,12 @@ executor:
|
|||
shell_options:
|
||||
eval: await import("jstests/libs/override_methods/implicitly_shard_accessed_collections.js")
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 2
|
||||
|
|
|
|||
|
|
@ -2,32 +2,32 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/libs/random_data_shard_suite_selftest.js
|
||||
- jstests/aggregation/**/*.js
|
||||
- jstests/libs/random_data_shard_suite_selftest.js
|
||||
exclude_files:
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
- jstests/aggregation/extras/*.js
|
||||
- jstests/aggregation/data/*.js
|
||||
# TODO SERVER-32311: These tests use getAggPlanStage(), which can't handle sharded explain output.
|
||||
- jstests/aggregation/match_swapping_renamed_fields.js
|
||||
- jstests/aggregation/use_query_project_and_sort.js
|
||||
- jstests/aggregation/use_query_projection.js
|
||||
- jstests/aggregation/use_query_sort.js
|
||||
|
||||
# These tests are written such that, after we check the engine being used and the colocation of
|
||||
# the involved collections, we drop and recreate our collections for each test case. Given that
|
||||
# this suite creates unsplittable collections on random shards and we cannot reliably check the
|
||||
# colocation of collections in these tests, this means that these tests are incompatible with
|
||||
# this suite as written.
|
||||
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_inlj.js
|
||||
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_nlj.js
|
||||
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_hj.js
|
||||
# These tests are written such that, after we check the engine being used and the colocation of
|
||||
# the involved collections, we drop and recreate our collections for each test case. Given that
|
||||
# this suite creates unsplittable collections on random shards and we cannot reliably check the
|
||||
# colocation of collections in these tests, this means that these tests are incompatible with
|
||||
# this suite as written.
|
||||
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_inlj.js
|
||||
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_nlj.js
|
||||
- jstests/aggregation/sources/lookup/lookup_equijoin_semantics_hj.js
|
||||
|
||||
# Includes expectations on failpoints being hit on specific shards.
|
||||
- jstests/aggregation/sources/indexStats/verify_index_stats_output.js
|
||||
# Includes expectations on failpoints being hit on specific shards.
|
||||
- jstests/aggregation/sources/indexStats/verify_index_stats_output.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_against_mongod_not_mongos
|
||||
- requires_profiling
|
||||
- assumes_against_mongod_not_mongos
|
||||
- requires_profiling
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -36,12 +36,12 @@ executor:
|
|||
- CheckMetadataConsistencyInBackground
|
||||
- ValidateCollections
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 2
|
||||
|
|
|
|||
|
|
@ -2,129 +2,129 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- 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 # serverStatus output doesn't have storageEngine.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js # capped collections.
|
||||
- jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js # profiling.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
- jstests/core/**/startup_log.js # "local" database.
|
||||
- jstests/core/**/tailable_cursor_invalidation.js # capped collections.
|
||||
- jstests/core/**/tailable_getmore_batch_size.js # capped collections.
|
||||
- jstests/core/**/tailable_skip_limit.js # capped collections.
|
||||
- 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/**/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.
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# Profile can only be run against the admin database on mongos.
|
||||
- jstests/core/txns/transactions_profiling.js
|
||||
- jstests/core/txns/transactions_profiling_with_drops.js
|
||||
# Implicitly creates a database through a collection rename, which does not work in a sharded
|
||||
# cluster. TODO SERVER-84330
|
||||
- jstests/core/txns/transactions_block_ddl.js
|
||||
# transactionLifetimeLimitSeconds parameter is not available in mongos.
|
||||
- jstests/core/txns/abort_expired_transaction.js
|
||||
- jstests/core/txns/abort_transaction_thread_does_not_block_on_locks.js
|
||||
- jstests/core/txns/kill_op_on_txn_expiry.js
|
||||
# Uses hangAfterCollectionInserts failpoint not available on mongos.
|
||||
- jstests/core/txns/speculative_snapshot_includes_all_writes.js
|
||||
# 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 # serverStatus output doesn't have storageEngine.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js # capped collections.
|
||||
- jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js # profiling.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
- jstests/core/**/startup_log.js # "local" database.
|
||||
- jstests/core/**/tailable_cursor_invalidation.js # capped collections.
|
||||
- jstests/core/**/tailable_getmore_batch_size.js # capped collections.
|
||||
- jstests/core/**/tailable_skip_limit.js # capped collections.
|
||||
- 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/**/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.
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# Profile can only be run against the admin database on mongos.
|
||||
- jstests/core/txns/transactions_profiling.js
|
||||
- jstests/core/txns/transactions_profiling_with_drops.js
|
||||
# Implicitly creates a database through a collection rename, which does not work in a sharded
|
||||
# cluster. TODO SERVER-84330
|
||||
- jstests/core/txns/transactions_block_ddl.js
|
||||
# transactionLifetimeLimitSeconds parameter is not available in mongos.
|
||||
- jstests/core/txns/abort_expired_transaction.js
|
||||
- jstests/core/txns/abort_transaction_thread_does_not_block_on_locks.js
|
||||
- jstests/core/txns/kill_op_on_txn_expiry.js
|
||||
# Uses hangAfterCollectionInserts failpoint not available on mongos.
|
||||
- jstests/core/txns/speculative_snapshot_includes_all_writes.js
|
||||
|
||||
# The following tests explicitly create collections inside multi-document transactions. These are
|
||||
# non-idempotent operations, and the implicit collection sharding logic upon collection access
|
||||
# results in premature collection creation, causing the tests to fail.
|
||||
- jstests/core/txns/create_collection.js
|
||||
- jstests/core/txns/create_collection_parallel.js
|
||||
- jstests/core/txns/create_indexes.js
|
||||
- jstests/core/txns/create_indexes_parallel.js
|
||||
# The following tests fail because they count indexes. These counts do not take into account the
|
||||
# additional hashed shard key indexes that are automatically added by this passthrough.
|
||||
- jstests/core/**/apitest_dbcollection.js
|
||||
- jstests/core/**/bad_index_plugin.js
|
||||
- jstests/core/**/create_indexes.js
|
||||
- jstests/core/**/list_indexes_non_existent_ns.js
|
||||
- jstests/core/**/mr_preserve_indexes.js
|
||||
# These tests fail because sharded clusters do not clean up correctly after failed index builds.
|
||||
# See SERVER-33207 as an example.
|
||||
- jstests/core/**/geo_borders.js
|
||||
# TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded
|
||||
# queries with a limit or for distinct commands.
|
||||
- jstests/core/**/distinct_index1.js
|
||||
- jstests/core/**/explain1.js
|
||||
- jstests/core/**/explain4.js
|
||||
- jstests/core/**/sortk.js
|
||||
# TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is
|
||||
# incorrect on sharded collections.
|
||||
- jstests/core/**/explain_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output.
|
||||
- jstests/core/**/expr_index_use.js
|
||||
- jstests/core/**/index_multikey.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
- jstests/core/**/bucket_unpacking_with_sort_extended_range.js
|
||||
# View tests aren't expected to work when collections are implicitly sharded.
|
||||
- jstests/core/txns/view_reads_in_transaction.js
|
||||
# The following test runs commands directly against shardsvr mongods. This causes the implicit
|
||||
# configure query sampling logic to fail since the configureQueryAnalyzer command is not supported
|
||||
# on shardsvr mongods.
|
||||
- jstests/core/**/column_store_index_compression.js
|
||||
# The following tests explicitly create collections inside multi-document transactions. These are
|
||||
# non-idempotent operations, and the implicit collection sharding logic upon collection access
|
||||
# results in premature collection creation, causing the tests to fail.
|
||||
- jstests/core/txns/create_collection.js
|
||||
- jstests/core/txns/create_collection_parallel.js
|
||||
- jstests/core/txns/create_indexes.js
|
||||
- jstests/core/txns/create_indexes_parallel.js
|
||||
# The following tests fail because they count indexes. These counts do not take into account the
|
||||
# additional hashed shard key indexes that are automatically added by this passthrough.
|
||||
- jstests/core/**/apitest_dbcollection.js
|
||||
- jstests/core/**/bad_index_plugin.js
|
||||
- jstests/core/**/create_indexes.js
|
||||
- jstests/core/**/list_indexes_non_existent_ns.js
|
||||
- jstests/core/**/mr_preserve_indexes.js
|
||||
# These tests fail because sharded clusters do not clean up correctly after failed index builds.
|
||||
# See SERVER-33207 as an example.
|
||||
- jstests/core/**/geo_borders.js
|
||||
# TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded
|
||||
# queries with a limit or for distinct commands.
|
||||
- jstests/core/**/distinct_index1.js
|
||||
- jstests/core/**/explain1.js
|
||||
- jstests/core/**/explain4.js
|
||||
- jstests/core/**/sortk.js
|
||||
# TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is
|
||||
# incorrect on sharded collections.
|
||||
- jstests/core/**/explain_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output.
|
||||
- jstests/core/**/expr_index_use.js
|
||||
- jstests/core/**/index_multikey.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
- jstests/core/**/bucket_unpacking_with_sort_extended_range.js
|
||||
# View tests aren't expected to work when collections are implicitly sharded.
|
||||
- jstests/core/txns/view_reads_in_transaction.js
|
||||
# The following test runs commands directly against shardsvr mongods. This causes the implicit
|
||||
# configure query sampling logic to fail since the configureQueryAnalyzer command is not supported
|
||||
# on shardsvr mongods.
|
||||
- jstests/core/**/column_store_index_compression.js
|
||||
|
||||
# The following test expects collections that have not been explicitly created to not exist so the
|
||||
# implicit shard accessed collection logic causes it to fail.
|
||||
- jstests/core/**/collection_uuid_index_commands.js
|
||||
# The following test requires the collection to be unsharded.
|
||||
- jstests/core/txns/finished_transaction_error_handling.js
|
||||
# The following test expects collections that have not been explicitly created to not exist so the
|
||||
# implicit shard accessed collection logic causes it to fail.
|
||||
- jstests/core/**/collection_uuid_index_commands.js
|
||||
# The following test requires the collection to be unsharded.
|
||||
- jstests/core/txns/finished_transaction_error_handling.js
|
||||
|
||||
# The following test fails because configureQueryAnalyzer is not allowed on QE collections
|
||||
- jstests/core/queryable_encryption/**/*.js
|
||||
# TODO SERVER-82471: Remove when we can use explain output instead of plan cache for verification.
|
||||
- jstests/core/query/query_settings/query_settings_index_application_aggregate.js
|
||||
- jstests/core/query/query_settings/query_settings_index_application_distinct.js
|
||||
- jstests/core/query/query_settings/query_settings_index_application_find.js
|
||||
# The following test doesn't support $lookup where one collection is sharded and the other is unsharded
|
||||
- jstests/core/query/explain/explain_find_trivially_false_predicates_in_agg_pipelines.js
|
||||
# The following test fails because configureQueryAnalyzer is not allowed on QE collections
|
||||
- jstests/core/queryable_encryption/**/*.js
|
||||
# TODO SERVER-82471: Remove when we can use explain output instead of plan cache for verification.
|
||||
- jstests/core/query/query_settings/query_settings_index_application_aggregate.js
|
||||
- jstests/core/query/query_settings/query_settings_index_application_distinct.js
|
||||
- jstests/core/query/query_settings/query_settings_index_application_find.js
|
||||
# The following test doesn't support $lookup where one collection is sharded and the other is unsharded
|
||||
- jstests/core/query/explain/explain_find_trivially_false_predicates_in_agg_pipelines.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_standalone_mongod
|
||||
# system.profile collection doesn't exist on mongos.
|
||||
- requires_profiling
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_standalone_mongod
|
||||
# system.profile collection doesn't exist on mongos.
|
||||
- requires_profiling
|
||||
|
||||
# Transactions are not allowed to operate on capped collections.
|
||||
- requires_capped
|
||||
# Prepare is not a command on mongos.
|
||||
- uses_prepare_transaction
|
||||
# Transactions are not allowed to operate on capped collections.
|
||||
- requires_capped
|
||||
# Prepare is not a command on mongos.
|
||||
- uses_prepare_transaction
|
||||
|
||||
# Tests tagged with the following will fail because they assume collections are not sharded.
|
||||
- assumes_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_collection_creation_on_get_collection
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
# Cannot retry a getMore command if a transient transaction or network error occurs during
|
||||
# it, since we won't know whether the cursor was advanced or not.
|
||||
- requires_getmore
|
||||
# Tests tagged with the following will fail because they assume collections are not sharded.
|
||||
- assumes_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_collection_creation_on_get_collection
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
# Cannot retry a getMore command if a transient transaction or network error occurs during
|
||||
# it, since we won't know whether the cursor was advanced or not.
|
||||
- requires_getmore
|
||||
|
||||
- uses_api_parameters
|
||||
- uses_api_parameters
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -138,14 +138,14 @@ executor:
|
|||
eval: >-
|
||||
await import("jstests/libs/override_methods/implicitly_configure_query_analyzer.js");
|
||||
hooks:
|
||||
- class: AnalyzeShardKeysInBackground
|
||||
- class: CheckReplOplogs
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: AnalyzeShardKeysInBackground
|
||||
- class: CheckReplOplogs
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 2
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- src/mongo/db/modules/*/jstests/audit/*.js
|
||||
- src/mongo/db/modules/*/jstests/audit/*.js
|
||||
|
||||
# audit tests start their own mongod's.
|
||||
executor:
|
||||
config:
|
||||
shell_options:
|
||||
nodb: ''
|
||||
nodb: ""
|
||||
|
|
|
|||
|
|
@ -2,10 +2,10 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/auth/*.js
|
||||
- jstests/auth/*.js
|
||||
exclude_files:
|
||||
# Skip until SERVER-25618 is resolved.
|
||||
- jstests/auth/repl.js
|
||||
# Skip until SERVER-25618 is resolved.
|
||||
- jstests/auth/repl.js
|
||||
|
||||
# Auth tests start their own mongod's.
|
||||
executor:
|
||||
|
|
@ -13,5 +13,5 @@ executor:
|
|||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
roleGraphInvalidationIsFatal: true
|
||||
nodb: ''
|
||||
roleGraphInvalidationIsFatal: true
|
||||
nodb: ""
|
||||
|
|
|
|||
|
|
@ -2,17 +2,17 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/auth/*.js
|
||||
- jstests/auth/*.js
|
||||
exclude_files:
|
||||
# Skip until SERVER-25618 is resolved.
|
||||
- jstests/auth/repl.js
|
||||
# Skip until SERVER-25618 is resolved.
|
||||
- jstests/auth/repl.js
|
||||
|
||||
# Auth tests start their own mongod's.
|
||||
executor:
|
||||
config:
|
||||
shell_options:
|
||||
nodb: ''
|
||||
nodb: ""
|
||||
global_vars:
|
||||
TestData:
|
||||
auditDestination: 'console'
|
||||
auditDestination: "console"
|
||||
roleGraphInvalidationIsFatal: true
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/abt_translation_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/abt_translation_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/abt_lowering_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/abt_lowering_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/path_lower_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/path_lower_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/bsoncolumn_bm*
|
||||
- build/install/bin/simple8b_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/bsoncolumn_bm*
|
||||
- build/install/bin/simple8b_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -6,69 +6,68 @@ selector:
|
|||
# defining a new test suite for your benchmarks. Doing so ensures they'll still run as part of the
|
||||
# Evergreen task associated with the new test suite.
|
||||
include_files:
|
||||
# Note: This list is manually curated based on https://docs.google.com/spreadsheets/d/1yK0JIM9fN6CS-KlnOl7BcdsWd5qdJtlILo9e3BCB8QQ/edit#gid=0
|
||||
# It will NOT automagically get updated if new benchmark-related tests are added.
|
||||
- build/install/bin/bson_bm*
|
||||
- build/install/bin/base64_bm*
|
||||
- build/install/bin/lock_manager_bm*
|
||||
- build/install/bin/uuid_bm*
|
||||
- build/install/bin/path_lower_bm*
|
||||
- build/install/bin/storage_record_id_bm*
|
||||
- build/install/bin/storage_wiredtiger_begin_transaction_block_bm*
|
||||
- build/install/bin/commands_bm*
|
||||
- build/install/bin/abt_lowering_bm*
|
||||
- build/install/bin/logv2_bm*
|
||||
- build/install/bin/condition_variable_bm*
|
||||
- build/install/bin/document_bm*
|
||||
- build/install/bin/decimal_counter_bm*
|
||||
- build/install/bin/endian_bm*
|
||||
- build/install/bin/clock_source_bm*
|
||||
- build/install/bin/quine_mccluskey_bm*
|
||||
- build/install/bin/string_bm*
|
||||
- build/install/bin/stacktrace_bm*
|
||||
- build/install/bin/storage_wiredtiger_index_bm*
|
||||
- build/install/bin/placement_history_bm*
|
||||
- build/install/bin/sbe_vm_bm*
|
||||
- build/install/bin/tick_source_bm*
|
||||
- build/install/bin/crypto_bm*
|
||||
- build/install/bin/system_resource_canary_bm*
|
||||
- build/install/bin/future_bm*
|
||||
# Note: This list is manually curated based on https://docs.google.com/spreadsheets/d/1yK0JIM9fN6CS-KlnOl7BcdsWd5qdJtlILo9e3BCB8QQ/edit#gid=0
|
||||
# It will NOT automagically get updated if new benchmark-related tests are added.
|
||||
- build/install/bin/bson_bm*
|
||||
- build/install/bin/base64_bm*
|
||||
- build/install/bin/lock_manager_bm*
|
||||
- build/install/bin/uuid_bm*
|
||||
- build/install/bin/path_lower_bm*
|
||||
- build/install/bin/storage_record_id_bm*
|
||||
- build/install/bin/storage_wiredtiger_begin_transaction_block_bm*
|
||||
- build/install/bin/commands_bm*
|
||||
- build/install/bin/abt_lowering_bm*
|
||||
- build/install/bin/logv2_bm*
|
||||
- build/install/bin/condition_variable_bm*
|
||||
- build/install/bin/document_bm*
|
||||
- build/install/bin/decimal_counter_bm*
|
||||
- build/install/bin/endian_bm*
|
||||
- build/install/bin/clock_source_bm*
|
||||
- build/install/bin/quine_mccluskey_bm*
|
||||
- build/install/bin/string_bm*
|
||||
- build/install/bin/stacktrace_bm*
|
||||
- build/install/bin/storage_wiredtiger_index_bm*
|
||||
- build/install/bin/placement_history_bm*
|
||||
- build/install/bin/sbe_vm_bm*
|
||||
- build/install/bin/tick_source_bm*
|
||||
- build/install/bin/crypto_bm*
|
||||
- build/install/bin/system_resource_canary_bm*
|
||||
- build/install/bin/future_bm*
|
||||
|
||||
exclude_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
# These benchmarks are being run as part of the benchmarks_sharding.yml test suite.
|
||||
- build/install/bin/chunk_manager_refresh_bm*
|
||||
- build/install/bin/migration_chunk_cloner_source_legacy_bm*
|
||||
- build/install/bin/sharding_write_router_bm*
|
||||
# These benchmarks included in the benchmarks_cst.yml test suite are disabled under SERVER-64949.
|
||||
# - build/install/bin/cst_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_bsoncolumn.yml test suite.
|
||||
- build/install/bin/bsoncolumn_bm*
|
||||
- build/install/bin/simple8b_bm*
|
||||
# Hash table benchmark is really slow, don't run on evergreen
|
||||
- build/install/bin/hash_table_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_query.yml
|
||||
- build/install/bin/percentile_algo_bm*
|
||||
- build/install/bin/window_function_percentile_bm*
|
||||
- build/install/bin/rate_limiting_bm*
|
||||
- build/install/bin/profile_filter_bm*
|
||||
- build/install/bin/plan_cache_key_encoding_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_expression*.yml
|
||||
- build/install/bin/expression_bm*
|
||||
- build/install/bin/sbe_expression_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_abt.yml test suite.
|
||||
- build/install/bin/abt_translation_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_streams.yml test suite.
|
||||
- build/install/bin/streams_operator_dag_bm*
|
||||
- build/install/bin/streams_window_operator_bm*
|
||||
# These benchmarks are only run when modifying or upgrading the immutable library.
|
||||
- build/install/bin/immutable_absl_comparison_bm*
|
||||
- build/install/bin/immutable_std_comparison_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_replication.yml test suite.
|
||||
- build/install/bin/oplog_application_bm*
|
||||
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
# These benchmarks are being run as part of the benchmarks_sharding.yml test suite.
|
||||
- build/install/bin/chunk_manager_refresh_bm*
|
||||
- build/install/bin/migration_chunk_cloner_source_legacy_bm*
|
||||
- build/install/bin/sharding_write_router_bm*
|
||||
# These benchmarks included in the benchmarks_cst.yml test suite are disabled under SERVER-64949.
|
||||
# - build/install/bin/cst_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_bsoncolumn.yml test suite.
|
||||
- build/install/bin/bsoncolumn_bm*
|
||||
- build/install/bin/simple8b_bm*
|
||||
# Hash table benchmark is really slow, don't run on evergreen
|
||||
- build/install/bin/hash_table_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_query.yml
|
||||
- build/install/bin/percentile_algo_bm*
|
||||
- build/install/bin/window_function_percentile_bm*
|
||||
- build/install/bin/rate_limiting_bm*
|
||||
- build/install/bin/profile_filter_bm*
|
||||
- build/install/bin/plan_cache_key_encoding_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_expression*.yml
|
||||
- build/install/bin/expression_bm*
|
||||
- build/install/bin/sbe_expression_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_abt.yml test suite.
|
||||
- build/install/bin/abt_translation_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_streams.yml test suite.
|
||||
- build/install/bin/streams_operator_dag_bm*
|
||||
- build/install/bin/streams_window_operator_bm*
|
||||
# These benchmarks are only run when modifying or upgrading the immutable library.
|
||||
- build/install/bin/immutable_absl_comparison_bm*
|
||||
- build/install/bin/immutable_std_comparison_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_replication.yml test suite.
|
||||
- build/install/bin/oplog_application_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,11 +4,11 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/namespace_string_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/namespace_string_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,19 +4,19 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/percentile_algo_bm*
|
||||
- build/install/bin/window_function_percentile_bm*
|
||||
- build/install/bin/rate_limiting_bm*
|
||||
- build/install/bin/shapifying_bm*
|
||||
- build/install/bin/profile_filter_bm*
|
||||
- build/install/bin/query_settings_lookup_bm*
|
||||
- build/install/bin/plan_cache_key_encoding_bm*
|
||||
- build/install/bin/canonical_query_bm*
|
||||
- build/install/bin/query_planner_bm*
|
||||
- build/install/bin/plan_cache_classic_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/percentile_algo_bm*
|
||||
- build/install/bin/window_function_percentile_bm*
|
||||
- build/install/bin/rate_limiting_bm*
|
||||
- build/install/bin/shapifying_bm*
|
||||
- build/install/bin/profile_filter_bm*
|
||||
- build/install/bin/query_settings_lookup_bm*
|
||||
- build/install/bin/plan_cache_key_encoding_bm*
|
||||
- build/install/bin/canonical_query_bm*
|
||||
- build/install/bin/query_planner_bm*
|
||||
- build/install/bin/plan_cache_classic_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -3,15 +3,15 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/op_observer_bm*
|
||||
- build/install/bin/oplog_application_bm*
|
||||
- build/install/bin/oplog_applier_utils_bm*
|
||||
- build/install/bin/oplog_entry_bm*
|
||||
- build/install/bin/replication_consistency_markers_impl_bm*
|
||||
- build/install/bin/oplog_write_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/op_observer_bm*
|
||||
- build/install/bin/oplog_application_bm*
|
||||
- build/install/bin/oplog_applier_utils_bm*
|
||||
- build/install/bin/oplog_entry_bm*
|
||||
- build/install/bin/replication_consistency_markers_impl_bm*
|
||||
- build/install/bin/oplog_write_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -10,68 +10,67 @@ selector:
|
|||
# from benchmarks.txt, and then subtract the entries from benchmarks_first_half.yml (see below).
|
||||
|
||||
exclude_files:
|
||||
# Exclude everything from benchmarks_first_half.yml:
|
||||
- build/install/bin/bson_bm*
|
||||
- build/install/bin/base64_bm*
|
||||
- build/install/bin/lock_manager_bm*
|
||||
- build/install/bin/uuid_bm*
|
||||
- build/install/bin/path_lower_bm*
|
||||
- build/install/bin/storage_record_id_bm*
|
||||
- build/install/bin/storage_wiredtiger_begin_transaction_block_bm*
|
||||
- build/install/bin/commands_bm*
|
||||
- build/install/bin/abt_lowering_bm*
|
||||
- build/install/bin/logv2_bm*
|
||||
- build/install/bin/condition_variable_bm*
|
||||
- build/install/bin/document_bm*
|
||||
- build/install/bin/decimal_counter_bm*
|
||||
- build/install/bin/endian_bm*
|
||||
- build/install/bin/clock_source_bm*
|
||||
- build/install/bin/quine_mccluskey_bm*
|
||||
- build/install/bin/string_bm*
|
||||
- build/install/bin/stacktrace_bm*
|
||||
- build/install/bin/storage_wiredtiger_index_bm*
|
||||
- build/install/bin/placement_history_bm*
|
||||
- build/install/bin/sbe_vm_bm*
|
||||
- build/install/bin/tick_source_bm*
|
||||
- build/install/bin/crypto_bm*
|
||||
- build/install/bin/system_resource_canary_bm*
|
||||
- build/install/bin/future_bm*
|
||||
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
# These benchmarks are being run as part of the benchmarks_sharding.yml test suite.
|
||||
- build/install/bin/chunk_manager_refresh_bm*
|
||||
- build/install/bin/migration_chunk_cloner_source_legacy_bm*
|
||||
- build/install/bin/sharding_write_router_bm*
|
||||
# These benchmarks included in the benchmarks_cst.yml test suite are disabled under SERVER-64949.
|
||||
# - build/install/bin/cst_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_bsoncolumn.yml test suite.
|
||||
- build/install/bin/bsoncolumn_bm*
|
||||
- build/install/bin/simple8b_bm*
|
||||
# Hash table benchmark is really slow, don't run on evergreen
|
||||
- build/install/bin/hash_table_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_query.yml
|
||||
- build/install/bin/percentile_algo_bm*
|
||||
- build/install/bin/window_function_percentile_bm*
|
||||
- build/install/bin/rate_limiting_bm*
|
||||
- build/install/bin/profile_filter_bm*
|
||||
- build/install/bin/plan_cache_key_encoding_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_expression*.yml
|
||||
- build/install/bin/expression_bm*
|
||||
- build/install/bin/sbe_expression_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_abt.yml test suite.
|
||||
- build/install/bin/abt_translation_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_streams.yml test suite.
|
||||
- build/install/bin/streams_operator_dag_bm*
|
||||
- build/install/bin/streams_window_operator_bm*
|
||||
# These benchmarks are only run when modifying or upgrading the immutable library.
|
||||
- build/install/bin/immutable_absl_comparison_bm*
|
||||
- build/install/bin/immutable_std_comparison_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_replication.yml test suite.
|
||||
- build/install/bin/oplog_application_bm*
|
||||
- build/install/bin/oplog_applier_utils_bm*
|
||||
# Exclude everything from benchmarks_first_half.yml:
|
||||
- build/install/bin/bson_bm*
|
||||
- build/install/bin/base64_bm*
|
||||
- build/install/bin/lock_manager_bm*
|
||||
- build/install/bin/uuid_bm*
|
||||
- build/install/bin/path_lower_bm*
|
||||
- build/install/bin/storage_record_id_bm*
|
||||
- build/install/bin/storage_wiredtiger_begin_transaction_block_bm*
|
||||
- build/install/bin/commands_bm*
|
||||
- build/install/bin/abt_lowering_bm*
|
||||
- build/install/bin/logv2_bm*
|
||||
- build/install/bin/condition_variable_bm*
|
||||
- build/install/bin/document_bm*
|
||||
- build/install/bin/decimal_counter_bm*
|
||||
- build/install/bin/endian_bm*
|
||||
- build/install/bin/clock_source_bm*
|
||||
- build/install/bin/quine_mccluskey_bm*
|
||||
- build/install/bin/string_bm*
|
||||
- build/install/bin/stacktrace_bm*
|
||||
- build/install/bin/storage_wiredtiger_index_bm*
|
||||
- build/install/bin/placement_history_bm*
|
||||
- build/install/bin/sbe_vm_bm*
|
||||
- build/install/bin/tick_source_bm*
|
||||
- build/install/bin/crypto_bm*
|
||||
- build/install/bin/system_resource_canary_bm*
|
||||
- build/install/bin/future_bm*
|
||||
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
# These benchmarks are being run as part of the benchmarks_sharding.yml test suite.
|
||||
- build/install/bin/chunk_manager_refresh_bm*
|
||||
- build/install/bin/migration_chunk_cloner_source_legacy_bm*
|
||||
- build/install/bin/sharding_write_router_bm*
|
||||
# These benchmarks included in the benchmarks_cst.yml test suite are disabled under SERVER-64949.
|
||||
# - build/install/bin/cst_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_bsoncolumn.yml test suite.
|
||||
- build/install/bin/bsoncolumn_bm*
|
||||
- build/install/bin/simple8b_bm*
|
||||
# Hash table benchmark is really slow, don't run on evergreen
|
||||
- build/install/bin/hash_table_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_query.yml
|
||||
- build/install/bin/percentile_algo_bm*
|
||||
- build/install/bin/window_function_percentile_bm*
|
||||
- build/install/bin/rate_limiting_bm*
|
||||
- build/install/bin/profile_filter_bm*
|
||||
- build/install/bin/plan_cache_key_encoding_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_expression*.yml
|
||||
- build/install/bin/expression_bm*
|
||||
- build/install/bin/sbe_expression_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_abt.yml test suite.
|
||||
- build/install/bin/abt_translation_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_streams.yml test suite.
|
||||
- build/install/bin/streams_operator_dag_bm*
|
||||
- build/install/bin/streams_window_operator_bm*
|
||||
# These benchmarks are only run when modifying or upgrading the immutable library.
|
||||
- build/install/bin/immutable_absl_comparison_bm*
|
||||
- build/install/bin/immutable_std_comparison_bm*
|
||||
# These benchmarks are being run as part of the benchmarks_replication.yml test suite.
|
||||
- build/install/bin/oplog_application_bm*
|
||||
- build/install/bin/oplog_applier_utils_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/service_entry_point_common_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/install/bin/service_entry_point_common_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -3,13 +3,13 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/chunk_manager_refresh_bm*
|
||||
- build/install/bin/migration_chunk_cloner_source_legacy_bm*
|
||||
- build/install/bin/sharding_write_router_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/chunk_manager_refresh_bm*
|
||||
- build/install/bin/migration_chunk_cloner_source_legacy_bm*
|
||||
- build/install/bin/sharding_write_router_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -4,12 +4,12 @@ test_kind: benchmark_test
|
|||
selector:
|
||||
root: build/benchmarks.txt
|
||||
include_files:
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/streams_operator_dag_bm*
|
||||
- build/install/bin/streams_window_operator_bm*
|
||||
# The trailing asterisk is for handling the .exe extension on Windows.
|
||||
- build/**/system_resource_canary_bm*
|
||||
- build/install/bin/streams_operator_dag_bm*
|
||||
- build/install/bin/streams_window_operator_bm*
|
||||
|
||||
executor:
|
||||
config: {}
|
||||
hooks:
|
||||
- class: GenerateAndCheckPerfResults
|
||||
- class: GenerateAndCheckPerfResults
|
||||
|
|
|
|||
|
|
@ -2,15 +2,14 @@ test_kind: py_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- buildscripts/tests/**/test_*.py
|
||||
- buildscripts/idl/tests/**/test_*.py
|
||||
- buildscripts/tests/**/test_*.py
|
||||
- buildscripts/idl/tests/**/test_*.py
|
||||
exclude_files:
|
||||
# These tests are also @unittest.skip'ed. SERVER-48969 tracks re-enabling them.
|
||||
- buildscripts/tests/resmokelib/test_selector.py # Test assumes POSIX path.
|
||||
- buildscripts/tests/resmokelib/utils/test_archival.py # Requires boto3.
|
||||
- buildscripts/tests/resmokelib/powercycle/test_remote_operations.py # Requires ssh to be enabled locally.
|
||||
- buildscripts/tests/resmoke_end2end/**/test_*.py # Requires compile task. Test run in resmoke_end2end_tests.yml instead.
|
||||
- buildscripts/tests/resmoke_validation/**/test_*.py # Ran in commit queue in resmoke_validation_tests
|
||||
|
||||
# These tests are also @unittest.skip'ed. SERVER-48969 tracks re-enabling them.
|
||||
- buildscripts/tests/resmokelib/test_selector.py # Test assumes POSIX path.
|
||||
- buildscripts/tests/resmokelib/utils/test_archival.py # Requires boto3.
|
||||
- buildscripts/tests/resmokelib/powercycle/test_remote_operations.py # Requires ssh to be enabled locally.
|
||||
- buildscripts/tests/resmoke_end2end/**/test_*.py # Requires compile task. Test run in resmoke_end2end_tests.yml instead.
|
||||
- buildscripts/tests/resmoke_validation/**/test_*.py # Ran in commit queue in resmoke_validation_tests
|
||||
|
||||
executor: {}
|
||||
|
|
|
|||
|
|
@ -2,168 +2,167 @@ test_kind: bulk_write_cluster_js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
exclude_files:
|
||||
# Excludes from replica set jscore passthrough
|
||||
# Excludes from replica set jscore passthrough
|
||||
|
||||
# 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
|
||||
# BulkWrite profiling and currentOp output format is not the same as normal writes.
|
||||
- jstests/core/**/profile*.js
|
||||
- jstests/core/comment_field.js
|
||||
- jstests/core/fsync.js
|
||||
# Runs an update with illegal format (no 'updates'). We could work around this in the override
|
||||
# but it is very annoying.
|
||||
- jstests/core/write/insert/batch_write_command_insert.js
|
||||
- jstests/core/write/update/batch_write_command_update.js
|
||||
- jstests/core/write/delete/batch_write_command_delete.js
|
||||
# Requires specific commands to be run to trigger failpoint (i.e. requires insert, we run bulkWrite).
|
||||
- jstests/core/failcommand_failpoint.js
|
||||
# This test adds unknown fields to insert/update/delete ops which we ignore
|
||||
- jstests/core/write/write_commands_reject_unknown_fields.js
|
||||
# Checks for op names which bulkWrite will not show up as
|
||||
- jstests/core/txns/transactions_profiling.js
|
||||
- jstests/core/txns/currentop_blocked_operations.js
|
||||
# Checks for collation at top level in profile
|
||||
- jstests/core/txns/transactions_profiling_with_drops.js
|
||||
# The conditions of this test returns a different error for delete compared to the function bulkWrite uses.
|
||||
# bulkWrite is consistent with the other CRUD operations here.
|
||||
- jstests/core/txns/multi_statement_transaction_write_error.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
|
||||
# BulkWrite profiling and currentOp output format is not the same as normal writes.
|
||||
- jstests/core/**/profile*.js
|
||||
- jstests/core/comment_field.js
|
||||
- jstests/core/fsync.js
|
||||
# Runs an update with illegal format (no 'updates'). We could work around this in the override
|
||||
# but it is very annoying.
|
||||
- jstests/core/write/insert/batch_write_command_insert.js
|
||||
- jstests/core/write/update/batch_write_command_update.js
|
||||
- jstests/core/write/delete/batch_write_command_delete.js
|
||||
# Requires specific commands to be run to trigger failpoint (i.e. requires insert, we run bulkWrite).
|
||||
- jstests/core/failcommand_failpoint.js
|
||||
# This test adds unknown fields to insert/update/delete ops which we ignore
|
||||
- jstests/core/write/write_commands_reject_unknown_fields.js
|
||||
# Checks for op names which bulkWrite will not show up as
|
||||
- jstests/core/txns/transactions_profiling.js
|
||||
- jstests/core/txns/currentop_blocked_operations.js
|
||||
# Checks for collation at top level in profile
|
||||
- jstests/core/txns/transactions_profiling_with_drops.js
|
||||
# The conditions of this test returns a different error for delete compared to the function bulkWrite uses.
|
||||
# bulkWrite is consistent with the other CRUD operations here.
|
||||
- jstests/core/txns/multi_statement_transaction_write_error.js
|
||||
|
||||
# Multiple cluster specific exclusions
|
||||
|
||||
# Multiple cluster specific exclusions
|
||||
# Don't run transaction specific tests.
|
||||
- jstests/core/txns/**/*.js
|
||||
|
||||
# Don't run transaction specific tests.
|
||||
- jstests/core/txns/**/*.js
|
||||
# Uses a timestamp in query which causes mismatch between clusters
|
||||
- jstests/core/write/update/update_currentdate_examples.js
|
||||
- jstests/core/write/update/update_affects_indexes.js
|
||||
- jstests/core/index/index_arr2.js
|
||||
- jstests/core/index/index_stats.js
|
||||
- jstests/core/ts1.js
|
||||
- jstests/core/compare_timestamps.js
|
||||
- jstests/core/command_let_variables.js
|
||||
- jstests/core/write/update/update_min_max_examples.js
|
||||
- jstests/core/write/update/update_arrayFilters.js
|
||||
- jstests/core/index/wildcard/wildcard_index_type.js
|
||||
- jstests/core/txns/no_writes_to_config_transactions_with_prepared_transaction.js
|
||||
- jstests/core/query/type/type3.js
|
||||
- jstests/core/txns/commit_prepared_transaction.js
|
||||
- jstests/core/timeseries/**/*.js
|
||||
- jstests/core/txns/timeseries/timeseries_reads_in_txns.js
|
||||
- jstests/core/txns/timeseries_insert_in_txn.js
|
||||
- jstests/core/txns/txn_ops_allowed_on_buckets_coll.js
|
||||
|
||||
# Uses a timestamp in query which causes mismatch between clusters
|
||||
- jstests/core/write/update/update_currentdate_examples.js
|
||||
- jstests/core/write/update/update_affects_indexes.js
|
||||
- jstests/core/index/index_arr2.js
|
||||
- jstests/core/index/index_stats.js
|
||||
- jstests/core/ts1.js
|
||||
- jstests/core/compare_timestamps.js
|
||||
- jstests/core/command_let_variables.js
|
||||
- jstests/core/write/update/update_min_max_examples.js
|
||||
- jstests/core/write/update/update_arrayFilters.js
|
||||
- jstests/core/index/wildcard/wildcard_index_type.js
|
||||
- jstests/core/txns/no_writes_to_config_transactions_with_prepared_transaction.js
|
||||
- jstests/core/query/type/type3.js
|
||||
- jstests/core/txns/commit_prepared_transaction.js
|
||||
- jstests/core/timeseries/**/*.js
|
||||
- jstests/core/txns/timeseries/timeseries_reads_in_txns.js
|
||||
- jstests/core/txns/timeseries_insert_in_txn.js
|
||||
- jstests/core/txns/txn_ops_allowed_on_buckets_coll.js
|
||||
# Multiple cluster override does not support QE
|
||||
- jstests/core/queryable_encryption/*.js
|
||||
|
||||
# Multiple cluster override does not support QE
|
||||
- jstests/core/queryable_encryption/*.js
|
||||
# Batching causes us to go over BSON max obj size for request
|
||||
- jstests/core/query/find/find_getmore_bsonsize.js
|
||||
- jstests/core/txns/commit_and_abort_large_unprepared_transactions.js
|
||||
- jstests/core/query/sort/sortb.js
|
||||
- jstests/core/capped/capped_large_docs.js
|
||||
- jstests/core/query/sort/sortf.js
|
||||
- jstests/core/txns/commit_and_abort_large_prepared_transactions.js
|
||||
|
||||
# Batching causes us to go over BSON max obj size for request
|
||||
- jstests/core/query/find/find_getmore_bsonsize.js
|
||||
- jstests/core/txns/commit_and_abort_large_unprepared_transactions.js
|
||||
- jstests/core/query/sort/sortb.js
|
||||
- jstests/core/capped/capped_large_docs.js
|
||||
- jstests/core/query/sort/sortf.js
|
||||
- jstests/core/txns/commit_and_abort_large_prepared_transactions.js
|
||||
# Uses mongod generated UUID which is different between the clusters
|
||||
- jstests/core/write/collection_uuid_write_commands.js
|
||||
|
||||
# Uses mongod generated UUID which is different between the clusters
|
||||
- jstests/core/write/collection_uuid_write_commands.js
|
||||
# update with $ modifiers can sometimes change field ordering
|
||||
- jstests/core/write/update/update5.js
|
||||
- jstests/core/write/update/upsert_and.js
|
||||
- jstests/core/server1470.js
|
||||
- jstests/core/query/rename/rename_operator_missing_source.js
|
||||
|
||||
# update with $ modifiers can sometimes change field ordering
|
||||
- jstests/core/write/update/update5.js
|
||||
- jstests/core/write/update/upsert_and.js
|
||||
- jstests/core/server1470.js
|
||||
- jstests/core/query/rename/rename_operator_missing_source.js
|
||||
# requires parameter not supported by override
|
||||
- jstests/core/write/crud_ops_do_not_throw_locktimeout.js
|
||||
- jstests/core/command_json_schema_field.js
|
||||
- jstests/core/api/api_version_test_expression.js
|
||||
- jstests/core/api/api_version_parameters.js
|
||||
- jstests/core/query/mr/mr_null_arguments.js
|
||||
- jstests/core/txns/prepare_transaction_unique_index_conflict.js
|
||||
- jstests/core/txns/no_snapshot_writes_outside_txn.js
|
||||
|
||||
# requires parameter not supported by override
|
||||
- jstests/core/write/crud_ops_do_not_throw_locktimeout.js
|
||||
- jstests/core/command_json_schema_field.js
|
||||
- jstests/core/api/api_version_test_expression.js
|
||||
- jstests/core/api/api_version_parameters.js
|
||||
- jstests/core/query/mr/mr_null_arguments.js
|
||||
- jstests/core/txns/prepare_transaction_unique_index_conflict.js
|
||||
- jstests/core/txns/no_snapshot_writes_outside_txn.js
|
||||
# override does not suppot benchRun
|
||||
- jstests/core/benchrun_pipeline_updates.js
|
||||
- jstests/core/bench_test1.js
|
||||
|
||||
# override does not suppot benchRun
|
||||
- jstests/core/benchrun_pipeline_updates.js
|
||||
- jstests/core/bench_test1.js
|
||||
# errors out due to invalid DB name
|
||||
- jstests/core/query/invalid_db_name.js
|
||||
|
||||
# errors out due to invalid DB name
|
||||
- jstests/core/query/invalid_db_name.js
|
||||
# parallel processing causes race conditions in these tests
|
||||
- jstests/core/local_tail_capped.js
|
||||
- jstests/core/txns/transactions_block_ddl.js
|
||||
- jstests/core/txns/kill_op_on_txn_expiry.js
|
||||
- jstests/core/txns/write_conflicts_with_non_txns.js
|
||||
|
||||
# parallel processing causes race conditions in these tests
|
||||
- jstests/core/local_tail_capped.js
|
||||
- jstests/core/txns/transactions_block_ddl.js
|
||||
- jstests/core/txns/kill_op_on_txn_expiry.js
|
||||
- jstests/core/txns/write_conflicts_with_non_txns.js
|
||||
# the deep copy we use does not deep copy arrays of objects which can be modified after we save them
|
||||
- jstests/core/index/wildcard/wildcard_index_multikey.js
|
||||
- jstests/core/index/wildcard/wildcard_index_basic_index_bounds.js
|
||||
- jstests/core/write/update/updatea.js
|
||||
|
||||
# the deep copy we use does not deep copy arrays of objects which can be modified after we save them
|
||||
- jstests/core/index/wildcard/wildcard_index_multikey.js
|
||||
- jstests/core/index/wildcard/wildcard_index_basic_index_bounds.js
|
||||
- jstests/core/write/update/updatea.js
|
||||
# batching can cause planCache to be different than expectations
|
||||
- jstests/core/sbe_plan_cache_duplicate_or_clauses.js
|
||||
- jstests/core/query/sbe_plan_cache_autoparameterize_ixscan.js
|
||||
- jstests/core/index/index_filter_commands_invalidate_plan_cache_entries.js
|
||||
- jstests/core/query/plan_cache/plan_cache_sbe.js
|
||||
|
||||
# batching can cause planCache to be different than expectations
|
||||
- jstests/core/sbe_plan_cache_duplicate_or_clauses.js
|
||||
- jstests/core/query/sbe_plan_cache_autoparameterize_ixscan.js
|
||||
- jstests/core/index/index_filter_commands_invalidate_plan_cache_entries.js
|
||||
- jstests/core/query/plan_cache/plan_cache_sbe.js
|
||||
# bulkWrite and delete use different parsing for the multi field
|
||||
- jstests/core/write/batch_write_command_w0.js
|
||||
|
||||
# bulkWrite and delete use different parsing for the multi field
|
||||
- jstests/core/write/batch_write_command_w0.js
|
||||
# Checks for specific sessions to exist
|
||||
- jstests/core/administrative/list_sessions.js
|
||||
|
||||
# Checks for specific sessions to exist
|
||||
- jstests/core/administrative/list_sessions.js
|
||||
# Tries to run a command without a session which we add in and gives different results
|
||||
- jstests/core/txns/multi_statement_transaction_command_args.js
|
||||
|
||||
# Tries to run a command without a session which we add in and gives different results
|
||||
- jstests/core/txns/multi_statement_transaction_command_args.js
|
||||
# Incompatible with enable_sessions.js
|
||||
- jstests/core/txns/shell_prompt_in_transaction.js
|
||||
- jstests/core/write/crud_api.js
|
||||
|
||||
# Incompatible with enable_sessions.js
|
||||
- jstests/core/txns/shell_prompt_in_transaction.js
|
||||
- jstests/core/write/crud_api.js
|
||||
# Uses multiple sessions which the override is incapable of doing.
|
||||
- jstests/core/txns/multi_statement_transaction_abort.js
|
||||
- jstests/core/txns/commit_prepared_transaction_errors.js
|
||||
- jstests/core/txns/create_collection_parallel.js
|
||||
- jstests/core/txns/prepare_conflict_aggregation_behavior.js
|
||||
- jstests/core/txns/many_txns.js
|
||||
- jstests/core/txns/create_indexes_parallel.js
|
||||
- jstests/core/txns/repeatable_reads_in_transaction.js
|
||||
|
||||
# Uses multiple sessions which the override is incapable of doing.
|
||||
- jstests/core/txns/multi_statement_transaction_abort.js
|
||||
- jstests/core/txns/commit_prepared_transaction_errors.js
|
||||
- jstests/core/txns/create_collection_parallel.js
|
||||
- jstests/core/txns/prepare_conflict_aggregation_behavior.js
|
||||
- jstests/core/txns/many_txns.js
|
||||
- jstests/core/txns/create_indexes_parallel.js
|
||||
- jstests/core/txns/repeatable_reads_in_transaction.js
|
||||
# requires use of specific transaction numbers (override uses its own)
|
||||
- jstests/core/txns/finished_transaction_error_handling.js
|
||||
|
||||
# requires use of specific transaction numbers (override uses its own)
|
||||
- jstests/core/txns/finished_transaction_error_handling.js
|
||||
# ambiguous multi:false update can target different document on each cluster
|
||||
- jstests/core/index/hashed/hashed_index_with_arrays.js
|
||||
|
||||
# ambiguous multi:false update can target different document on each cluster
|
||||
- jstests/core/index/hashed/hashed_index_with_arrays.js
|
||||
# Does not expect a replica set connection string.
|
||||
- jstests/core/**/connection_string_validation.js
|
||||
|
||||
# Does not expect a replica set connection string.
|
||||
- jstests/core/**/connection_string_validation.js
|
||||
# Grabs specific stats from mongod directly which causes failure due to there being
|
||||
# multiple clusters.
|
||||
- jstests/core/administrative/current_op/currentop_cursors.js
|
||||
- jstests/core/operation_latency_histogram.js
|
||||
- jstests/core/views/views_stats.js
|
||||
|
||||
# Grabs specific stats from mongod directly which causes failure due to there being
|
||||
# multiple clusters.
|
||||
- jstests/core/administrative/current_op/currentop_cursors.js
|
||||
- jstests/core/operation_latency_histogram.js
|
||||
- jstests/core/views/views_stats.js
|
||||
|
||||
# Sets cluster parameters, which do writes with timestamps that will vary b/w clusters.
|
||||
- jstests/core/cluster_parameter_commands.js
|
||||
# Sets cluster parameters, which do writes with timestamps that will vary b/w clusters.
|
||||
- jstests/core/cluster_parameter_commands.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_standalone_mongod
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
- uses_transactions
|
||||
- requires_profiling
|
||||
- requires_getmore
|
||||
- uses_parallel_shell
|
||||
# creates a prepare timestamp for each cluster, corresponding commits can fail if
|
||||
# the prepare on the bulkWrite cluster is later than the commit on the normal
|
||||
- uses_prepare_transaction
|
||||
# auth does not get correctly applied to both clusters
|
||||
- requires_auth
|
||||
- assumes_standalone_mongod
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
- uses_transactions
|
||||
- requires_profiling
|
||||
- requires_getmore
|
||||
- uses_parallel_shell
|
||||
# creates a prepare timestamp for each cluster, corresponding commits can fail if
|
||||
# the prepare on the bulkWrite cluster is later than the commit on the normal
|
||||
- uses_prepare_transaction
|
||||
# auth does not get correctly applied to both clusters
|
||||
- requires_auth
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -182,14 +181,14 @@ executor:
|
|||
await import('jstests/libs/override_methods/multiple_crud_ops_as_bulk_write.js');
|
||||
await import('jstests/libs/override_methods/enable_causal_consistency.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
|
||||
# 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: BulkWriteFixture
|
||||
cluster_options:
|
||||
|
|
|
|||
|
|
@ -2,210 +2,210 @@ test_kind: bulk_write_cluster_js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
exclude_files:
|
||||
# These tests run in the jscore_txn passthrough suites.
|
||||
- jstests/core/txns/**/*.js
|
||||
# These tests run in the jscore_txn passthrough suites.
|
||||
- jstests/core/txns/**/*.js
|
||||
|
||||
# The following tests fail because a certain command or functionality is not supported by
|
||||
# mongos. This command or functionality is placed in a comment next to the failing test.
|
||||
- jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js # capped collections.
|
||||
- jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js # profiling.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
- jstests/core/**/startup_log.js # "local" database.
|
||||
- jstests/core/**/tailable_cursor_invalidation.js # capped collections.
|
||||
- jstests/core/**/tailable_getmore_batch_size.js # capped collections.
|
||||
- jstests/core/**/tailable_skip_limit.js # capped collections.
|
||||
- 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/**/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.
|
||||
# The following tests fail because they count indexes. These counts do not take into account the
|
||||
# additional hashed shard key indexes that are automatically added by this passthrough.
|
||||
- jstests/core/**/apitest_dbcollection.js
|
||||
- jstests/core/**/bad_index_plugin.js
|
||||
- jstests/core/**/create_indexes.js
|
||||
- jstests/core/**/list_indexes_non_existent_ns.js
|
||||
- jstests/core/**/mr_preserve_indexes.js
|
||||
# These tests fail because sharded clusters do not clean up correctly after failed index builds.
|
||||
# See SERVER-33207 as an example.
|
||||
- jstests/core/**/geo_borders.js
|
||||
# TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded
|
||||
# queries with a limit or for distinct commands.
|
||||
- jstests/core/**/distinct_index1.js
|
||||
- jstests/core/**/explain1.js
|
||||
- jstests/core/**/explain4.js
|
||||
- jstests/core/**/sortk.js
|
||||
# TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is
|
||||
# incorrect on sharded collections.
|
||||
- jstests/core/**/explain_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output.
|
||||
- jstests/core/**/expr_index_use.js
|
||||
- jstests/core/**/index_multikey.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
# The following tests fail because a certain command or functionality is not supported by
|
||||
# mongos. This command or functionality is placed in a comment next to the failing test.
|
||||
- jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js # capped collections.
|
||||
- jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js # profiling.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
- jstests/core/**/startup_log.js # "local" database.
|
||||
- jstests/core/**/tailable_cursor_invalidation.js # capped collections.
|
||||
- jstests/core/**/tailable_getmore_batch_size.js # capped collections.
|
||||
- jstests/core/**/tailable_skip_limit.js # capped collections.
|
||||
- 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/**/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.
|
||||
# The following tests fail because they count indexes. These counts do not take into account the
|
||||
# additional hashed shard key indexes that are automatically added by this passthrough.
|
||||
- jstests/core/**/apitest_dbcollection.js
|
||||
- jstests/core/**/bad_index_plugin.js
|
||||
- jstests/core/**/create_indexes.js
|
||||
- jstests/core/**/list_indexes_non_existent_ns.js
|
||||
- jstests/core/**/mr_preserve_indexes.js
|
||||
# These tests fail because sharded clusters do not clean up correctly after failed index builds.
|
||||
# See SERVER-33207 as an example.
|
||||
- jstests/core/**/geo_borders.js
|
||||
# TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded
|
||||
# queries with a limit or for distinct commands.
|
||||
- jstests/core/**/distinct_index1.js
|
||||
- jstests/core/**/explain1.js
|
||||
- jstests/core/**/explain4.js
|
||||
- jstests/core/**/sortk.js
|
||||
# TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is
|
||||
# incorrect on sharded collections.
|
||||
- jstests/core/**/explain_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output.
|
||||
- jstests/core/**/expr_index_use.js
|
||||
- jstests/core/**/index_multikey.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
|
||||
# ----------------------------------------
|
||||
# Multiple cluster specific exclusions
|
||||
# ----------------------------------------
|
||||
# ----------------------------------------
|
||||
# Multiple cluster specific exclusions
|
||||
# ----------------------------------------
|
||||
|
||||
# Don't run transaction specific tests.
|
||||
- jstests/core/txns/**/*.js
|
||||
# Don't run transaction specific tests.
|
||||
- jstests/core/txns/**/*.js
|
||||
|
||||
# Uses a timestamp in query which causes mismatch between clusters
|
||||
- jstests/core/write/update/update_currentdate_examples.js
|
||||
- jstests/core/write/update/update_affects_indexes.js
|
||||
- jstests/core/index/index_arr2.js
|
||||
- jstests/core/index/index_stats.js
|
||||
- jstests/core/ts1.js
|
||||
- jstests/core/compare_timestamps.js
|
||||
- jstests/core/command_let_variables.js
|
||||
- jstests/core/write/update/update_min_max_examples.js
|
||||
- jstests/core/write/update/update_arrayFilters.js
|
||||
- jstests/core/index/wildcard/wildcard_index_type.js
|
||||
- jstests/core/txns/no_writes_to_config_transactions_with_prepared_transaction.js
|
||||
- jstests/core/query/type/type3.js
|
||||
- jstests/core/txns/commit_prepared_transaction.js
|
||||
- jstests/core/timeseries/**/*.js
|
||||
- jstests/core/txns/timeseries/timeseries_reads_in_txns.js
|
||||
- jstests/core/txns/timeseries_insert_in_txn.js
|
||||
- jstests/core/txns/txn_ops_allowed_on_buckets_coll.js
|
||||
# Uses a timestamp in query which causes mismatch between clusters
|
||||
- jstests/core/write/update/update_currentdate_examples.js
|
||||
- jstests/core/write/update/update_affects_indexes.js
|
||||
- jstests/core/index/index_arr2.js
|
||||
- jstests/core/index/index_stats.js
|
||||
- jstests/core/ts1.js
|
||||
- jstests/core/compare_timestamps.js
|
||||
- jstests/core/command_let_variables.js
|
||||
- jstests/core/write/update/update_min_max_examples.js
|
||||
- jstests/core/write/update/update_arrayFilters.js
|
||||
- jstests/core/index/wildcard/wildcard_index_type.js
|
||||
- jstests/core/txns/no_writes_to_config_transactions_with_prepared_transaction.js
|
||||
- jstests/core/query/type/type3.js
|
||||
- jstests/core/txns/commit_prepared_transaction.js
|
||||
- jstests/core/timeseries/**/*.js
|
||||
- jstests/core/txns/timeseries/timeseries_reads_in_txns.js
|
||||
- jstests/core/txns/timeseries_insert_in_txn.js
|
||||
- jstests/core/txns/txn_ops_allowed_on_buckets_coll.js
|
||||
|
||||
# Multiple cluster override does not support QE
|
||||
- jstests/core/queryable_encryption/*.js
|
||||
# Multiple cluster override does not support QE
|
||||
- jstests/core/queryable_encryption/*.js
|
||||
|
||||
# Batching causes us to go over BSON max obj size for request
|
||||
- jstests/core/query/find/find_getmore_bsonsize.js
|
||||
- jstests/core/txns/commit_and_abort_large_unprepared_transactions.js
|
||||
- jstests/core/query/sort/sortb.js
|
||||
- jstests/core/capped/capped_large_docs.js
|
||||
- jstests/core/query/sort/sortf.js
|
||||
- jstests/core/txns/commit_and_abort_large_prepared_transactions.js
|
||||
# Batching causes us to go over BSON max obj size for request
|
||||
- jstests/core/query/find/find_getmore_bsonsize.js
|
||||
- jstests/core/txns/commit_and_abort_large_unprepared_transactions.js
|
||||
- jstests/core/query/sort/sortb.js
|
||||
- jstests/core/capped/capped_large_docs.js
|
||||
- jstests/core/query/sort/sortf.js
|
||||
- jstests/core/txns/commit_and_abort_large_prepared_transactions.js
|
||||
|
||||
# Uses mongod generated UUID which is different between the clusters
|
||||
- jstests/core/write/collection_uuid_write_commands.js
|
||||
# Uses mongod generated UUID which is different between the clusters
|
||||
- jstests/core/write/collection_uuid_write_commands.js
|
||||
|
||||
# update with $ modifiers can sometimes change field ordering
|
||||
- jstests/core/write/update/update5.js
|
||||
- jstests/core/write/update/upsert_and.js
|
||||
- jstests/core/server1470.js
|
||||
- jstests/core/query/rename/rename_operator_missing_source.js
|
||||
# update with $ modifiers can sometimes change field ordering
|
||||
- jstests/core/write/update/update5.js
|
||||
- jstests/core/write/update/upsert_and.js
|
||||
- jstests/core/server1470.js
|
||||
- jstests/core/query/rename/rename_operator_missing_source.js
|
||||
|
||||
# requires parameter not supported by override
|
||||
- jstests/core/write/crud_ops_do_not_throw_locktimeout.js
|
||||
- jstests/core/command_json_schema_field.js
|
||||
- jstests/core/api/api_version_test_expression.js
|
||||
- jstests/core/api/api_version_parameters.js
|
||||
- jstests/core/query/mr/mr_null_arguments.js
|
||||
- jstests/core/txns/prepare_transaction_unique_index_conflict.js
|
||||
- jstests/core/txns/no_snapshot_writes_outside_txn.js
|
||||
# requires parameter not supported by override
|
||||
- jstests/core/write/crud_ops_do_not_throw_locktimeout.js
|
||||
- jstests/core/command_json_schema_field.js
|
||||
- jstests/core/api/api_version_test_expression.js
|
||||
- jstests/core/api/api_version_parameters.js
|
||||
- jstests/core/query/mr/mr_null_arguments.js
|
||||
- jstests/core/txns/prepare_transaction_unique_index_conflict.js
|
||||
- jstests/core/txns/no_snapshot_writes_outside_txn.js
|
||||
|
||||
# override does not suppot benchRun
|
||||
- jstests/core/benchrun_pipeline_updates.js
|
||||
- jstests/core/bench_test1.js
|
||||
# override does not suppot benchRun
|
||||
- jstests/core/benchrun_pipeline_updates.js
|
||||
- jstests/core/bench_test1.js
|
||||
|
||||
# parallel processing causes race conditions in these tests
|
||||
- jstests/core/local_tail_capped.js
|
||||
- jstests/core/txns/transactions_block_ddl.js
|
||||
- jstests/core/txns/kill_op_on_txn_expiry.js
|
||||
- jstests/core/txns/write_conflicts_with_non_txns.js
|
||||
# parallel processing causes race conditions in these tests
|
||||
- jstests/core/local_tail_capped.js
|
||||
- jstests/core/txns/transactions_block_ddl.js
|
||||
- jstests/core/txns/kill_op_on_txn_expiry.js
|
||||
- jstests/core/txns/write_conflicts_with_non_txns.js
|
||||
|
||||
# the deep copy we use does not deep copy arrays of objects which can be modified after we save them
|
||||
- jstests/core/index/wildcard/wildcard_index_multikey.js
|
||||
- jstests/core/index/wildcard/wildcard_index_basic_index_bounds.js
|
||||
- jstests/core/write/update/updatea.js
|
||||
# the deep copy we use does not deep copy arrays of objects which can be modified after we save them
|
||||
- jstests/core/index/wildcard/wildcard_index_multikey.js
|
||||
- jstests/core/index/wildcard/wildcard_index_basic_index_bounds.js
|
||||
- jstests/core/write/update/updatea.js
|
||||
|
||||
# batching can cause planCache to be different than expectations
|
||||
- jstests/core/sbe_plan_cache_duplicate_or_clauses.js
|
||||
- jstests/core/query/sbe_plan_cache_autoparameterize_ixscan.js
|
||||
- jstests/core/index/index_filter_commands_invalidate_plan_cache_entries.js
|
||||
- jstests/core/query/plan_cache/plan_cache_sbe.js
|
||||
# batching can cause planCache to be different than expectations
|
||||
- jstests/core/sbe_plan_cache_duplicate_or_clauses.js
|
||||
- jstests/core/query/sbe_plan_cache_autoparameterize_ixscan.js
|
||||
- jstests/core/index/index_filter_commands_invalidate_plan_cache_entries.js
|
||||
- jstests/core/query/plan_cache/plan_cache_sbe.js
|
||||
|
||||
# bulkWrite and delete use different parsing for the multi field
|
||||
- jstests/core/write/batch_write_command_w0.js
|
||||
# bulkWrite and delete use different parsing for the multi field
|
||||
- jstests/core/write/batch_write_command_w0.js
|
||||
|
||||
# Checks for specific sessions to exist
|
||||
- jstests/core/administrative/list_sessions.js
|
||||
# Checks for specific sessions to exist
|
||||
- jstests/core/administrative/list_sessions.js
|
||||
|
||||
# Tries to run a command without a session which we add in and gives different results
|
||||
- jstests/core/txns/multi_statement_transaction_command_args.js
|
||||
# Tries to run a command without a session which we add in and gives different results
|
||||
- jstests/core/txns/multi_statement_transaction_command_args.js
|
||||
|
||||
# Incompatible with enable_sessions.js
|
||||
- jstests/core/txns/shell_prompt_in_transaction.js
|
||||
- jstests/core/write/crud_api.js
|
||||
# Incompatible with enable_sessions.js
|
||||
- jstests/core/txns/shell_prompt_in_transaction.js
|
||||
- jstests/core/write/crud_api.js
|
||||
|
||||
# Uses multiple sessions which the override is incapable of doing.
|
||||
- jstests/core/txns/multi_statement_transaction_abort.js
|
||||
- jstests/core/txns/commit_prepared_transaction_errors.js
|
||||
- jstests/core/txns/create_collection_parallel.js
|
||||
- jstests/core/txns/prepare_conflict_aggregation_behavior.js
|
||||
- jstests/core/txns/many_txns.js
|
||||
- jstests/core/txns/create_indexes_parallel.js
|
||||
- jstests/core/txns/repeatable_reads_in_transaction.js
|
||||
# Uses multiple sessions which the override is incapable of doing.
|
||||
- jstests/core/txns/multi_statement_transaction_abort.js
|
||||
- jstests/core/txns/commit_prepared_transaction_errors.js
|
||||
- jstests/core/txns/create_collection_parallel.js
|
||||
- jstests/core/txns/prepare_conflict_aggregation_behavior.js
|
||||
- jstests/core/txns/many_txns.js
|
||||
- jstests/core/txns/create_indexes_parallel.js
|
||||
- jstests/core/txns/repeatable_reads_in_transaction.js
|
||||
|
||||
# requires use of specific transaction numbers (override uses its own)
|
||||
- jstests/core/txns/finished_transaction_error_handling.js
|
||||
# requires use of specific transaction numbers (override uses its own)
|
||||
- jstests/core/txns/finished_transaction_error_handling.js
|
||||
|
||||
# ambiguous multi:false update can target different document on each cluster
|
||||
- jstests/core/index/hashed/hashed_index_with_arrays.js
|
||||
# ambiguous multi:false update can target different document on each cluster
|
||||
- jstests/core/index/hashed/hashed_index_with_arrays.js
|
||||
|
||||
# Does not expect a replica set connection string.
|
||||
- jstests/core/**/connection_string_validation.js
|
||||
# Does not expect a replica set connection string.
|
||||
- jstests/core/**/connection_string_validation.js
|
||||
|
||||
# Grabs specific stats from mongod directly which causes failure due to there being
|
||||
# multiple clusters.
|
||||
- jstests/core/administrative/current_op/currentop_cursors.js
|
||||
- jstests/core/operation_latency_histogram.js
|
||||
- jstests/core/views/views_stats.js
|
||||
# Grabs specific stats from mongod directly which causes failure due to there being
|
||||
# multiple clusters.
|
||||
- jstests/core/administrative/current_op/currentop_cursors.js
|
||||
- jstests/core/operation_latency_histogram.js
|
||||
- jstests/core/views/views_stats.js
|
||||
|
||||
# Rely on the testingReplication field
|
||||
- jstests/core/hello_response_validation.js
|
||||
- jstests/core/index/geo/geo_update_btree.js
|
||||
- jstests/core/mixed_version_replica_set.js
|
||||
# Rely on the testingReplication field
|
||||
- jstests/core/hello_response_validation.js
|
||||
- jstests/core/index/geo/geo_update_btree.js
|
||||
- jstests/core/mixed_version_replica_set.js
|
||||
|
||||
# Requires specific commands to be run to trigger failpoint (i.e. requires insert, we run bulkWrite).
|
||||
- jstests/core/failcommand_failpoint.js
|
||||
# Requires specific commands to be run to trigger failpoint (i.e. requires insert, we run bulkWrite).
|
||||
- jstests/core/failcommand_failpoint.js
|
||||
|
||||
# Sets cluster parameters, which do writes with timestamps that will vary b/w clusters.
|
||||
- jstests/core/cluster_parameter_commands.js
|
||||
# Sets cluster parameters, which do writes with timestamps that will vary b/w clusters.
|
||||
- jstests/core/cluster_parameter_commands.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_standalone_mongod
|
||||
- assumes_against_mongod_not_mongos
|
||||
# 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_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
# system.profile collection doesn't exist on mongos.
|
||||
- requires_profiling
|
||||
- uses_parallel_shell
|
||||
# creates a prepare timestamp for each cluster, corresponding commits can fail if
|
||||
# the prepare on the bulkWrite cluster is later than the commit on the normal
|
||||
- uses_prepare_transaction
|
||||
# auth does not get correctly applied to both clusters
|
||||
- requires_auth
|
||||
- requires_getmore
|
||||
# Map reduce gets overrided to include the sharded option which won't work on the normal cluster.
|
||||
- uses_map_reduce_with_temp_collections
|
||||
- assumes_standalone_mongod
|
||||
- assumes_against_mongod_not_mongos
|
||||
# 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_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
# system.profile collection doesn't exist on mongos.
|
||||
- requires_profiling
|
||||
- uses_parallel_shell
|
||||
# creates a prepare timestamp for each cluster, corresponding commits can fail if
|
||||
# the prepare on the bulkWrite cluster is later than the commit on the normal
|
||||
- uses_prepare_transaction
|
||||
# auth does not get correctly applied to both clusters
|
||||
- requires_auth
|
||||
- requires_getmore
|
||||
# Map reduce gets overrided to include the sharded option which won't work on the normal cluster.
|
||||
- uses_map_reduce_with_temp_collections
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -220,10 +220,10 @@ executor:
|
|||
await import("jstests/libs/override_methods/enable_sessions.js");
|
||||
await import('jstests/libs/override_methods/multiple_crud_ops_as_bulk_write.js');
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: BulkWriteFixture
|
||||
cluster_options:
|
||||
|
|
|
|||
|
|
@ -4,63 +4,63 @@ test_kind: js_test
|
|||
# parity with regular CRUD ops.
|
||||
selector:
|
||||
roots:
|
||||
- jstests/sharding/collection_uuid_delete.js
|
||||
- jstests/sharding/collection_uuid_insert.js
|
||||
- jstests/sharding/collection_uuid_update.js
|
||||
- jstests/sharding/updateOne_without_shard_key/*.js
|
||||
- jstests/sharding/analyze_shard_key/read_and_write_distribution.js
|
||||
- jstests/sharding/analyze_shard_key/sampling_current_op_and_server_status_rs.js
|
||||
- jstests/sharding/analyze_shard_key/sampling_current_op_and_server_status_sharded.js
|
||||
- jstests/sharding/analyze_shard_key/sample_rates_rs.js
|
||||
- jstests/sharding/analyze_shard_key/sample_rates_sharded.js
|
||||
- jstests/sharding/timeseries_delete_multi.js
|
||||
- jstests/sharding/timeseries_delete_one_with_shard_key.js
|
||||
- jstests/sharding/timeseries_delete_with_meta.js
|
||||
- jstests/sharding/timeseries_insert.js
|
||||
- jstests/sharding/timeseries_multiple_mongos.js
|
||||
- jstests/sharding/timeseries_update.js
|
||||
- jstests/sharding/timeseries_update_multi.js
|
||||
- jstests/sharding/timeseries_update_routing.js
|
||||
- jstests/sharding/timeseries_user_system_buckets_sharding.js
|
||||
- jstests/sharding/timeseries_delete_one_without_shard_key.js
|
||||
- jstests/sharding/timeseries_write_one_stale_sharding_state.js
|
||||
- jstests/sharding/timeseries_shardkey_update.js
|
||||
- jstests/sharding/timeseries_update_one.js
|
||||
- jstests/sharding/timeseries_upsert.js
|
||||
# The following tests are to get coverage of updates that change a document's shard key.
|
||||
- jstests/sharding/update_shard_key_doc_moves_shards.js
|
||||
- jstests/sharding/update_shard_key_pipeline_update.js
|
||||
- jstests/sharding/update_shard_key_doc_moves_shards_without_txn_number.js
|
||||
- jstests/sharding/update_shard_key_doc_on_same_shard.js
|
||||
- jstests/sharding/update_compound_shard_key.js
|
||||
- jstests/sharding/update_shard_key_conflicting_writes.js
|
||||
- jstests/sharding/move_chunk_update_shard_key_in_retryable_write.js
|
||||
- jstests/sharding/resharding_update_shard_key_in_retryable_write.js
|
||||
# End document shard key update tests
|
||||
- jstests/sharding/timeseries_update_multi_explain.js
|
||||
# Test behavior of updateOne/deleteOne with _id without shard key.
|
||||
- jstests/sharding/server_status_crud_metrics.js
|
||||
- jstests/sharding/server_status_crud_metrics_write_without_shard_key_with_id.js
|
||||
- jstests/sharding/timeseries_buckets_modification_with_id.js
|
||||
- jstests/sharding/updateOne_idempotent_with_move_chunk.js
|
||||
- jstests/sharding/updateOne_with_id_without_shard_key_basic.js
|
||||
- jstests/sharding/deleteOne_with_id_without_shard_key_basic.js
|
||||
- jstests/sharding/updateOne_with_id_without_shard_key_stale_config.js
|
||||
- jstests/sharding/deleteOne_with_id_without_shard_key_stale_config.js
|
||||
- jstests/sharding/batched_writes_with_id_without_shard_key_stale_config.js
|
||||
- jstests/sharding/batched_writes_with_id_without_shard_key_basic.js
|
||||
- jstests/sharding/updateOne_without_shard_key/write_without_shard_key_single_shard_data_placement_change.js
|
||||
- jstests/sharding/timeseries_writes_without_shard_key_single_shard_data_placement_change.js
|
||||
- jstests/sharding/retryable_update_one_by_id_chunk_migration.js
|
||||
- jstests/sharding/collection_uuid_delete.js
|
||||
- jstests/sharding/collection_uuid_insert.js
|
||||
- jstests/sharding/collection_uuid_update.js
|
||||
- jstests/sharding/updateOne_without_shard_key/*.js
|
||||
- jstests/sharding/analyze_shard_key/read_and_write_distribution.js
|
||||
- jstests/sharding/analyze_shard_key/sampling_current_op_and_server_status_rs.js
|
||||
- jstests/sharding/analyze_shard_key/sampling_current_op_and_server_status_sharded.js
|
||||
- jstests/sharding/analyze_shard_key/sample_rates_rs.js
|
||||
- jstests/sharding/analyze_shard_key/sample_rates_sharded.js
|
||||
- jstests/sharding/timeseries_delete_multi.js
|
||||
- jstests/sharding/timeseries_delete_one_with_shard_key.js
|
||||
- jstests/sharding/timeseries_delete_with_meta.js
|
||||
- jstests/sharding/timeseries_insert.js
|
||||
- jstests/sharding/timeseries_multiple_mongos.js
|
||||
- jstests/sharding/timeseries_update.js
|
||||
- jstests/sharding/timeseries_update_multi.js
|
||||
- jstests/sharding/timeseries_update_routing.js
|
||||
- jstests/sharding/timeseries_user_system_buckets_sharding.js
|
||||
- jstests/sharding/timeseries_delete_one_without_shard_key.js
|
||||
- jstests/sharding/timeseries_write_one_stale_sharding_state.js
|
||||
- jstests/sharding/timeseries_shardkey_update.js
|
||||
- jstests/sharding/timeseries_update_one.js
|
||||
- jstests/sharding/timeseries_upsert.js
|
||||
# The following tests are to get coverage of updates that change a document's shard key.
|
||||
- jstests/sharding/update_shard_key_doc_moves_shards.js
|
||||
- jstests/sharding/update_shard_key_pipeline_update.js
|
||||
- jstests/sharding/update_shard_key_doc_moves_shards_without_txn_number.js
|
||||
- jstests/sharding/update_shard_key_doc_on_same_shard.js
|
||||
- jstests/sharding/update_compound_shard_key.js
|
||||
- jstests/sharding/update_shard_key_conflicting_writes.js
|
||||
- jstests/sharding/move_chunk_update_shard_key_in_retryable_write.js
|
||||
- jstests/sharding/resharding_update_shard_key_in_retryable_write.js
|
||||
# End document shard key update tests
|
||||
- jstests/sharding/timeseries_update_multi_explain.js
|
||||
# Test behavior of updateOne/deleteOne with _id without shard key.
|
||||
- jstests/sharding/server_status_crud_metrics.js
|
||||
- jstests/sharding/server_status_crud_metrics_write_without_shard_key_with_id.js
|
||||
- jstests/sharding/timeseries_buckets_modification_with_id.js
|
||||
- jstests/sharding/updateOne_idempotent_with_move_chunk.js
|
||||
- jstests/sharding/updateOne_with_id_without_shard_key_basic.js
|
||||
- jstests/sharding/deleteOne_with_id_without_shard_key_basic.js
|
||||
- jstests/sharding/updateOne_with_id_without_shard_key_stale_config.js
|
||||
- jstests/sharding/deleteOne_with_id_without_shard_key_stale_config.js
|
||||
- jstests/sharding/batched_writes_with_id_without_shard_key_stale_config.js
|
||||
- jstests/sharding/batched_writes_with_id_without_shard_key_basic.js
|
||||
- jstests/sharding/updateOne_without_shard_key/write_without_shard_key_single_shard_data_placement_change.js
|
||||
- jstests/sharding/timeseries_writes_without_shard_key_single_shard_data_placement_change.js
|
||||
- jstests/sharding/retryable_update_one_by_id_chunk_migration.js
|
||||
# End updateOne/deleteOne with _id without shard key tests
|
||||
exclude_files:
|
||||
# Update API version tests should not be run with bulkWrite override.
|
||||
- jstests/sharding/updateOne_without_shard_key/write_without_shard_key_stable_api_test.js
|
||||
# Update API version tests should not be run with bulkWrite override.
|
||||
- jstests/sharding/updateOne_without_shard_key/write_without_shard_key_stable_api_test.js
|
||||
|
||||
executor:
|
||||
archive:
|
||||
tests: true
|
||||
config:
|
||||
shell_options:
|
||||
nodb: ''
|
||||
nodb: ""
|
||||
eval: await import('jstests/libs/override_methods/single_crud_op_as_bulk_write.js');
|
||||
|
|
|
|||
|
|
@ -2,58 +2,58 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core_sharding/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core_sharding/**/*.js
|
||||
exclude_files:
|
||||
# Has conditional logic for standalone servers and replica sets, but can't distinguish the two
|
||||
# when connected to mongos.
|
||||
- jstests/core/**/write_result.js
|
||||
# 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 # serverStatus output doesn't have storageEngine
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
# 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/**/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().
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# This test uses `benchRun` which spawns connections which do not inherit the causal session.
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
# Has conditional logic for standalone servers and replica sets, but can't distinguish the two
|
||||
# when connected to mongos.
|
||||
- jstests/core/**/write_result.js
|
||||
# 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 # serverStatus output doesn't have storageEngine
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
# 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/**/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().
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# This test uses `benchRun` which spawns connections which do not inherit the causal session.
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_standalone_mongod
|
||||
- assumes_against_mongod_not_mongos
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# Don't run these tests as transactions can only run on primaries.
|
||||
- uses_transactions
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
- assumes_standalone_mongod
|
||||
- assumes_against_mongod_not_mongos
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# Don't run these tests as transactions can only run on primaries.
|
||||
- uses_transactions
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -67,12 +67,12 @@ executor:
|
|||
await import("jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js");
|
||||
await import('jstests/libs/override_methods/enable_hedged_reads.js');
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
|
|
@ -85,7 +85,7 @@ executor:
|
|||
verbosity: 1
|
||||
asio: 2
|
||||
mongod_options:
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
logComponentVerbosity:
|
||||
|
|
|
|||
|
|
@ -2,61 +2,61 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core_sharding/**/*.js
|
||||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core_sharding/**/*.js
|
||||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
exclude_files:
|
||||
# Has conditional logic for standalone servers and replica sets, but can't distinguish the two
|
||||
# when connected to mongos.
|
||||
- jstests/core/**/write_result.js
|
||||
# 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 # serverStatus output doesn't have storageEngine
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
# 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/**/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().
|
||||
# Has conditional logic for standalone servers and replica sets, but can't distinguish the two
|
||||
# when connected to mongos.
|
||||
- jstests/core/**/write_result.js
|
||||
# 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 # serverStatus output doesn't have storageEngine
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
# 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/**/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().
|
||||
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# This test uses `benchRun` which spawns connections which do not inherit the causal session.
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# This test uses `benchRun` which spawns connections which do not inherit the causal session.
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_standalone_mongod
|
||||
- assumes_against_mongod_not_mongos
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# These tests are run in causally_consistent_jscore_txns_passthrough.yml.
|
||||
- uses_transactions
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
- assumes_standalone_mongod
|
||||
- assumes_against_mongod_not_mongos
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# These tests are run in causally_consistent_jscore_txns_passthrough.yml.
|
||||
- uses_transactions
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -68,12 +68,12 @@ executor:
|
|||
shell_options:
|
||||
eval: await import("jstests/libs/override_methods/enable_causal_consistency.js")
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
|
|
@ -86,7 +86,7 @@ executor:
|
|||
verbosity: 1
|
||||
asio: 2
|
||||
mongod_options:
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
logComponentVerbosity:
|
||||
|
|
|
|||
|
|
@ -1,102 +1,102 @@
|
|||
config_variables:
|
||||
- &keyFile jstests/libs/authTestsKey
|
||||
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
|
||||
- &authOptions
|
||||
authenticationDatabase: admin
|
||||
authenticationMechanism: SCRAM-SHA-256
|
||||
password: *keyFileData
|
||||
username: __system
|
||||
- &keyFile jstests/libs/authTestsKey
|
||||
- &keyFileData Thiskeyisonlyforrunningthesuitewithauthenticationdontuseitinanytestsdirectly
|
||||
- &authOptions
|
||||
authenticationDatabase: admin
|
||||
authenticationMechanism: SCRAM-SHA-256
|
||||
password: *keyFileData
|
||||
username: __system
|
||||
|
||||
test_kind: js_test
|
||||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core_sharding/**/*.js
|
||||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core_sharding/**/*.js
|
||||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
exclude_files:
|
||||
# Skip any tests that run with auth explicitly.
|
||||
- jstests/core/administrative/*[aA]uth*.js
|
||||
# Has conditional logic for standalone servers and replica sets, but can't distinguish the two
|
||||
# when connected to mongos.
|
||||
- jstests/core/**/write_result.js
|
||||
# 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 # serverStatus output doesn't have storageEngine.
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
# 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/**/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().
|
||||
# Logical sessions require that only one user be authenticated,
|
||||
# but this suite puts us in a multi-auth state.
|
||||
- jstests/core/**/list_all_sessions.js # Too many users authenticated
|
||||
- jstests/core/**/list_sessions.js # Too many users authenticated
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
# Skip any tests that run with auth explicitly.
|
||||
- jstests/core/administrative/*[aA]uth*.js
|
||||
# Has conditional logic for standalone servers and replica sets, but can't distinguish the two
|
||||
# when connected to mongos.
|
||||
- jstests/core/**/write_result.js
|
||||
# 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 # serverStatus output doesn't have storageEngine.
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
# 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/**/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().
|
||||
# Logical sessions require that only one user be authenticated,
|
||||
# but this suite puts us in a multi-auth state.
|
||||
- jstests/core/**/list_all_sessions.js # Too many users authenticated
|
||||
- jstests/core/**/list_sessions.js # Too many users authenticated
|
||||
# The following tests fail because of divergent dropCollection behavior between standalones and
|
||||
# sharded clusters. These tests expect a second drop command to error, whereas in sharded clusters
|
||||
# we expect a second drop to return status OK.
|
||||
- jstests/core/**/explain_upsert.js
|
||||
|
||||
# These include operations the root user auth'd on the test database is not authorized to perform,
|
||||
# e.g. reading system.views, dropping or creating system collections.
|
||||
- jstests/core/**/list_collections_no_views.js
|
||||
- jstests/core/**/rename_collection_system_db.js
|
||||
- jstests/core/views/invalid_system_views.js
|
||||
- jstests/core/views/view_with_invalid_dbname.js
|
||||
- jstests/core/views/views_creation.js
|
||||
- jstests/core/views/views_drop.js
|
||||
- jstests/core/**/disallow_system_views_user_writes.js
|
||||
- jstests/core/timeseries/bucket_granularity.js
|
||||
# These include operations the root user auth'd on the test database is not authorized to perform,
|
||||
# e.g. reading system.views, dropping or creating system collections.
|
||||
- jstests/core/**/list_collections_no_views.js
|
||||
- jstests/core/**/rename_collection_system_db.js
|
||||
- jstests/core/views/invalid_system_views.js
|
||||
- jstests/core/views/view_with_invalid_dbname.js
|
||||
- jstests/core/views/views_creation.js
|
||||
- jstests/core/views/views_drop.js
|
||||
- jstests/core/**/disallow_system_views_user_writes.js
|
||||
- jstests/core/timeseries/bucket_granularity.js
|
||||
|
||||
# These tests expect listCollections to return system.bucket.* collections, which are filtered
|
||||
# out by mongos when authentication is enabled.
|
||||
# Refer to filter in cluster_list_collections_cmd.cpp
|
||||
- jstests/core/timeseries/timeseries_*.js
|
||||
# This test uses `benchRun` which spawns connections which do not inherit the causal session.
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
# These tests expect listCollections to return system.bucket.* collections, which are filtered
|
||||
# out by mongos when authentication is enabled.
|
||||
# Refer to filter in cluster_list_collections_cmd.cpp
|
||||
- jstests/core/timeseries/timeseries_*.js
|
||||
# This test uses `benchRun` which spawns connections which do not inherit the causal session.
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
|
||||
# In the context of auth on mongos, illegal namespaces trigger a different error code than they do
|
||||
# on mongod. To keep the test simple, we avoid running it against a mongos when auth is enabled.
|
||||
- jstests/core/**/illegal_cmd_namespace.js
|
||||
# In the context of auth on mongos, illegal namespaces trigger a different error code than they do
|
||||
# on mongod. To keep the test simple, we avoid running it against a mongos when auth is enabled.
|
||||
- jstests/core/**/illegal_cmd_namespace.js
|
||||
|
||||
# These tests expect writes to system.profile to fail with ErrorCodes.InvalidNamespace, but with
|
||||
# auth enabled the commands instead fail with ErrorCodes.Unauthorized.
|
||||
- jstests/core/write/bulk/bulk_write_non_auth.js
|
||||
# These tests expect writes to system.profile to fail with ErrorCodes.InvalidNamespace, but with
|
||||
# auth enabled the commands instead fail with ErrorCodes.Unauthorized.
|
||||
- jstests/core/write/bulk/bulk_write_non_auth.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_standalone_mongod
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
# Multiple users cannot be authenticated on one connection within a session.
|
||||
- creates_and_authenticates_user
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# These tests are run in sharded_causally_consistent_jscore_txns_passthrough.
|
||||
- uses_transactions
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_standalone_mongod
|
||||
##
|
||||
# The next tag corresponds to the special error thrown by the set_read_preference_secondary.js
|
||||
# override when it refuses to replace the readPreference of a particular command. Above each tag
|
||||
# are the message(s) that cause the tag to be warranted.
|
||||
##
|
||||
# "Cowardly refusing to override read preference of command: ..."
|
||||
# "Cowardly refusing to run test with overridden read preference when it reads from a
|
||||
# non-replicated collection: ..."
|
||||
- assumes_read_preference_unchanged
|
||||
# Multiple users cannot be authenticated on one connection within a session.
|
||||
- creates_and_authenticates_user
|
||||
- does_not_support_causal_consistency
|
||||
- requires_collstats
|
||||
# The system.profile collection is not replicated. So the reads from secondaries will not be
|
||||
# consistent with primary.
|
||||
- requires_profiling
|
||||
# These tests are run in sharded_causally_consistent_jscore_txns_passthrough.
|
||||
- uses_transactions
|
||||
# Parallel shell is not causally consistent because it uses a different session.
|
||||
- uses_parallel_shell
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -140,32 +140,32 @@ executor:
|
|||
await import("jstests/libs/override_methods/enable_causal_consistency.js");
|
||||
<<: *authOptions
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: ValidateCollections
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: CheckOrphansDeleted
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: ValidateCollections
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: CheckOrphansDeleted
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData: *TestData
|
||||
eval: jsTest.authenticate(db.getMongo())
|
||||
<<: *authOptions
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
|
|
@ -179,8 +179,8 @@ executor:
|
|||
verbosity: 1
|
||||
asio: 2
|
||||
mongod_options:
|
||||
enableMajorityReadConcern: ''
|
||||
auth: ''
|
||||
enableMajorityReadConcern: ""
|
||||
auth: ""
|
||||
keyFile: *keyFile
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
|
|
|
|||
|
|
@ -6,20 +6,20 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/txns/**/*.js
|
||||
- jstests/core/txns/**/*.js
|
||||
exclude_files:
|
||||
# The following tests are excluded because they do not use the transactions shell helpers.
|
||||
- jstests/core/txns/non_transactional_operations_on_session_with_transaction.js
|
||||
# These tests rely on having read concerns that don't use afterClusterTime.
|
||||
- jstests/core/txns/timestamped_reads_wait_for_prepare_oplog_visibility.js
|
||||
# These tests rely on reads that cannot use an afterClusterTime read concern because the read
|
||||
# happens after a transaction is prepared, but before it is committed.
|
||||
- jstests/core/txns/prepare_conflict_aggregation_behavior.js
|
||||
# The following tests are excluded because they do not use the transactions shell helpers.
|
||||
- jstests/core/txns/non_transactional_operations_on_session_with_transaction.js
|
||||
# These tests rely on having read concerns that don't use afterClusterTime.
|
||||
- jstests/core/txns/timestamped_reads_wait_for_prepare_oplog_visibility.js
|
||||
# These tests rely on reads that cannot use an afterClusterTime read concern because the read
|
||||
# happens after a transaction is prepared, but before it is committed.
|
||||
- jstests/core/txns/prepare_conflict_aggregation_behavior.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
- does_not_support_causal_consistency
|
||||
# Transactions are not allowed to operate on capped collections.
|
||||
- requires_capped
|
||||
- does_not_support_causal_consistency
|
||||
# Transactions are not allowed to operate on capped collections.
|
||||
- requires_capped
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -31,11 +31,11 @@ executor:
|
|||
globalThis.testingReplication = true;
|
||||
await import('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js');
|
||||
hooks:
|
||||
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
||||
# node.
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
||||
# node.
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
mongod_options:
|
||||
|
|
|
|||
|
|
@ -2,32 +2,32 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
- jstests/fle2/**/*.js
|
||||
- src/mongo/db/modules/*/jstests/fle2/**/*.js
|
||||
exclude_files:
|
||||
# Only the first command in a transaction allows readConcern and this suite only tests
|
||||
# non-transaction snapshot reads.
|
||||
- jstests/core/txns/**/*.js
|
||||
# These tests use benchRun(), which isn't configured to use the overridden writeConcern.
|
||||
- jstests/core/**/bench_test*.js
|
||||
- jstests/core/**/benchrun_pipeline_updates.js # benchRun() used for writes
|
||||
# Only the first command in a transaction allows readConcern and this suite only tests
|
||||
# non-transaction snapshot reads.
|
||||
- jstests/core/txns/**/*.js
|
||||
# These tests use benchRun(), which isn't configured to use the overridden writeConcern.
|
||||
- jstests/core/**/bench_test*.js
|
||||
- jstests/core/**/benchrun_pipeline_updates.js # benchRun() used for writes
|
||||
exclude_with_any_tags:
|
||||
- assumes_standalone_mongod
|
||||
# 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
|
||||
- does_not_support_causal_consistency
|
||||
# Reading from capped collections with readConcern snapshot is not supported.
|
||||
- requires_capped
|
||||
# These tests attempt to read from the "system.profile" collection which is a capped collection.
|
||||
- requires_profiling
|
||||
- assumes_standalone_mongod
|
||||
# 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
|
||||
- does_not_support_causal_consistency
|
||||
# Reading from capped collections with readConcern snapshot is not supported.
|
||||
- requires_capped
|
||||
# These tests attempt to read from the "system.profile" collection which is a capped collection.
|
||||
- requires_profiling
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -45,14 +45,14 @@ executor:
|
|||
await import('jstests/libs/override_methods/set_read_and_write_concerns.js');
|
||||
await import("jstests/libs/override_methods/enable_causal_consistency.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
|
||||
# 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:
|
||||
|
|
@ -60,5 +60,5 @@ executor:
|
|||
enableTestCommands: 1
|
||||
writePeriodicNoops: 1
|
||||
minSnapshotHistoryWindowInSeconds: 3600
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
num_nodes: 2
|
||||
|
|
|
|||
|
|
@ -2,16 +2,16 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.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
|
||||
##
|
||||
# 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:
|
||||
|
|
@ -24,7 +24,7 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
# Enable causal consistency for change streams suites using 1 node replica sets. Some tests
|
||||
# rely on the assumption that a w:majority write will be visible immediately in a subsequently
|
||||
# opened change stream. In 1 node replica sets, an operation that majority commits at
|
||||
|
|
@ -38,18 +38,18 @@ executor:
|
|||
await import('jstests/libs/override_methods/set_read_and_write_concerns.js');
|
||||
await import('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
|
||||
# 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: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
num_nodes: 2
|
||||
|
|
|
|||
|
|
@ -3,338 +3,338 @@ test_kind: multi_stmt_txn_passthrough
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/core/**/*.js
|
||||
- jstests/core/**/*.js
|
||||
exclude_files:
|
||||
# These tests run in the jscore_txn passthrough suites.
|
||||
- jstests/core/txns/**/*.js
|
||||
# These tests run in the jscore_txn passthrough suites.
|
||||
- jstests/core/txns/**/*.js
|
||||
|
||||
# The following tests fail because a certain command or functionality is not supported by
|
||||
# mongos. This command or functionality is placed in a comment next to the failing test.
|
||||
- jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js # capped collections.
|
||||
- jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js # profiling.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
- jstests/core/**/startup_log.js # "local" database.
|
||||
- jstests/core/**/tailable_cursor_invalidation.js # capped collections.
|
||||
- jstests/core/**/tailable_getmore_batch_size.js # capped collections.
|
||||
- jstests/core/**/tailable_skip_limit.js # capped collections.
|
||||
- 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/**/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.
|
||||
# The following tests fail because they count indexes. These counts do not take into account the
|
||||
# additional hashed shard key indexes that are automatically added by this passthrough.
|
||||
- jstests/core/**/apitest_dbcollection.js
|
||||
- jstests/core/**/bad_index_plugin.js
|
||||
- jstests/core/**/create_indexes.js
|
||||
- jstests/core/**/list_indexes_non_existent_ns.js
|
||||
- jstests/core/**/mr_preserve_indexes.js
|
||||
# These tests fail because sharded clusters do not clean up correctly after failed index builds.
|
||||
# See SERVER-33207 as an example.
|
||||
- jstests/core/**/geo_borders.js
|
||||
# TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded
|
||||
# queries with a limit or for distinct commands.
|
||||
- jstests/core/**/distinct_index1.js
|
||||
- jstests/core/**/explain1.js
|
||||
- jstests/core/**/explain4.js
|
||||
- jstests/core/**/sortk.js
|
||||
# TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is
|
||||
# incorrect on sharded collections.
|
||||
- jstests/core/**/explain_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output.
|
||||
- jstests/core/**/expr_index_use.js
|
||||
- jstests/core/**/index_multikey.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
# The following tests fail because a certain command or functionality is not supported by
|
||||
# mongos. This command or functionality is placed in a comment next to the failing test.
|
||||
- jstests/core/**/apitest_db.js # serverStatus output doesn't have storageEngine.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js # capped collections.
|
||||
- jstests/core/**/bypass_doc_validation.js # sharded $out output not permitted
|
||||
- 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/**/dbhash.js # dbhash.
|
||||
- jstests/core/**/fsync.js # uses fsync.
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js # profiling.
|
||||
- jstests/core/**/geo_update_btree2.js # notablescan.
|
||||
- jstests/core/**/index9.js # "local" database.
|
||||
- jstests/core/**/queryoptimizera.js # "local" database.
|
||||
- jstests/core/**/stages*.js # stageDebug.
|
||||
- jstests/core/**/startup_log.js # "local" database.
|
||||
- jstests/core/**/tailable_cursor_invalidation.js # capped collections.
|
||||
- jstests/core/**/tailable_getmore_batch_size.js # capped collections.
|
||||
- jstests/core/**/tailable_skip_limit.js # capped collections.
|
||||
- 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/**/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.
|
||||
# The following tests fail because they count indexes. These counts do not take into account the
|
||||
# additional hashed shard key indexes that are automatically added by this passthrough.
|
||||
- jstests/core/**/apitest_dbcollection.js
|
||||
- jstests/core/**/bad_index_plugin.js
|
||||
- jstests/core/**/create_indexes.js
|
||||
- jstests/core/**/list_indexes_non_existent_ns.js
|
||||
- jstests/core/**/mr_preserve_indexes.js
|
||||
# These tests fail because sharded clusters do not clean up correctly after failed index builds.
|
||||
# See SERVER-33207 as an example.
|
||||
- jstests/core/**/geo_borders.js
|
||||
# TODO: Remove after fixing SERVER-29449. executionStats.nReturned is incorrect for sharded
|
||||
# queries with a limit or for distinct commands.
|
||||
- jstests/core/**/distinct_index1.js
|
||||
- jstests/core/**/explain1.js
|
||||
- jstests/core/**/explain4.js
|
||||
- jstests/core/**/sortk.js
|
||||
# TODO: Remove after fixing SERVER-32563. The implementation of explain for the count command is
|
||||
# incorrect on sharded collections.
|
||||
- jstests/core/**/explain_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# TODO SERVER-32311: These tests use plan stage helpers which can't handle sharded explain output.
|
||||
- jstests/core/**/expr_index_use.js
|
||||
- jstests/core/**/index_multikey.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
|
||||
##
|
||||
## Limitations with the way the runner file injects transactions.
|
||||
##
|
||||
##
|
||||
## Limitations with the way the runner file injects transactions.
|
||||
##
|
||||
|
||||
# These tests expects some statements to error, which will cause txns to abort entirely.
|
||||
- jstests/core/**/bulk_api_ordered.js
|
||||
- jstests/core/**/bulk_api_unordered.js
|
||||
- jstests/core/**/commands_with_uuid.js
|
||||
- jstests/core/**/explain_execution_error.js
|
||||
- jstests/core/**/expr.js
|
||||
- jstests/core/**/find9.js
|
||||
- jstests/core/**/find_getmore_bsonsize.js
|
||||
- jstests/core/**/find_getmore_cmd.js
|
||||
- jstests/core/**/geo_allowedcomparisons.js
|
||||
- jstests/core/**/geo_big_polygon2.js
|
||||
- jstests/core/**/geonear_key.js
|
||||
- jstests/core/**/in.js
|
||||
- jstests/core/**/index8.js # No explicit check for failed command.
|
||||
- jstests/core/**/index_decimal.js
|
||||
- jstests/core/**/index_large_and_small_dates.js
|
||||
- jstests/core/**/index_multiple_compatibility.js
|
||||
- jstests/core/**/index_partial_write_ops.js
|
||||
- jstests/core/**/indexa.js # No explicit check for failed command.
|
||||
- jstests/core/**/indexes_multiple_commands.js
|
||||
- jstests/core/**/js2.js
|
||||
- jstests/core/json_schema/json_schema.js
|
||||
- jstests/core/**/mr_bigobject.js
|
||||
- jstests/core/**/not2.js
|
||||
- jstests/core/**/null_query_semantics.js
|
||||
- jstests/core/**/or1.js
|
||||
- jstests/core/**/or2.js
|
||||
- jstests/core/**/or3.js
|
||||
- jstests/core/**/orj.js
|
||||
- jstests/core/**/ref.js
|
||||
- jstests/core/**/ref4.js
|
||||
- jstests/core/**/regex_limit.js
|
||||
- jstests/core/**/remove_undefined.js
|
||||
- jstests/core/**/set7.js
|
||||
- jstests/core/**/sortb.js
|
||||
- jstests/core/**/sortf.js
|
||||
- jstests/core/**/sortg.js
|
||||
- jstests/core/**/sortj.js
|
||||
- jstests/core/**/sort_with_meta_operator.js
|
||||
- jstests/core/**/tailable_skip_limit.js
|
||||
- jstests/core/**/type_array.js
|
||||
- jstests/core/**/uniqueness.js
|
||||
- jstests/core/**/unset2.js
|
||||
- jstests/core/**/update_addToSet.js
|
||||
- jstests/core/**/update_arrayFilters.js
|
||||
- jstests/core/**/update_find_and_modify_id.js
|
||||
- jstests/core/**/update_modifier_pop.js
|
||||
- jstests/core/**/updateh.js
|
||||
- jstests/core/**/updatej.js
|
||||
# These tests expects some statements to error, which will cause txns to abort entirely.
|
||||
- jstests/core/**/bulk_api_ordered.js
|
||||
- jstests/core/**/bulk_api_unordered.js
|
||||
- jstests/core/**/commands_with_uuid.js
|
||||
- jstests/core/**/explain_execution_error.js
|
||||
- jstests/core/**/expr.js
|
||||
- jstests/core/**/find9.js
|
||||
- jstests/core/**/find_getmore_bsonsize.js
|
||||
- jstests/core/**/find_getmore_cmd.js
|
||||
- jstests/core/**/geo_allowedcomparisons.js
|
||||
- jstests/core/**/geo_big_polygon2.js
|
||||
- jstests/core/**/geonear_key.js
|
||||
- jstests/core/**/in.js
|
||||
- jstests/core/**/index8.js # No explicit check for failed command.
|
||||
- jstests/core/**/index_decimal.js
|
||||
- jstests/core/**/index_large_and_small_dates.js
|
||||
- jstests/core/**/index_multiple_compatibility.js
|
||||
- jstests/core/**/index_partial_write_ops.js
|
||||
- jstests/core/**/indexa.js # No explicit check for failed command.
|
||||
- jstests/core/**/indexes_multiple_commands.js
|
||||
- jstests/core/**/js2.js
|
||||
- jstests/core/json_schema/json_schema.js
|
||||
- jstests/core/**/mr_bigobject.js
|
||||
- jstests/core/**/not2.js
|
||||
- jstests/core/**/null_query_semantics.js
|
||||
- jstests/core/**/or1.js
|
||||
- jstests/core/**/or2.js
|
||||
- jstests/core/**/or3.js
|
||||
- jstests/core/**/orj.js
|
||||
- jstests/core/**/ref.js
|
||||
- jstests/core/**/ref4.js
|
||||
- jstests/core/**/regex_limit.js
|
||||
- jstests/core/**/remove_undefined.js
|
||||
- jstests/core/**/set7.js
|
||||
- jstests/core/**/sortb.js
|
||||
- jstests/core/**/sortf.js
|
||||
- jstests/core/**/sortg.js
|
||||
- jstests/core/**/sortj.js
|
||||
- jstests/core/**/sort_with_meta_operator.js
|
||||
- jstests/core/**/tailable_skip_limit.js
|
||||
- jstests/core/**/type_array.js
|
||||
- jstests/core/**/uniqueness.js
|
||||
- jstests/core/**/unset2.js
|
||||
- jstests/core/**/update_addToSet.js
|
||||
- jstests/core/**/update_arrayFilters.js
|
||||
- jstests/core/**/update_find_and_modify_id.js
|
||||
- jstests/core/**/update_modifier_pop.js
|
||||
- jstests/core/**/updateh.js
|
||||
- jstests/core/**/updatej.js
|
||||
|
||||
# TODO: SERVER-38207 Cannot insert document with MaxKey shard key.
|
||||
- jstests/core/**/type8.js
|
||||
# TODO: SERVER-38207 Cannot insert document with MaxKey shard key.
|
||||
- jstests/core/**/type8.js
|
||||
|
||||
##
|
||||
## Some aggregation stages don't support snapshot readconcern.
|
||||
##
|
||||
##
|
||||
## Some aggregation stages don't support snapshot readconcern.
|
||||
##
|
||||
|
||||
# explain (requires read concern local)
|
||||
- jstests/core/**/agg_hint.js
|
||||
- jstests/core/**/and.js
|
||||
- jstests/core/**/collation.js
|
||||
- jstests/core/**/explain_shell_helpers.js
|
||||
- jstests/core/**/index_partial_read_ops.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
- jstests/core/views/views_collation.js
|
||||
- jstests/core/**/wildcard_index_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
# explain (requires read concern local)
|
||||
- jstests/core/**/agg_hint.js
|
||||
- jstests/core/**/and.js
|
||||
- jstests/core/**/collation.js
|
||||
- jstests/core/**/explain_shell_helpers.js
|
||||
- jstests/core/**/index_partial_read_ops.js
|
||||
- jstests/core/**/optimized_match_explain.js
|
||||
- jstests/core/**/sort_array.js
|
||||
- jstests/core/views/views_collation.js
|
||||
- jstests/core/**/wildcard_index_count.js
|
||||
- jstests/core/**/explain_server_params.js
|
||||
|
||||
# $listSessions
|
||||
- jstests/core/**/list_all_local_sessions.js
|
||||
- jstests/core/**/list_all_sessions.js
|
||||
- jstests/core/**/list_sessions.js
|
||||
# $listSessions
|
||||
- jstests/core/**/list_all_local_sessions.js
|
||||
- jstests/core/**/list_all_sessions.js
|
||||
- jstests/core/**/list_sessions.js
|
||||
|
||||
# $collStats
|
||||
- jstests/core/**/operation_latency_histogram.js
|
||||
- jstests/core/views/views_coll_stats.js
|
||||
- jstests/core/views/views_stats.js
|
||||
# $collStats
|
||||
- jstests/core/**/operation_latency_histogram.js
|
||||
- jstests/core/views/views_coll_stats.js
|
||||
- jstests/core/views/views_stats.js
|
||||
|
||||
# Errors expected to happen in tests, which can cause transactions to get aborted.
|
||||
# So when the test tries to inspect the documents it can be out of sync (relative
|
||||
# to test run without multi statement transactions).
|
||||
- jstests/core/**/bulk_api_ordered.js
|
||||
- jstests/core/**/bulk_api_unordered.js
|
||||
- jstests/core/**/doc_validation.js
|
||||
- jstests/core/**/doc_validation_options.js
|
||||
- jstests/core/**/field_name_validation.js
|
||||
- jstests/core/**/insert_illegal_doc.js
|
||||
- jstests/core/**/push_sort.js
|
||||
- jstests/core/**/update_arrayFilters.js
|
||||
- jstests/core/**/update_dbref.js
|
||||
- jstests/core/**/updatel.js
|
||||
- jstests/core/**/write_result.js
|
||||
- jstests/core/**/positional_projection.js
|
||||
# Errors expected to happen in tests, which can cause transactions to get aborted.
|
||||
# So when the test tries to inspect the documents it can be out of sync (relative
|
||||
# to test run without multi statement transactions).
|
||||
- jstests/core/**/bulk_api_ordered.js
|
||||
- jstests/core/**/bulk_api_unordered.js
|
||||
- jstests/core/**/doc_validation.js
|
||||
- jstests/core/**/doc_validation_options.js
|
||||
- jstests/core/**/field_name_validation.js
|
||||
- jstests/core/**/insert_illegal_doc.js
|
||||
- jstests/core/**/push_sort.js
|
||||
- jstests/core/**/update_arrayFilters.js
|
||||
- jstests/core/**/update_dbref.js
|
||||
- jstests/core/**/updatel.js
|
||||
- jstests/core/**/write_result.js
|
||||
- jstests/core/**/positional_projection.js
|
||||
|
||||
# Multiple writes in a txn, some of which fail because the collection doesn't exist.
|
||||
# We create the collection and retry the last write, but previous writes would have
|
||||
# still failed.
|
||||
- jstests/core/**/dbref1.js
|
||||
- jstests/core/**/dbref2.js
|
||||
- jstests/core/**/ref3.js
|
||||
- jstests/core/**/update3.js
|
||||
# Multiple writes in a txn, some of which fail because the collection doesn't exist.
|
||||
# We create the collection and retry the last write, but previous writes would have
|
||||
# still failed.
|
||||
- jstests/core/**/dbref1.js
|
||||
- jstests/core/**/dbref2.js
|
||||
- jstests/core/**/ref3.js
|
||||
- jstests/core/**/update3.js
|
||||
|
||||
##
|
||||
## Misc. reasons.
|
||||
##
|
||||
##
|
||||
## Misc. reasons.
|
||||
##
|
||||
|
||||
# SERVER-34868 Cannot run a legacy query on a session.
|
||||
- jstests/core/**/exhaust.js
|
||||
# SERVER-34868 Cannot run a legacy query on a session.
|
||||
- jstests/core/**/exhaust.js
|
||||
|
||||
# SERVER-34772 Tailable Cursors are not allowed with snapshot readconcern.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js
|
||||
- jstests/core/**/getmore_cmd_maxtimems.js
|
||||
- jstests/core/**/tailable_cursor_invalidation.js
|
||||
- jstests/core/**/tailable_getmore_batch_size.js
|
||||
# SERVER-34772 Tailable Cursors are not allowed with snapshot readconcern.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js
|
||||
- jstests/core/**/getmore_cmd_maxtimems.js
|
||||
- jstests/core/**/tailable_cursor_invalidation.js
|
||||
- jstests/core/**/tailable_getmore_batch_size.js
|
||||
|
||||
# Wrong count for top info (WriteLock)
|
||||
- jstests/core/**/top.js
|
||||
# Wrong count for top info (WriteLock)
|
||||
- jstests/core/**/top.js
|
||||
|
||||
# Expects collection to not have been created
|
||||
- jstests/core/**/insert_id_undefined.js
|
||||
# Expects collection to not have been created
|
||||
- jstests/core/**/insert_id_undefined.js
|
||||
|
||||
# Creates sessions explicitly, resulting in txns being run through different sessions
|
||||
# using a single txnNumber.
|
||||
- jstests/core/json_schema/misc_validation.js
|
||||
- jstests/core/views/views_all_commands.js
|
||||
# Creates sessions explicitly, resulting in txns being run through different sessions
|
||||
# using a single txnNumber.
|
||||
- jstests/core/json_schema/misc_validation.js
|
||||
- jstests/core/views/views_all_commands.js
|
||||
|
||||
# dropDatabase is not resilient to stepdowns on sharded cluster
|
||||
- jstests/core/**/dropdb.js
|
||||
# dropDatabase is not resilient to stepdowns on sharded cluster
|
||||
- jstests/core/**/dropdb.js
|
||||
|
||||
# Committing a transaction when the server is fsync locked fails.
|
||||
- jstests/core/**/fsync.js
|
||||
# Committing a transaction when the server is fsync locked fails.
|
||||
- jstests/core/**/fsync.js
|
||||
|
||||
# Expects legacy errors ($err).
|
||||
- jstests/core/**/constructors.js
|
||||
# Expects legacy errors ($err).
|
||||
- jstests/core/**/constructors.js
|
||||
|
||||
# txn interrupted by command outside of txn before getMore runs.
|
||||
- jstests/core/**/commands_namespace_parsing.js
|
||||
- jstests/core/**/drop3.js
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js
|
||||
- jstests/core/**/getmore_invalidated_cursors.js
|
||||
- jstests/core/**/getmore_invalidated_documents.js
|
||||
- jstests/core/**/kill_cursors.js
|
||||
- jstests/core/**/list_indexes.js
|
||||
- jstests/core/**/oro.js
|
||||
- jstests/core/**/sort_with_update_between_getmores.js
|
||||
# txn interrupted by command outside of txn before getMore runs.
|
||||
- jstests/core/**/commands_namespace_parsing.js
|
||||
- jstests/core/**/drop3.js
|
||||
- jstests/core/**/geo_s2cursorlimitskip.js
|
||||
- jstests/core/**/getmore_invalidated_cursors.js
|
||||
- jstests/core/**/getmore_invalidated_documents.js
|
||||
- jstests/core/**/kill_cursors.js
|
||||
- jstests/core/**/list_indexes.js
|
||||
- jstests/core/**/oro.js
|
||||
- jstests/core/**/sort_with_update_between_getmores.js
|
||||
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js
|
||||
- jstests/core/**/compact_keeps_indexes.js
|
||||
- jstests/core/**/count10.js
|
||||
- jstests/core/**/count_plan_summary.js
|
||||
- jstests/core/**/coveredIndex3.js
|
||||
- jstests/core/**/currentop.js
|
||||
- jstests/core/**/distinct3.js
|
||||
- jstests/core/**/find_and_modify_concurrent_update.js
|
||||
- jstests/core/**/fsync.js
|
||||
- jstests/core/**/geo_update_btree.js
|
||||
- jstests/core/**/loadserverscripts.js
|
||||
- jstests/core/**/mr_killop.js
|
||||
- jstests/core/**/removeb.js
|
||||
- jstests/core/**/removec.js
|
||||
- jstests/core/**/shellstartparallel.js
|
||||
- jstests/core/**/updatef.js
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/core/**/awaitdata_getmore_cmd.js
|
||||
- jstests/core/**/compact_keeps_indexes.js
|
||||
- jstests/core/**/count10.js
|
||||
- jstests/core/**/count_plan_summary.js
|
||||
- jstests/core/**/coveredIndex3.js
|
||||
- jstests/core/**/currentop.js
|
||||
- jstests/core/**/distinct3.js
|
||||
- jstests/core/**/find_and_modify_concurrent_update.js
|
||||
- jstests/core/**/fsync.js
|
||||
- jstests/core/**/geo_update_btree.js
|
||||
- jstests/core/**/loadserverscripts.js
|
||||
- jstests/core/**/mr_killop.js
|
||||
- jstests/core/**/removeb.js
|
||||
- jstests/core/**/removec.js
|
||||
- jstests/core/**/shellstartparallel.js
|
||||
- jstests/core/**/updatef.js
|
||||
|
||||
# Command expects to see result from parallel operation.
|
||||
# E.g. Suppose the following sequence of events: op1, join() op2 in parallel shell, op3.
|
||||
# op3 will still be using the snapshot from op1, and not see op2 at all.
|
||||
- jstests/core/**/bench_test1.js
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
- jstests/core/**/cursora.js
|
||||
# Command expects to see result from parallel operation.
|
||||
# E.g. Suppose the following sequence of events: op1, join() op2 in parallel shell, op3.
|
||||
# op3 will still be using the snapshot from op1, and not see op2 at all.
|
||||
- jstests/core/**/bench_test1.js
|
||||
- jstests/core/**/benchrun_pipeline_updates.js
|
||||
- jstests/core/**/cursora.js
|
||||
|
||||
# auto_retry_on_network_error.js will timeout with assert.soon and give a different error from
|
||||
# what test expects. Excluding from suite since it doesn't really do any database operations, so
|
||||
# it doesn't provide value here.
|
||||
- jstests/core/**/connection_string_validation.js
|
||||
# auto_retry_on_network_error.js will timeout with assert.soon and give a different error from
|
||||
# what test expects. Excluding from suite since it doesn't really do any database operations, so
|
||||
# it doesn't provide value here.
|
||||
- jstests/core/**/connection_string_validation.js
|
||||
|
||||
# Does not support tojson of command objects.
|
||||
- jstests/core/**/SERVER-23626.js
|
||||
# Does not support tojson of command objects.
|
||||
- jstests/core/**/SERVER-23626.js
|
||||
|
||||
# Examines _id of upserted document.
|
||||
- jstests/core/**/find_and_modify_server7660.js
|
||||
- jstests/core/**/upsert_shell.js
|
||||
# Examines _id of upserted document.
|
||||
- jstests/core/**/find_and_modify_server7660.js
|
||||
- jstests/core/**/upsert_shell.js
|
||||
|
||||
# This file is testing resmoke's multiversion framework, not Server behavior
|
||||
- jstests/core/**/mixed_version_replica_set.js
|
||||
# This file is testing resmoke's multiversion framework, not Server behavior
|
||||
- jstests/core/**/mixed_version_replica_set.js
|
||||
|
||||
exclude_with_any_tags:
|
||||
##
|
||||
# The next four tags correspond to the special errors thrown by the auto_retry_on_network_error.js
|
||||
# override when it refuses to run a certain command. Above each tag are the message(s) that cause
|
||||
# the tag to be warranted.
|
||||
##
|
||||
# "Refusing to run a test that issues a getMore command since if a network error occurs during
|
||||
# it then we won't know whether the cursor was advanced or not"
|
||||
- requires_getmore
|
||||
# "Refusing to run a test that issues non-retryable write operations since the test likely makes
|
||||
# assertions on the write results and can lead to spurious failures if a network error occurs"
|
||||
- requires_non_retryable_writes
|
||||
# "Refusing to run a test that issues commands that are not blindly retryable"
|
||||
# "Refusing to run a test that issues an aggregation command with $out because it is not
|
||||
# retryable"
|
||||
- requires_non_retryable_commands
|
||||
# "Refusing to run a test that issues commands that may return different values after a failover"
|
||||
# "Refusing to run a test that issues an aggregation command with explain because it may return
|
||||
# incomplete results"
|
||||
# "Refusing to run a test that issues an aggregation command with $listLocalCursors or
|
||||
# $listLocalSessions because they rely on in-memory state that may not survive failovers"
|
||||
# "Refusing to run a test that issues a mapReduce command, because it calls std::terminate() if
|
||||
# interrupted by a stepdown"
|
||||
- does_not_support_stepdowns
|
||||
##
|
||||
# The next four tags correspond to the special errors thrown by the auto_retry_on_network_error.js
|
||||
# override when it refuses to run a certain command. Above each tag are the message(s) that cause
|
||||
# the tag to be warranted.
|
||||
##
|
||||
# "Refusing to run a test that issues a getMore command since if a network error occurs during
|
||||
# it then we won't know whether the cursor was advanced or not"
|
||||
- requires_getmore
|
||||
# "Refusing to run a test that issues non-retryable write operations since the test likely makes
|
||||
# assertions on the write results and can lead to spurious failures if a network error occurs"
|
||||
- requires_non_retryable_writes
|
||||
# "Refusing to run a test that issues commands that are not blindly retryable"
|
||||
# "Refusing to run a test that issues an aggregation command with $out because it is not
|
||||
# retryable"
|
||||
- requires_non_retryable_commands
|
||||
# "Refusing to run a test that issues commands that may return different values after a failover"
|
||||
# "Refusing to run a test that issues an aggregation command with explain because it may return
|
||||
# incomplete results"
|
||||
# "Refusing to run a test that issues an aggregation command with $listLocalCursors or
|
||||
# $listLocalSessions because they rely on in-memory state that may not survive failovers"
|
||||
# "Refusing to run a test that issues a mapReduce command, because it calls std::terminate() if
|
||||
# interrupted by a stepdown"
|
||||
- does_not_support_stepdowns
|
||||
|
||||
##
|
||||
# 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 read concern of command: ..."
|
||||
- assumes_read_concern_unchanged
|
||||
# "writeConcern is not allowed within a multi-statement transaction"
|
||||
- assumes_write_concern_unchanged
|
||||
##
|
||||
# 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 read concern of command: ..."
|
||||
- assumes_read_concern_unchanged
|
||||
# "writeConcern is not allowed within a multi-statement transaction"
|
||||
- assumes_write_concern_unchanged
|
||||
|
||||
# The next tag corresponds to long running-operations, as they may exhaust their number
|
||||
# of retries and result in a network error being thrown.
|
||||
- operations_longer_than_stepdown_interval
|
||||
# This tag corresponds to operations which are run long enough to exceed the stepdown interval
|
||||
# when grouped into transactions
|
||||
- operations_longer_than_stepdown_interval_in_txns
|
||||
# The next tag corresponds to long running-operations, as they may exhaust their number
|
||||
# of retries and result in a network error being thrown.
|
||||
- operations_longer_than_stepdown_interval
|
||||
# This tag corresponds to operations which are run long enough to exceed the stepdown interval
|
||||
# when grouped into transactions
|
||||
- operations_longer_than_stepdown_interval_in_txns
|
||||
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_standalone_mongod
|
||||
# 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_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_standalone_mongod
|
||||
# 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_no_implicit_collection_creation_after_drop
|
||||
- assumes_no_implicit_index_creation
|
||||
- assumes_unsharded_collection
|
||||
- cannot_create_unique_index_when_using_hashed_shard_key
|
||||
|
||||
# The next tags correspond to the special errors thrown by the
|
||||
# fail_unclean_shutdown_incompatible_commands.js override when it refuses to run commands that are
|
||||
# inaccurate after an unclean shutdown. Above each tag is the message that causes the tag to be
|
||||
# warranted.
|
||||
##
|
||||
# "Cowardly fail if fastcount is run with a mongod that had an unclean shutdown: ..."
|
||||
- requires_fastcount
|
||||
# "Cowardly fail if dbStats is run with a mongod that had an unclean shutdown: ..."
|
||||
- requires_dbstats
|
||||
# "Cowardly fail if collStats is run with a mongod that had an unclean shutdown: ..."
|
||||
- requires_collstats
|
||||
# "Cowardly fail if startParallelShell is run with a mongod that had an unclean shutdown: ..."
|
||||
- uses_parallel_shell
|
||||
# The next tags correspond to the special errors thrown by the
|
||||
# fail_unclean_shutdown_incompatible_commands.js override when it refuses to run commands that are
|
||||
# inaccurate after an unclean shutdown. Above each tag is the message that causes the tag to be
|
||||
# warranted.
|
||||
##
|
||||
# "Cowardly fail if fastcount is run with a mongod that had an unclean shutdown: ..."
|
||||
- requires_fastcount
|
||||
# "Cowardly fail if dbStats is run with a mongod that had an unclean shutdown: ..."
|
||||
- requires_dbstats
|
||||
# "Cowardly fail if collStats is run with a mongod that had an unclean shutdown: ..."
|
||||
- requires_collstats
|
||||
# "Cowardly fail if startParallelShell is run with a mongod that had an unclean shutdown: ..."
|
||||
- uses_parallel_shell
|
||||
|
||||
# system.profile collection doesn't exist on mongos. Also, transactions are not allowed to operate
|
||||
# on capped collections.
|
||||
- requires_profiling
|
||||
# Snapshot reads in transactions are banned on capped collections.
|
||||
- requires_capped
|
||||
# Retrying a query can change whether a plan cache entry is active.
|
||||
- inspects_whether_plan_cache_entry_is_active
|
||||
- does_not_support_transactions
|
||||
# Transaction-continuing commands must use the same API parameters as the first command, so tests
|
||||
# that use API parameters cannot be run with transactions.
|
||||
- uses_api_parameters
|
||||
# Used for tests which can run in multiversion configurations but cannot run while a replica set
|
||||
# or shard is being actively upgraded or downgraded.
|
||||
- cannot_run_during_upgrade_downgrade
|
||||
- requires_timeseries # Transactions not supported
|
||||
# system.profile collection doesn't exist on mongos. Also, transactions are not allowed to operate
|
||||
# on capped collections.
|
||||
- requires_profiling
|
||||
# Snapshot reads in transactions are banned on capped collections.
|
||||
- requires_capped
|
||||
# Retrying a query can change whether a plan cache entry is active.
|
||||
- inspects_whether_plan_cache_entry_is_active
|
||||
- does_not_support_transactions
|
||||
# Transaction-continuing commands must use the same API parameters as the first command, so tests
|
||||
# that use API parameters cannot be run with transactions.
|
||||
- uses_api_parameters
|
||||
# Used for tests which can run in multiversion configurations but cannot run while a replica set
|
||||
# or shard is being actively upgraded or downgraded.
|
||||
- cannot_run_during_upgrade_downgrade
|
||||
- requires_timeseries # Transactions not supported
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -374,26 +374,26 @@ executor:
|
|||
# retry logic in auto_retry_on_network_error.js.
|
||||
nodb: ""
|
||||
hooks:
|
||||
# We use a stepdown interval of 15 seconds because we will retry all commands in a transaction
|
||||
# so we need to allow time for at most 10 operations to be re-run and then re-committed. If
|
||||
# too many network errors occur when re-running a transaction we will run out of retries.
|
||||
- class: ContinuousStepdown
|
||||
config_stepdown: false
|
||||
should_downgrade: true
|
||||
stepdown_interval_ms: 15000
|
||||
- class: RunChangeStreamsInBackground
|
||||
# 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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
checkCollectionCounts: true
|
||||
- class: CheckOrphansDeleted
|
||||
# We use a stepdown interval of 15 seconds because we will retry all commands in a transaction
|
||||
# so we need to allow time for at most 10 operations to be re-run and then re-committed. If
|
||||
# too many network errors occur when re-running a transaction we will run out of retries.
|
||||
- class: ContinuousStepdown
|
||||
config_stepdown: false
|
||||
should_downgrade: true
|
||||
stepdown_interval_ms: 15000
|
||||
- class: RunChangeStreamsInBackground
|
||||
# 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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
shell_options:
|
||||
global_vars:
|
||||
TestData:
|
||||
checkCollectionCounts: true
|
||||
- class: CheckOrphansDeleted
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
|
|
|
|||
|
|
@ -2,24 +2,24 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# This test creates a collection (and index) inside a transaction. Even though the collections are
|
||||
# unsharded this suite enables sharding in the test database which makes transactions against
|
||||
# it distributed. This causes the following tests to fail since creating a collection in a
|
||||
# distributed transaction is not allowed.
|
||||
- jstests/change_streams/ddl_create_index_txn.js
|
||||
# This test creates a collection (and index) inside a transaction. Even though the collections are
|
||||
# unsharded this suite enables sharding in the test database which makes transactions against
|
||||
# it distributed. This causes the following tests to fail since creating a collection in a
|
||||
# distributed transaction is not allowed.
|
||||
- jstests/change_streams/ddl_create_index_txn.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
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
##
|
||||
# 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
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -32,7 +32,7 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
# Enable causal consistency for change streams suites using 1 node replica sets. See
|
||||
# change_streams.yml for detailed explanation.
|
||||
eval: >-
|
||||
|
|
@ -41,23 +41,23 @@ executor:
|
|||
await import('jstests/libs/override_methods/enable_sessions.js');
|
||||
await import('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js');
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
# Use two shards to make sure we will only talk to the primary shard for the database and will
|
||||
# not delay changes to wait for notifications or a clock advancement from other shards.
|
||||
num_shards: 2
|
||||
mongos_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
periodicNoopIntervalSecs: 1
|
||||
|
|
|
|||
|
|
@ -2,21 +2,21 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
exclude_with_any_tags:
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -39,27 +39,27 @@ executor:
|
|||
await import("jstests/libs/override_methods/network_error_and_txn_override.js");
|
||||
await import("jstests/libs/override_methods/implicit_filter_eot_changestreams.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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
# 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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
# Use two shards to make sure we will only talk to the primary shard for the database and will
|
||||
# not delay changes to wait for notifications or a clock advancement from other shards.
|
||||
num_shards: 2
|
||||
mongos_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
periodicNoopIntervalSecs: 1
|
||||
|
|
|
|||
|
|
@ -2,19 +2,19 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
exclude_with_any_tags:
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -36,18 +36,18 @@ executor:
|
|||
await import("jstests/libs/override_methods/network_error_and_txn_override.js");
|
||||
await import("jstests/libs/override_methods/implicit_filter_eot_changestreams.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
|
||||
# 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: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
num_nodes: 1
|
||||
|
|
|
|||
|
|
@ -8,19 +8,19 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
exclude_with_any_tags:
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -45,20 +45,20 @@ executor:
|
|||
await import("jstests/libs/override_methods/network_error_and_txn_override.js");
|
||||
await import("jstests/libs/override_methods/implicit_filter_eot_changestreams.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
|
||||
# TODO (SERVER-83433): Add back the test coverage for running db hash check on replica set
|
||||
# that is fsync locked and has replica set endpoint enabled.
|
||||
# - CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
# 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
|
||||
# TODO (SERVER-83433): Add back the test coverage for running db hash check on replica set
|
||||
# that is fsync locked and has replica set endpoint enabled.
|
||||
# - CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
featureFlagAllMongodsAreSharded: 1
|
||||
|
|
|
|||
|
|
@ -2,22 +2,22 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
# Parallel Shell - we do not signal the override to end a txn when a parallel shell closes.
|
||||
- jstests/change_streams/only_wake_getmore_for_relevant_changes.js
|
||||
exclude_with_any_tags:
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
# Exclude any tests that don't support sharding.
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_unsharded_collection
|
||||
# These tests would fail with "Cowardly refusing to override write concern of command: ..."
|
||||
- assumes_write_concern_unchanged
|
||||
# No need to use a passthrough to add transactions to a test that already has its own
|
||||
# transactions.
|
||||
- uses_transactions
|
||||
# These tests make assumptions about change stream results that are no longer true once operations
|
||||
# get bundled into transactions.
|
||||
- change_stream_does_not_expect_txns
|
||||
# Exclude any tests that don't support sharding.
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_unsharded_collection
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -40,24 +40,24 @@ executor:
|
|||
await import("jstests/libs/override_methods/network_error_and_txn_override.js");
|
||||
await import("jstests/libs/override_methods/implicit_filter_eot_changestreams.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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
# 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: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
writePeriodicNoops: 1
|
||||
|
|
|
|||
|
|
@ -2,62 +2,62 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
##
|
||||
# TODO SERVER-68341: Implement enable/disable command for mongoQ in the serverless.
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
##
|
||||
# TODO SERVER-68341: Implement enable/disable command for mongoQ in the serverless.
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
|
||||
##
|
||||
# TODO SERVER-70760: This test creates its own sharded cluster and uses transaction. The support
|
||||
# for transaction on multi-tenancy is not fully available. Unblock this test
|
||||
# after the support is available.
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_basic_match_pushdown_rewrite.js
|
||||
##
|
||||
# TODO SERVER-70760: This test creates its own sharded cluster and uses transaction. The support
|
||||
# for transaction on multi-tenancy is not fully available. Unblock this test
|
||||
# after the support is available.
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_basic_match_pushdown_rewrite.js
|
||||
|
||||
##
|
||||
# These tests run in sharded clusters. The tenant token cannot be injected to the sharded cluster
|
||||
# currently, as such these tests cannot work in true multitenant environment.
|
||||
# TODO SERVER-68341: Remove these JS tests from exclusion list.
|
||||
- jstests/change_streams/show_resharding_system_events.js
|
||||
- jstests/change_streams/refine_collection_shard_key_event.js
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
- jstests/change_streams/change_streams_lookup_preimage_with_chunk_migration.js
|
||||
- jstests/change_streams/migrate_last_chunk_from_shard_event.js
|
||||
- jstests/change_streams/shard_collection_event.js
|
||||
- jstests/change_streams/create_event_from_chunk_migration.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_documentKey_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_fullDocumentBeforeChange_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_fullDocument_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_operation_type_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_to_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_updateDescription_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/match_pushdown_namespace_rewrite_with_expanded_events.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_basic_match_pushdown_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_namespace_rewrite.js
|
||||
- jstests/change_streams/reshard_collection_event.js
|
||||
##
|
||||
# These tests run in sharded clusters. The tenant token cannot be injected to the sharded cluster
|
||||
# currently, as such these tests cannot work in true multitenant environment.
|
||||
# TODO SERVER-68341: Remove these JS tests from exclusion list.
|
||||
- jstests/change_streams/show_resharding_system_events.js
|
||||
- jstests/change_streams/refine_collection_shard_key_event.js
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
- jstests/change_streams/change_streams_lookup_preimage_with_chunk_migration.js
|
||||
- jstests/change_streams/migrate_last_chunk_from_shard_event.js
|
||||
- jstests/change_streams/shard_collection_event.js
|
||||
- jstests/change_streams/create_event_from_chunk_migration.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_documentKey_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_fullDocumentBeforeChange_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_fullDocument_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_operation_type_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_to_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_updateDescription_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/match_pushdown_namespace_rewrite_with_expanded_events.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_basic_match_pushdown_rewrite.js
|
||||
- jstests/change_streams/oplog_rewrite/change_stream_match_pushdown_namespace_rewrite.js
|
||||
- jstests/change_streams/reshard_collection_event.js
|
||||
|
||||
##
|
||||
# These tests issue 'applyOps' command to which tenant token cannot be injected.
|
||||
- jstests/change_streams/apply_ops.js
|
||||
- jstests/change_streams/lookup_pit_pre_and_post_image_in_transaction.js
|
||||
##
|
||||
# These tests issue 'applyOps' command to which tenant token cannot be injected.
|
||||
- jstests/change_streams/apply_ops.js
|
||||
- jstests/change_streams/lookup_pit_pre_and_post_image_in_transaction.js
|
||||
|
||||
##
|
||||
# This test uses 'system' database and tenant token cannot be injected in 'system.$cmd' namespace.
|
||||
- jstests/change_streams/global_index.js
|
||||
##
|
||||
# This test uses 'system' database and tenant token cannot be injected in 'system.$cmd' namespace.
|
||||
- jstests/change_streams/global_index.js
|
||||
|
||||
# Queryable encryption test requires an internal connection for the keyvault that does not
|
||||
# inject tenant token.
|
||||
- jstests/change_streams/queryable_encryption_change_stream.js
|
||||
# Queryable encryption test requires an internal connection for the keyvault that does not
|
||||
# inject tenant token.
|
||||
- jstests/change_streams/queryable_encryption_change_stream.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
|
||||
##
|
||||
# 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:
|
||||
|
|
@ -69,7 +69,7 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
tenantId: "636d957b2646ddfaf9b5e13f"
|
||||
hashTestNamesForMultitenancy: true
|
||||
# Enable causal consistency for change streams suites using 1 node replica sets. See
|
||||
|
|
@ -80,22 +80,22 @@ executor:
|
|||
await import('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js');
|
||||
await import('jstests/libs/override_methods/simulate_mongoq.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: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: EnableChangeStream
|
||||
tenant_id: "636d957b2646ddfaf9b5e13f"
|
||||
# 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: CheckReplDBHash
|
||||
- class: ValidateCollections
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: EnableChangeStream
|
||||
tenant_id: "636d957b2646ddfaf9b5e13f"
|
||||
fixture:
|
||||
class: ReplicaSetFixture
|
||||
replset_name: "ChangeStreamMultitenantReplSet"
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
serverless: true
|
||||
noscripting: ''
|
||||
noscripting: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
featureFlagServerlessChangeStreams: true
|
||||
|
|
|
|||
|
|
@ -2,35 +2,35 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# TODO SERVER-68341: Implement enable/disable command for mongoQ in the serverless.
|
||||
- jstests/change_streams/**/*.js
|
||||
# TODO SERVER-68341: Implement enable/disable command for mongoQ in the serverless.
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
# TODO SERVER-68557 This test list databases that does not work in the sharded-cluster. This test
|
||||
# should be unblocked after the ticket is done.
|
||||
- jstests/change_streams/does_not_implicitly_create_database.js
|
||||
# TODO SERVER-68341: Implement enable/disable command for mongoQ in the serverless.
|
||||
- jstests/change_streams/**/*.js
|
||||
# TODO SERVER-68341: Implement enable/disable command for mongoQ in the serverless.
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
# TODO SERVER-68557 This test list databases that does not work in the sharded-cluster. This test
|
||||
# should be unblocked after the ticket is done.
|
||||
- jstests/change_streams/does_not_implicitly_create_database.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
|
||||
# Exclude any that assume sharding is disabled.
|
||||
- assumes_against_mongod_not_mongos
|
||||
# This passthrough implicitly shards the accessed collections. Do not run tests that assume
|
||||
# unsharded collections.
|
||||
- assumes_unsharded_collection
|
||||
# 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
|
||||
# TODO SERVER-70760: The support for transaction in not fully available in multi-tenant sharded
|
||||
# cluster. This tag should be removed after it is available.
|
||||
- uses_transactions
|
||||
##
|
||||
# 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
|
||||
# Exclude any that assume sharding is disabled.
|
||||
- assumes_against_mongod_not_mongos
|
||||
# This passthrough implicitly shards the accessed collections. Do not run tests that assume
|
||||
# unsharded collections.
|
||||
- assumes_unsharded_collection
|
||||
# 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
|
||||
# TODO SERVER-70760: The support for transaction in not fully available in multi-tenant sharded
|
||||
# cluster. This tag should be removed after it is available.
|
||||
- uses_transactions
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -43,7 +43,7 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
# Enable causal consistency for change streams suites using 1 node replica sets. See
|
||||
# change_streams.yml for detailed explanation.
|
||||
eval: >-
|
||||
|
|
@ -53,22 +53,22 @@ executor:
|
|||
await import('jstests/libs/override_methods/implicitly_shard_accessed_collections.js');
|
||||
await import('jstests/libs/override_methods/override_fixtures_changestream_multitenancy.js');
|
||||
hooks:
|
||||
- class: EnableChangeStream
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: EnableChangeStream
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
num_shards: 2
|
||||
mongos_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
periodicNoopIntervalSecs: 1
|
||||
|
|
@ -76,6 +76,6 @@ executor:
|
|||
shard_options:
|
||||
mongod_options:
|
||||
set_parameters:
|
||||
# TODO SERVER-68341 Pass multitenancy flags to the set_parameters.
|
||||
# TODO SERVER-68341 Pass multitenancy flags to the set_parameters.
|
||||
featureFlagServerlessChangeStreams: true
|
||||
internalChangeStreamUseTenantIdForTesting: true
|
||||
|
|
|
|||
|
|
@ -2,25 +2,25 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.js
|
||||
exclude_files:
|
||||
# Expects a change stream cursor to be open on each of 2 shards.
|
||||
- jstests/change_streams/projection_fakes_internal_event.js
|
||||
# Expects a change stream cursor to be open on each of 2 shards.
|
||||
- jstests/change_streams/projection_fakes_internal_event.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
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_unsharded_collection
|
||||
# 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
|
||||
##
|
||||
# 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
|
||||
# Exclude any that assume sharding is disabled
|
||||
- assumes_against_mongod_not_mongos
|
||||
- assumes_unsharded_collection
|
||||
# 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
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -33,7 +33,7 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
# Enable causal consistency for change streams suites using 1 node replica sets. See
|
||||
# change_streams.yml for detailed explanation.
|
||||
eval: >-
|
||||
|
|
@ -43,20 +43,20 @@ executor:
|
|||
await import('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js');
|
||||
await import('jstests/libs/override_methods/implicit_passthrough_to_shard_changestreams.js');
|
||||
hooks:
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
- class: CheckReplDBHash
|
||||
- class: CheckMetadataConsistencyInBackground
|
||||
- class: ValidateCollections
|
||||
- class: CheckOrphansDeleted
|
||||
- class: CleanEveryN
|
||||
n: 20
|
||||
fixture:
|
||||
class: ShardedClusterFixture
|
||||
mongos_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
mongod_options:
|
||||
bind_ip_all: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
writePeriodicNoops: 1
|
||||
|
|
|
|||
|
|
@ -2,18 +2,18 @@ test_kind: js_test
|
|||
|
||||
selector:
|
||||
roots:
|
||||
- jstests/change_streams/**/*.js
|
||||
- jstests/change_streams/**/*.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
|
||||
# Not relevant for whole-cluster change streams.
|
||||
- do_not_run_in_whole_cluster_passthrough
|
||||
##
|
||||
# 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
|
||||
# Not relevant for whole-cluster change streams.
|
||||
- do_not_run_in_whole_cluster_passthrough
|
||||
|
||||
executor:
|
||||
archive:
|
||||
|
|
@ -26,7 +26,7 @@ executor:
|
|||
global_vars:
|
||||
TestData:
|
||||
defaultReadConcernLevel: null
|
||||
enableMajorityReadConcern: ''
|
||||
enableMajorityReadConcern: ""
|
||||
# Enable causal consistency for change streams suites using 1 node replica sets. See
|
||||
# change_streams.yml for detailed explanation.
|
||||
eval: >-
|
||||
|
|
@ -35,18 +35,18 @@ executor:
|
|||
await import('jstests/libs/override_methods/implicit_whole_cluster_changestreams.js');
|
||||
await import('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
|
||||
# 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: ''
|
||||
bind_ip_all: ""
|
||||
set_parameters:
|
||||
enableTestCommands: 1
|
||||
num_nodes: 1
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue