mirror of https://github.com/mongodb/mongo
SERVER-91559 Fix bazel_run.sh's exit code (#23537)
GitOrigin-RevId: 3d3c9384a457abc2d01772dc1115baab8625c82f
This commit is contained in:
parent
323ad58298
commit
6739217249
1
.bazelrc
1
.bazelrc
|
|
@ -63,6 +63,7 @@ common --remote_upload_local_results=False
|
|||
|
||||
# Settings specific for clang-tidy
|
||||
--config=clang-tidy
|
||||
build:clang-tidy --//bazel/config:compiler_type=clang
|
||||
build:clang-tidy --aspects @bazel_clang_tidy//clang_tidy:clang_tidy.bzl%clang_tidy_aspect
|
||||
build:clang-tidy --output_groups=report
|
||||
build:clang-tidy --@bazel_clang_tidy//:clang_tidy_config=//:clang_tidy_config
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
fixture:
|
||||
mongod_options:
|
||||
set_parameters:
|
||||
internalQueryFindCommandBatchSize: 2 # Changes the default batchSize of db.coll.find() from 101 to 2.
|
||||
internalQueryFindCommandBatchSize: 2 # Changes the default batchSize of db.coll.find() from 101 to 2.
|
||||
|
||||
- name: excluded_files
|
||||
value:
|
||||
|
|
|
|||
|
|
@ -29,6 +29,7 @@ and x86-64. More detailed platform instructions can be found below.
|
|||
## Quick (re)Start
|
||||
|
||||
### Linux Workstation
|
||||
|
||||
```bash
|
||||
git clean -fdx # USE WITH CAUTION! Delete every untracked file including .gitignored files (this is basically everything)
|
||||
# Close and reopen your terminal to clear out any problems from your old environment
|
||||
|
|
|
|||
|
|
@ -391,9 +391,9 @@ tasks:
|
|||
commands:
|
||||
- func: "do scons setup"
|
||||
- func: "fetch bazel"
|
||||
- func: "bazel compile (gcc)"
|
||||
- func: "bazel compile (clang)"
|
||||
vars:
|
||||
compiler: gcc # gcc is required by bazel_compile.sh, but overridden by the --config=clang-tidy flag
|
||||
compiler: clang
|
||||
# Note that we only run clang-tidy on the Mongo-authored targets, not on third-party code.
|
||||
targets: //src/mongo/...
|
||||
args: --config=clang-tidy
|
||||
|
|
|
|||
|
|
@ -513,7 +513,7 @@ buildvariants:
|
|||
--variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars
|
||||
--link-model=dynamic
|
||||
large_distro_name: amazon2023.0-arm64-large
|
||||
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
|
||||
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
|
||||
# The gcov instrumentation saves the path the .gcno files were created in as the default path
|
||||
# for the .gcda files. In Evergreen the path will start with /data/mci/[Hashed ID]/src/... where
|
||||
# the hashed ID is unique per task run. GCOV_PREFIX_STRIP is the number of directory levels to
|
||||
|
|
@ -527,9 +527,9 @@ buildvariants:
|
|||
num_scons_link_jobs_available: 0.99
|
||||
compile_variant: *AL2023-arm64-coverage
|
||||
tasks: &AL2023-arm64-coverage-tasks
|
||||
- name: compile_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- amazon2023.0-arm64-large
|
||||
- name: compile_test_parallel_unittest_stream_TG
|
||||
distros:
|
||||
- amazon2023.0-arm64-large
|
||||
- name: compile_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- amazon2023.0-arm64-large
|
||||
- name: compile_test_parallel_unittest_stream_TG
|
||||
distros:
|
||||
- amazon2023.0-arm64-large
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ buildvariants:
|
|||
display_name: "Amazon Linux 2"
|
||||
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
|
||||
run_on:
|
||||
- amazon2-latest-small
|
||||
- amazon2-latest-small
|
||||
expansions:
|
||||
test_flags: >-
|
||||
--excludeWithAnyTags=SERVER-34286,incompatible_with_amazon_linux,requires_external_data_source,requires_latch_analyzer
|
||||
|
|
@ -36,20 +36,20 @@ buildvariants:
|
|||
large_distro_name: amazon2-latest-large
|
||||
compile_variant: amazon2
|
||||
tasks:
|
||||
- name: compile_test_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- amazon2-latest-large
|
||||
- name: test_packages
|
||||
distros:
|
||||
- ubuntu2204-large
|
||||
- name: .development_critical !.incompatible_community
|
||||
- name: .release_critical !.incompatible_community
|
||||
- name: compile_test_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- amazon2-latest-large
|
||||
- name: test_packages
|
||||
distros:
|
||||
- ubuntu2204-large
|
||||
- name: .development_critical !.incompatible_community
|
||||
- name: .release_critical !.incompatible_community
|
||||
|
||||
- name: enterprise-amazon2
|
||||
display_name: "Enterprise Amazon Linux 2"
|
||||
cron: "0 4 * * *" # From the ${project_nightly_cron} parameter.
|
||||
run_on:
|
||||
- amazon2-latest-small
|
||||
- amazon2-latest-small
|
||||
expansions:
|
||||
additional_package_targets: >-
|
||||
archive-mongocryptd
|
||||
|
|
@ -81,14 +81,14 @@ buildvariants:
|
|||
core_analyzer_distro_name: amazon2-latest-large
|
||||
large_distro_name: amazon2-latest-large
|
||||
tasks:
|
||||
- name: compile_test_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- amazon2-latest-large
|
||||
- name: test_packages
|
||||
distros:
|
||||
- ubuntu2204-large
|
||||
- name: .development_critical
|
||||
- name: .release_critical
|
||||
- name: compile_test_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- amazon2-latest-large
|
||||
- name: test_packages
|
||||
distros:
|
||||
- ubuntu2204-large
|
||||
- name: .development_critical
|
||||
- name: .release_critical
|
||||
|
||||
- name: enterprise-amazon2-openssl111
|
||||
display_name: "Enterprise Amazon Linux 2 (openssl 1.1.1)"
|
||||
|
|
|
|||
|
|
@ -364,7 +364,7 @@ buildvariants:
|
|||
--variables-files=etc/scons/mongodbtoolchain_stable_gcc.vars
|
||||
--link-model=dynamic
|
||||
large_distro_name: rhel90-medium
|
||||
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
|
||||
resmoke_jobs_factor: 0.5 # Avoid starting too many mongod's
|
||||
# The gcov instrumentation saves the path the .gcno files were created in as the default path
|
||||
# for the .gcda files. In Evergreen the path will start with /data/mci/[Hashed ID]/src/... where
|
||||
# the hashed ID is unique per task run. GCOV_PREFIX_STRIP is the number of directory levels to
|
||||
|
|
@ -378,9 +378,9 @@ buildvariants:
|
|||
num_scons_link_jobs_available: 0.99
|
||||
compile_variant: *rhel-90-64-bit-coverage
|
||||
tasks: &rhel-90-64-bit-coverage-tasks
|
||||
- name: compile_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- rhel90-large
|
||||
- name: compile_test_parallel_unittest_stream_TG
|
||||
distros:
|
||||
- rhel90-large
|
||||
- name: compile_and_package_serial_no_unittests_TG
|
||||
distros:
|
||||
- rhel90-large
|
||||
- name: compile_test_parallel_unittest_stream_TG
|
||||
distros:
|
||||
- rhel90-large
|
||||
|
|
|
|||
|
|
@ -358,7 +358,8 @@ buildvariants:
|
|||
- rhel80-small
|
||||
stepback: false
|
||||
activate: true
|
||||
expansions: &enterprise-rhel-80-64-bit-dynamic-replica-set-endpoint-expansions
|
||||
expansions:
|
||||
&enterprise-rhel-80-64-bit-dynamic-replica-set-endpoint-expansions
|
||||
<<: *enterprise-rhel-80-64-bit-dynamic-expansions
|
||||
test_flags: >-
|
||||
--runAllFeatureFlagTests
|
||||
|
|
|
|||
|
|
@ -58,3 +58,5 @@ for i in {1..5}; do
|
|||
eval $BAZEL_BINARY build --verbose_failures $LOCAL_ARG --//bazel/config:compiler_type=${compiler} ${args} ${targets} && RET=0 && break || RET=$? && sleep 1
|
||||
echo "Bazel failed to execute, retrying..."
|
||||
done
|
||||
|
||||
exit $RET
|
||||
|
|
|
|||
|
|
@ -59,3 +59,5 @@ for i in {1..5}; do
|
|||
eval $BAZEL_BINARY run --verbose_failures $LOCAL_ARG ${args} ${target} && RET=0 && break || RET=$? && sleep 1
|
||||
echo "Bazel failed to execute, retrying..."
|
||||
done
|
||||
|
||||
exit $RET
|
||||
|
|
|
|||
|
|
@ -1581,7 +1581,7 @@ supersede.
|
|||
# Rollback: Recover To A Timestamp (RTT)
|
||||
|
||||
Rollback is the process whereby a node that diverges from its sync source gets back to a consistent
|
||||
point in time on the sync source's branch of history.
|
||||
point in time on the sync source's branch of history.
|
||||
|
||||
Situations that require rollback can occur due to network partitions. Consider a scenario where a
|
||||
secondary can no longer hear from the primary and subsequently runs for an election. We now have
|
||||
|
|
@ -2152,7 +2152,7 @@ replication consistently [maintains that](https://github.com/mongodb/mongo/blob/
|
|||
**`currentCommittedSnapshot`**: An optime maintained in `ReplicationCoordinator` that is used to
|
||||
serve majority reads and is always guaranteed to be <= `lastCommittedOpTime`. This
|
||||
is currently [set to the stable optime](https://github.com/mongodb/mongo/blob/00fbc981646d9e6ebc391f45a31f4070d4466753/src/mongo/db/repl/replication_coordinator_impl.cpp#L4945).
|
||||
Since it is reset every time we recalculate the stable optime, it will also be up to date.
|
||||
Since it is reset every time we recalculate the stable optime, it will also be up to date.
|
||||
|
||||
**`initialDataTimestamp`**: A timestamp used to indicate the timestamp at which history “begins”.
|
||||
When a node comes out of initial sync, we inform the storage engine that the `initialDataTimestamp`
|
||||
|
|
@ -2210,7 +2210,7 @@ populated internally from the `currentCommittedSnapshot` timestamp inside `Repli
|
|||
checkpoint, which can be thought of as a consistent snapshot of the data. Replication informs the
|
||||
storage engine of where it is safe to take its next checkpoint. This timestamp is guaranteed to be
|
||||
majority committed (other than a specific caveat during restore noted below) so that RTT rollback
|
||||
can use it.
|
||||
can use it.
|
||||
The calculation of this value in the replication layer occurs [here](https://github.com/mongodb/mongo/blob/00fbc981646d9e6ebc391f45a31f4070d4466753/src/mongo/db/repl/replication_coordinator_impl.cpp#L4824-L4881).
|
||||
The replication layer will [skip setting the stable timestamp](https://github.com/mongodb/mongo/blob/00fbc981646d9e6ebc391f45a31f4070d4466753/src/mongo/db/repl/replication_coordinator_impl.cpp#L4907-L4921)
|
||||
if it is earlier than the `initialDataTimestamp`, since data earlier than that timestamp may be
|
||||
|
|
|
|||
Loading…
Reference in New Issue