SERVER-94490 Upstream aggregated Bazel conversions (#26806)

GitOrigin-RevId: bdf6e5b959d12f0885b08f26375d30ea3b3129e1
This commit is contained in:
Daniel Moody 2024-09-06 02:20:00 -05:00 committed by MongoDB Bot
parent 3513e10128
commit e56fd2aceb
100 changed files with 3950 additions and 3124 deletions

View File

@ -4,16 +4,16 @@ load("//bazel/toolchains:mongo_toolchain.bzl", "toolchain_download")
http_archive(
name = "bazel_clang_tidy",
sha256 = "2d4a9c91fe6694205c0de0990ef4b276ef4346dc441ee4046faff1947d97a29f",
strip_prefix = "bazel_clang_tidy-1.4",
sha256 = "f77f7f63fc43b6f7dba23f807132e24c36110d481826685ce49f38a04058c4ea",
strip_prefix = "bazel_clang_tidy-1.5",
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/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.4.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.4.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.4.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.4.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.4.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.5.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.5.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.5.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.5.tar.gz",
"https://github.com/mongodb-forks/bazel_clang_tidy/archive/refs/tags/v1.5.tar.gz",
],
)

View File

@ -15,6 +15,7 @@ load(
"fsan",
"gcov",
"http_client",
"js_engine",
"libunwind",
"linker",
"linkstatic",
@ -1413,6 +1414,29 @@ config_setting(
},
)
# --------------------------------------
# use_tracing_profiler options
# --------------------------------------
bool_flag(
name = "use_tracing_profiler",
build_setting_default = False,
)
config_setting(
name = "use_tracing_profiler_enabled",
flag_values = {
"//bazel/config:use_tracing_profiler": "True",
},
)
config_setting(
name = "use_tracing_profiler_disabled",
flag_values = {
"//bazel/config:use_tracing_profiler": "False",
},
)
# --------------------------------------
# shared_archive options
# --------------------------------------
@ -1749,6 +1773,14 @@ selects.config_setting_group(
],
)
selects.config_setting_group(
name = "ssl_disabled_windows",
match_all = [
"@platforms//os:windows",
":ssl_enabled",
],
)
selects.config_setting_group(
name = "ssl_enabled_macos",
match_all = [
@ -1858,11 +1890,43 @@ selects.config_setting_group(
selects.config_setting_group(
name = "mongo_crypto_tom",
match_all = [
match_any = [
":ssl_disabled_linux",
],
)
# --------------------------------------
# ssl_provider options
# --------------------------------------
# TODO(SERVER-94377): The `mongo_crypto` setting refers to the old
# `MONGO_CRYPTO` variable in SCons. The `ssl_provider` usually coincides with
# that, but if ssl is disabled it'll get overridden to `none`. That is,
# regardless of operating system, you'll get `ssl_provider_none` here if ssl is
# disabled. We should figure out a more intuitive/robust solution to this.
[
selects.config_setting_group(
name = "ssl_provider_{}".format(mongo_crypto_value),
match_all = [
"mongo_crypto_{}".format(mongo_crypto_value),
":ssl_enabled",
],
)
for mongo_crypto_value in [
"apple",
"openssl",
"windows",
]
]
selects.config_setting_group(
name = "ssl_provider_none",
match_all = [
":ssl_disabled",
],
)
# --------------------------------------
# symbol reordering options
# --------------------------------------
@ -1884,3 +1948,26 @@ developer_dir(
name = "developer_dir",
build_setting_default = "/Applications/Xcode.app",
)
# --------------------------------------
# js_engine options
# --------------------------------------
js_engine(
name = "js_engine",
build_setting_default = "mozjs",
)
config_setting(
name = "js_engine_mozjs",
flag_values = {
"//bazel/config:js_engine": "mozjs",
},
)
config_setting(
name = "js_engine_none",
flag_values = {
"//bazel/config:js_engine": "none",
},
)

View File

@ -555,3 +555,17 @@ developer_dir = rule(
implementation = lambda ctx: developer_dir_provider(path = ctx.build_setting_value),
build_setting = config.string(flag = True),
)
# =========
# js_engine
# =========
js_engine_provider = provider(
doc = "JavaScript scripting engine implementation",
fields = {"engine": "Javascript scripting engine."},
)
js_engine = rule(
implementation = lambda ctx: js_engine_provider(engine = ctx.build_setting_value),
build_setting = config.string(flag = True),
)

View File

@ -1165,6 +1165,7 @@ MONGO_GLOBAL_INCLUDE_DIRECTORIES = [
"-I$(GENDIR)/src",
"-Isrc/third_party/immer/dist",
"-Isrc/third_party/SafeInt",
"-I$(GENDIR)/src/mongo/db/modules/enterprise/src",
"-Isrc/mongo/db/modules/enterprise/src",
]

View File

@ -843,6 +843,7 @@ def generate(env: SCons.Environment.Environment) -> None:
f"--platforms=//bazel/platforms:{distro_or_os}_{normalized_arch}",
f"--host_platform=//bazel/platforms:{distro_or_os}_{normalized_arch}",
f'--//bazel/config:ssl={"True" if env.GetOption("ssl") == "on" else "False"}',
f'--//bazel/config:js_engine={env.GetOption("js-engine")}',
"--define",
f"MONGO_VERSION={env['MONGO_VERSION']}",
"--compilation_mode=dbg", # always build this compilation mode as we always build with -g

View File

@ -16,6 +16,7 @@ mongo_cc_library(
"element.cpp",
],
hdrs = [
"algorithm.h",
"const_element.h",
"document.h",
"element.h",

View File

@ -9,6 +9,44 @@ exports_files(
]),
)
# Contains only the core ConnectionString functionality, *not* the ability to
# call connect() and return a DBClientBase* back. For that you need to link
# against the 'clientdriver_network' library.
mongo_cc_library(
name = "connection_string",
srcs = [
"connection_string.cpp",
"mongo_uri.cpp",
"//src/mongo/db/auth:sasl_command_constants.h",
"//src/mongo/util:dns_name.h",
],
hdrs = [
"connection_string.h",
"mongo_uri.h",
],
deps = [
"//src/mongo/util:dns_query",
"//src/mongo/util/net:network",
"//src/mongo/util/options_parser", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "internal_auth",
srcs = [
"internal_auth.cpp",
],
hdrs = [
"internal_auth.h",
],
deps = [
":connection_string",
"//src/mongo/bson/util:bson_extract",
"//src/mongo/db/auth",
"//src/mongo/util:md5",
],
)
idl_generator(
name = "sasl_aws_protocol_common_gen",
src = "sasl_aws_protocol_common.idl",
@ -41,6 +79,116 @@ idl_generator(
],
)
# Client-side SASL source necessary for native client SASL session.
# Includes base types and OIDC, PLAIN, SCRAM, and AWS (only if TLS configured)
# client mechs.
mongo_cc_library(
name = "native_sasl_client",
srcs = [
"native_sasl_client_session.cpp",
"sasl_client_authenticate.cpp",
"sasl_client_authenticate_impl.cpp",
"sasl_client_conversation.cpp",
"sasl_client_session.cpp",
"sasl_oidc_client_conversation.cpp",
"sasl_oidc_client_types_gen",
"sasl_plain_client_conversation.cpp",
"sasl_scram_client_conversation.cpp",
] + select({
"//bazel/config:ssl_enabled": [
"sasl_aws_client_conversation.cpp",
"sasl_aws_client_options_gen",
"sasl_x509_client_conversation.cpp",
],
"//conditions:default": [],
}),
hdrs = [
"native_sasl_client_session.h",
"sasl_aws_client_options.h",
"sasl_client_authenticate.h",
"sasl_client_conversation.h",
"sasl_client_session.h",
"sasl_oidc_client_conversation.h",
"sasl_oidc_client_params.h",
"sasl_plain_client_conversation.h",
"sasl_scram_client_conversation.h",
"sasl_x509_client_conversation.h",
"scram_client_cache.h",
"//src/mongo/crypto:mechanism_scram.h",
] + select({
"//bazel/config:ssl_enabled": [
"sasl_aws_client_conversation.h",
],
"//conditions:default": [],
}),
deps = [
":connection_string",
"//src/mongo/base:secure_allocator", # TODO(SERVER-93876): Remove.
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db/auth:sasl_mechanism_protocol",
"//src/mongo/db/commands:server_status_core",
"//src/mongo/executor:remote_command", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:command_status",
"//src/mongo/rpc:metadata", # TODO(SERVER-93876): Remove.
"//src/mongo/shell:program_runner", # TODO(SERVER-93876): Remove.
"//src/mongo/util:icu",
"//src/mongo/util:md5",
"//src/mongo/util/net:http_client", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
"//src/mongo/util/options_parser",
] + select({
"//bazel/config:ssl_enabled": [
":sasl_aws_client",
],
"//conditions:default": [],
}),
)
mongo_cc_library(
name = "authentication",
srcs = [
"authenticate.cpp",
],
hdrs = [
"authenticate.h",
],
deps = [
":connection_string", # TODO(SERVER-93876): Remove.
":internal_auth", # TODO(SERVER-93876): Remove.
":native_sasl_client",
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db/auth", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:remote_command", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "async_client",
srcs = [
"async_client.cpp",
],
hdrs = [
"async_client.h",
],
deps = [
":authentication",
"//src/mongo/db:connection_health_metrics_parameter", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/db:wire_version", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:test_commands_enabled", # TODO(SERVER-93876): Remove.
"//src/mongo/db/stats:counters", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:egress_connection_closer_manager",
"//src/mongo/rpc",
"//src/mongo/rpc:command_status", # TODO(SERVER-93876): Remove.
"//src/mongo/transport:message_compressor", # TODO(SERVER-93876): Remove.
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:ssl_manager", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "sasl_sspi_options_gen",
src = "sasl_sspi_options.idl",
@ -57,6 +205,35 @@ idl_generator(
],
)
mongo_cc_library(
name = "clientdriver_minimal",
srcs = [
"client_api_version_parameters_gen",
"dbclient_base.cpp",
"dbclient_cursor.cpp",
"index_spec.cpp",
],
hdrs = [
"dbclient_base.h",
"dbclient_cursor.h",
"index_spec.h",
],
deps = [
":authentication",
":connection_string", # TODO(SERVER-93876): Remove.
":read_preference", # TODO(SERVER-93876): Remove.
"//src/mongo/db:dbmessage",
"//src/mongo/db:server_base",
"//src/mongo/db:wire_version", # TODO(SERVER-93876): Remove.
"//src/mongo/db/pipeline:aggregation_request_helper",
"//src/mongo/db/query:command_request_response", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:query_request", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:command_status", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:ssl_manager",
],
)
idl_generator(
name = "global_conn_pool_gen",
src = "global_conn_pool.idl",
@ -162,3 +339,35 @@ mongo_cc_library(
"//src/mongo/db:service_context",
],
)
mongo_cc_library(
name = "remote_command_retry_scheduler",
srcs = [
"remote_command_retry_scheduler.cpp",
],
hdrs = [
"remote_command_retry_scheduler.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:task_executor_interface",
],
)
mongo_cc_library(
name = "fetcher",
srcs = [
"fetcher.cpp",
"//src/mongo/db:clientcursor.h",
"//src/mongo/db:cursor_id.h",
],
hdrs = [
"fetcher.h",
],
deps = [
":remote_command_retry_scheduler",
"//src/mongo/db:server_base",
"//src/mongo/executor:task_executor_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:command_status",
],
)

View File

@ -17,73 +17,6 @@ def shouldBuildGRPC(myEnv):
return myEnv.TargetOSIs("linux") and myEnv["ENABLE_GRPC_BUILD"]
# Contains only the core ConnectionString functionality, *not* the ability to call connect() and
# return a DBClientBase* back. For that you need to link against the "clientdriver_network" library.
env.Library(
target="connection_string",
source=[
"connection_string.cpp",
"mongo_uri.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/util/net/network",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/dns_query",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)
# Client-side SASL source necessary for native client SASL session.
# Includes base types and OIDC, PLAIN, SCRAM, and AWS (only if TLS configured)
# client mechs.
nativeSaslClientEnv = env.Clone()
nativeSaslClientSource = [
"native_sasl_client_session.cpp",
"sasl_client_authenticate.cpp",
"sasl_client_authenticate_impl.cpp",
"sasl_client_conversation.cpp",
"sasl_client_session.cpp",
"sasl_oidc_client_conversation.cpp",
"sasl_oidc_client_types_gen.cpp",
"sasl_plain_client_conversation.cpp",
"sasl_scram_client_conversation.cpp",
"sasl_x509_client_conversation.cpp" if get_option("ssl") == "on" else [],
]
if get_option("ssl") == "on":
nativeSaslClientSource.extend(
[
"sasl_aws_client_conversation.cpp",
"sasl_aws_client_options_gen.cpp",
]
)
nativeSaslClientEnv.Library(
target="native_sasl_client",
source=nativeSaslClientSource,
LIBDEPS=[
"$BUILD_DIR/mongo/base/secure_allocator",
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/executor/remote_command",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/metadata",
"$BUILD_DIR/mongo/util/icu",
"$BUILD_DIR/mongo/util/md5",
"$BUILD_DIR/mongo/util/net/network",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
"sasl_aws_client" if get_option("ssl") == "on" else "",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/sasl_mechanism_protocol",
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/shell/program_runner",
"$BUILD_DIR/mongo/util/net/http_client",
"connection_string",
],
)
if env["MONGO_BUILD_SASL_CLIENT"]:
# Client-side SASL source necessary for mongo shell.
# Includes Cyrus SASL, OIDC, PLAIN, and AWS (if TLS support is on)
@ -112,70 +45,11 @@ if env["MONGO_BUILD_SASL_CLIENT"]:
],
)
env.Library(
target="authentication",
source=[
"authenticate.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/executor/remote_command",
"internal_auth",
"native_sasl_client",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/server_base",
"connection_string",
],
)
env.Library(
target="internal_auth",
source=[
"internal_auth.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/util/md5",
"connection_string",
],
)
clientDriverEnv = env.Clone()
clientDriverEnv.InjectThirdParty("asio")
if shouldBuildGRPC(env):
clientDriverEnv.InjectThirdParty(libraries=["grpc"])
clientDriverEnv.Library(
target="clientdriver_minimal",
source=[
"client_api_version_parameters_gen.cpp",
"dbclient_base.cpp",
"dbclient_cursor.cpp",
"index_spec.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/dbmessage",
"$BUILD_DIR/mongo/db/pipeline/aggregation_request_helper",
"$BUILD_DIR/mongo/db/query/command_request_response",
"$BUILD_DIR/mongo/db/query/query_request",
"$BUILD_DIR/mongo/db/wire_version",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/rpc",
"authentication",
"connection_string",
"read_preference",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/net/ssl_manager",
],
)
clientDriverEnv.Library(
target="clientdriver_network",
source=[
@ -225,30 +99,6 @@ clientDriverEnv.Library(
],
)
env.Library(
target="async_client",
source=[
"async_client.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/wire_version",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/rpc",
"$BUILD_DIR/mongo/transport/transport_layer_common",
"$BUILD_DIR/mongo/util/net/ssl_manager",
"authentication",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
"$BUILD_DIR/mongo/db/connection_health_metrics_parameter",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/db/stats/counters",
"$BUILD_DIR/mongo/executor/egress_connection_closer_manager",
"$BUILD_DIR/mongo/transport/message_compressor",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="remote_command_targeter",
source=[
@ -286,32 +136,6 @@ env.Library(
],
)
env.Library(
target="fetcher",
source=[
"fetcher.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/executor/task_executor_interface",
"$BUILD_DIR/mongo/rpc/command_status",
"remote_command_retry_scheduler",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
],
)
env.Library(
target="remote_command_retry_scheduler",
source=[
"remote_command_retry_scheduler.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/executor/task_executor_interface",
],
)
if wiredtiger:
env.CppUnitTest(
target="client_test",

View File

@ -14,6 +14,42 @@ idl_generator(
src = "sdam_configuration_parameters.idl",
)
mongo_cc_library(
name = "sdam",
srcs = [
"sdam_configuration.cpp",
"sdam_datatypes.cpp",
"server_description.cpp",
"server_selector.cpp",
"topology_description.cpp",
"topology_listener.cpp",
"topology_manager.cpp",
"topology_state_machine.cpp",
":sdam_configuration_parameters_gen",
],
hdrs = [
"election_id_set_version_pair.h",
"sdam_configuration.h",
"sdam_datatypes.h",
"server_description.h",
"server_selector.h",
"topology_description.h",
"topology_listener.h",
"topology_manager.h",
"topology_state_machine.h",
],
deps = [
"//src/mongo/client:read_preference", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:wire_version", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:optime", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:task_executor_interface",
"//src/mongo/rpc:metadata",
"//src/mongo/util:clock_sources", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "json_test_runner_cli_options_gen",
src = "json_test_runner_cli_options.idl",

View File

@ -4,33 +4,6 @@ Import("env")
env = env.Clone()
env.Library(
target="sdam",
source=[
"sdam_configuration.cpp",
"sdam_configuration_parameters_gen.cpp",
"sdam_datatypes.cpp",
"server_description.cpp",
"server_selector.cpp",
"topology_description.cpp",
"topology_listener.cpp",
"topology_manager.cpp",
"topology_state_machine.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/client/read_preference",
"$BUILD_DIR/mongo/db/repl/optime",
"$BUILD_DIR/mongo/db/wire_version",
"$BUILD_DIR/mongo/executor/task_executor_interface",
"$BUILD_DIR/mongo/rpc/metadata",
"$BUILD_DIR/mongo/util/clock_sources",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/fail_point",
],
)
sdam_json_test = env.Program(
target="sdam_json_test",
source=[

View File

@ -9,6 +9,21 @@ exports_files(
]),
)
mongo_cc_library(
name = "aead_encryption",
srcs = [
"aead_encryption.cpp",
],
hdrs = [
"aead_encryption.h",
],
deps = [
":fle_fields",
":sha_block",
":symmetric_crypto", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "encryption_fields_gen",
src = "encryption_fields.idl",
@ -17,6 +32,78 @@ idl_generator(
],
)
mongo_cc_library(
name = "encrypted_field_config",
srcs = [
"encryption_fields_gen",
"encryption_fields_validation.cpp",
"fle_numeric.cpp",
],
hdrs = [
"encryption_fields_validation.h",
"fle_numeric.h",
],
deps = [
"//src/mongo/db:common", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_feature_flags",
"//src/mongo/db/pipeline:value_idl",
],
)
mongo_cc_library(
name = "fle_fields",
srcs = [
"fle_field_schema_gen",
"fle_fields_util.cpp",
],
hdrs = [
"fle_fields_util.h",
],
deps = [
":encrypted_field_config",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "fle_crypto",
srcs = [
"encryption_fields_util.cpp",
"fle_crypto.cpp",
"fle_options_gen",
"fle_stats.cpp",
"fle_stats_gen",
"fle_tags.cpp",
"fle_tokens_gen",
],
hdrs = [
"encryption_fields_util.h",
"fle_crypto.h",
"fle_stats.h",
"fle_tags.h",
],
deps = [
# TODO(SERVER-93876): Remove many of these.
"//src/mongo/base:secure_allocator",
"//src/mongo/bson/util:bson_extract",
"//src/mongo/db/commands:server_status_core",
"//src/mongo/db/exec/document_value",
"//src/mongo/db/query:query_knobs",
"//src/mongo/db:common",
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags",
"//src/mongo/idl:cluster_server_parameter",
"//src/mongo/shell:kms_idl",
"//src/mongo/util:testing_options",
"//src/third_party/libmongocrypt:mongocrypt",
":aead_encryption",
":encrypted_field_config",
":fle_fields",
":sha_block",
],
)
idl_generator(
name = "fle_options_gen",
src = "fle_options.idl",
@ -113,37 +200,49 @@ mongo_cc_library(
],
)
[
mongo_cc_library(
name = "sha_block_{}".format(mongo_crypto),
srcs = [
mongo_cc_library(
name = "sha_block",
srcs = select({
"//bazel/config:mongo_crypto_{}".format(mongo_crypto): [
"sha_block_{}.cpp".format(mongo_crypto),
],
hdrs = [
"hash_block.h",
"sha512_block.h",
],
header_deps = [
"//src/mongo/db/concurrency:flow_control_ticketholder",
],
local_defines = ["LTC_NO_PROTOTYPES"] if mongo_crypto == "tom" else [],
target_compatible_with = select({
"//bazel/config:mongo_crypto_{}".format(mongo_crypto): [],
"//conditions:default": ["@platforms//:incompatible"],
}),
deps = [
":sha1_block",
":sha256_block",
"//src/mongo:base",
],
)
for mongo_crypto in [
"windows",
"apple",
"openssl",
"tom",
]
]
]
for mongo_crypto in [
"windows",
"apple",
"openssl",
"tom",
]
} | {
"//conditions:default": ["@platforms//:incompatible"],
}),
hdrs = [
"hash_block.h",
"sha512_block.h",
],
header_deps = [
"//src/mongo/db/concurrency:flow_control_ticketholder",
],
local_defines = select({
"//bazel/config:mongo_crypto_tom": ["LTC_NO_PROTOTYPES"],
"//conditions:default": [],
}),
target_compatible_with = select({
"//bazel/config:mongo_crypto_{}".format(mongo_crypto): []
for mongo_crypto in [
"windows",
"apple",
"openssl",
"tom",
]
} | {
"//conditions:default": ["@platforms//:incompatible"],
}),
deps = [
":sha1_block",
":sha256_block",
"//src/mongo:base",
],
)
mongo_cc_library(
name = "symmetric_crypto",

View File

@ -10,96 +10,6 @@ Import(
env = env.Clone()
cryptoEnv = env.Clone()
if "tom" in env["MONGO_CRYPTO"]:
cryptoEnv.InjectThirdParty(libraries=["tomcrypt"])
cryptoEnv.Append(
CPPDEFINES=[
"LTC_NO_PROTOTYPES",
]
)
env.Library(
target="aead_encryption",
source=[
"aead_encryption.cpp",
],
LIBDEPS=[
"fle_fields",
"sha_block_${MONGO_CRYPTO}",
"symmetric_crypto",
],
)
env.Library(
target="encrypted_field_config",
source=[
"encryption_fields_gen.cpp",
"encryption_fields_validation.cpp",
"fle_numeric.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/pipeline/value_idl",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
],
)
fleCryptoEnv = env.Clone()
fleCryptoEnv.InjectThirdParty(libraries=["libmongocrypt"])
fleCryptoEnv.InjectThirdParty(libraries=["bson"])
fleCryptoEnv.Library(
target="fle_crypto",
source=[
"encryption_fields_util.cpp",
"fle_crypto.cpp",
"fle_options_gen.cpp",
"fle_stats.cpp",
"fle_stats_gen.cpp",
"fle_tags.cpp",
"fle_tokens_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base/secure_allocator",
"$BUILD_DIR/mongo/db/common",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/idl/cluster_server_parameter",
"$BUILD_DIR/mongo/shell/kms_idl",
"$BUILD_DIR/mongo/util/testing_options",
"$BUILD_DIR/third_party/libmongocrypt/mongocrypt",
"aead_encryption",
"encrypted_field_config",
"fle_fields",
"sha_block_${MONGO_CRYPTO}",
],
)
env.Library(
target="fle_fields",
source=[
"fle_field_schema_gen.cpp",
"fle_fields_util.cpp",
],
LIBDEPS=[
"encrypted_field_config",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
],
)
env.CppUnitTest(
target="crypto_test",
source=[
@ -130,7 +40,7 @@ env.CppUnitTest(
"encrypted_field_config",
"fle_crypto",
"jwt",
"sha_block_${MONGO_CRYPTO}",
"sha_block",
],
)
@ -181,6 +91,6 @@ env.Benchmark(
"$BUILD_DIR/mongo/db/concurrency/lock_manager",
"$BUILD_DIR/mongo/db/server_base",
"fle_crypto",
"sha_block_${MONGO_CRYPTO}",
"sha_block",
],
)

View File

@ -11,6 +11,38 @@ exports_files(
]),
)
mongo_cc_library(
name = "startup_warnings_common",
srcs = [
"startup_warnings_common.cpp",
],
hdrs = [
"startup_warnings_common.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/client:authentication",
"//src/mongo/util/net:ssl_manager", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "startup_warnings_mongod",
srcs = [
"startup_warnings_mongod.cpp",
"//src/mongo/util:procparser.h",
],
hdrs = [
"startup_warnings_mongod.h",
],
deps = [
":startup_warnings_common",
"//src/mongo/db/repl:repl_coordinator_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_settings", # TODO(SERVER-93876): Remove.
"//src/mongo/util:processinfo", # TODO(SERVER-93876): Remove.
],
)
render_template(
name = "feature_flag_test_tpl",
srcs = [
@ -153,11 +185,105 @@ idl_generator(
src = "server_options_helpers.idl",
)
mongo_cc_library(
name = "server_options",
srcs = [
"server_options_helpers.cpp",
"server_options_helpers_gen",
],
hdrs = [
"server_options_helpers.h",
],
deps = [
":server_base",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/cmdline_utils",
],
)
mongo_cc_library(
name = "server_options_servers",
srcs = [
"server_options_server_helpers.cpp",
],
hdrs = [
"server_options_server_helpers.h",
],
deps = [
"//src/mongo/transport:message_compressor",
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
# The dependency on net/ssl_manager is a temporary crutch that should go
# away once the networking library has separate options
"//src/mongo/util/net:ssl_manager", # TODO(SERVER-93876): Remove.
":server_options",
":server_options_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:cluster_auth_mode",
":server_base",
],
)
mongo_cc_library(
name = "log_process_details",
srcs = [
"log_process_details.cpp",
],
hdrs = [
"log_process_details.h",
],
deps = [
":server_options_servers",
"//src/mongo:base",
"//src/mongo/db/repl:repl_coordinator_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_settings", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:replica_set_messages",
"//src/mongo/util:processinfo", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "curop_failpoint_helpers",
srcs = [
"curop_failpoint_helpers.cpp",
],
hdrs = [
"curop_failpoint_helpers.h",
],
deps = [
"//src/mongo/db/query/query_stats",
"//src/mongo/util:fail_point",
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "windows_options_gen",
src = "windows_options.idl",
)
mongo_cc_library(
name = "server_options_base",
srcs = [
"cluster_auth_mode_option_gen",
"keyfile_option_gen",
"mongod_options_general.h",
"server_options_base.cpp",
"server_options_base_gen",
"server_options_general_gen",
"server_options_nongeneral_gen",
"server_options_upgrade_downgrade_gen",
],
hdrs = [
"server_options_base.h",
],
deps = [
":connection_health_metrics_parameter", # TODO(SERVER-93876): Remove.
":server_base",
"//src/mongo/db/auth:cluster_auth_mode",
"//src/mongo/util/options_parser",
],
)
idl_generator(
name = "cluster_auth_mode_option_gen",
src = "cluster_auth_mode_option.idl",
@ -193,11 +319,42 @@ idl_generator(
src = "initialize_server_global_state.idl",
)
mongo_cc_library(
name = "global_settings",
srcs = [
"global_settings.cpp",
],
hdrs = [
"global_settings.h",
"//src/mongo/db:mongod_options_general_gen",
],
header_deps = [
"//src/mongo/util/options_parser",
":server_options_base",
],
deps = [
":server_base", # TODO(SERVER-93876): Remove.
":service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_settings",
],
)
idl_generator(
name = "connection_health_metrics_parameter_gen",
src = "connection_health_metrics_parameter.idl",
)
mongo_cc_library(
name = "connection_health_metrics_parameter",
srcs = [
"connection_health_metrics_parameter_gen",
],
deps = [
":server_base",
"//src/mongo/util/options_parser", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "keypattern_gen",
src = "keypattern.idl",
@ -236,6 +393,55 @@ idl_generator(
src = "mongod_options_storage.idl",
)
mongo_cc_library(
name = "mongod_options",
srcs = [
"mongod_options.cpp",
":mongod_options_general_gen",
":mongod_options_legacy_gen",
":mongod_options_replication_gen",
":mongod_options_sharding_gen",
":mongod_options_storage_gen",
],
hdrs = [
"mongod_options.h",
"mongod_options_general.h",
"mongod_options_replication.h",
"mongod_options_sharding.h",
],
deps = [
":global_settings",
":server_base",
":server_feature_flags",
":server_options_base", # TODO(SERVER-93876): Remove.
":server_options_servers",
"//src/mongo/db/auth:cluster_auth_mode", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_server_parameters", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_settings", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:replica_set_messages",
"//src/mongo/db/storage:storage_options", # TODO(SERVER-93876): Remove.
"//src/mongo/s:common_s",
"//src/mongo/util/options_parser", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "mongod_options_init",
srcs = [
"mongod_options_init.cpp",
],
deps = [
":mongod_options",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/util/options_parser", # TODO(SERVER-93876): Remove.
] + select({
"//bazel/config:ssl_enabled": [
"//src/mongo/util/net:ssl_options_server", # TODO(SERVER-93876): Remove.
],
"//conditions:default": [],
}),
)
idl_generator(
name = "read_write_concern_defaults_gen",
src = "read_write_concern_defaults.idl",
@ -246,6 +452,25 @@ idl_generator(
],
)
mongo_cc_library(
name = "read_write_concern_defaults",
srcs = [
"read_write_concern_defaults.cpp",
"read_write_concern_defaults_gen",
],
hdrs = [
"read_write_concern_defaults.h",
],
deps = [
":server_base",
":vector_clock",
"//src/mongo/db/repl:read_concern_args", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_server_parameters", # TODO(SERVER-93876): Remove.
"//src/mongo/util:caching",
"//src/mongo/util/concurrency:thread_pool",
],
)
idl_generator(
name = "default_max_time_ms_cluster_parameter_gen",
src = "default_max_time_ms_cluster_parameter.idl",
@ -254,6 +479,25 @@ idl_generator(
],
)
mongo_cc_library(
name = "default_max_time_ms_cluster_parameter",
srcs = [
"default_max_time_ms_cluster_parameter.cpp",
":default_max_time_ms_cluster_parameter_gen",
],
hdrs = [
"default_max_time_ms_cluster_parameter.h",
],
deps = [
":server_base",
":server_feature_flags",
"//src/mongo/db/auth",
"//src/mongo/db/auth:security_token", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:query_request", # TODO(SERVER-93876): Remove.
"//src/mongo/idl:cluster_server_parameter", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "change_stream_options_gen",
src = "change_stream_options.idl",
@ -389,6 +633,19 @@ idl_generator(
],
)
mongo_cc_library(
name = "coll_mod_command_idl",
srcs = [
"coll_mod_gen",
],
deps = [
":server_base",
"//src/mongo/db/auth:authprivilege",
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/timeseries:timeseries_options", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "dbcommands_gen",
src = "dbcommands.idl",
@ -400,6 +657,18 @@ idl_generator(
],
)
mongo_cc_library(
name = "dbcommands_idl",
srcs = [
"dbcommands_gen",
],
deps = [
":server_base",
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/pipeline:document_sources_idl",
],
)
idl_generator(
name = "metadata_consistency_types_gen",
src = "metadata_consistency_types.idl",
@ -469,6 +738,88 @@ idl_generator(
],
)
mongo_cc_library(
name = "commands",
srcs = [
"coll_mod_reply_validation.cpp",
"commands.cpp",
"curop.cpp",
"error_labels.h",
":drop_database_gen",
":drop_gen",
":list_collections_gen",
":list_indexes_gen",
"//src/mongo/db/commands/query_cmd:explain_gen",
],
hdrs = [
"coll_mod_reply_validation.h",
"commands.h",
"curop.h",
],
deps = [
":api_parameters", # TODO(SERVER-93876): Remove.
":audit",
":coll_mod_command_idl",
":generic_cursor",
":index_commands_idl", # TODO(SERVER-93876): Remove.
":prepare_conflict_tracker",
":server_base", # TODO(SERVER-93876): Remove.
":server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/bson/mutable:mutable_bson",
"//src/mongo/db/admission:execution_admission_context",
"//src/mongo/db/admission:ingress_admission_context",
"//src/mongo/db/admission:ticketholder_manager",
"//src/mongo/db/auth", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:authprivilege", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:user_acquisition_stats",
"//src/mongo/db/catalog:collection_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:create_command", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:server_status_core", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:test_commands_enabled", # TODO(SERVER-93876): Remove.
"//src/mongo/db/concurrency:lock_manager",
"//src/mongo/db/query:common_query_enums_and_helpers",
"//src/mongo/db/query:cursor_response_idl",
"//src/mongo/db/repl:read_concern_args", # TODO(SERVER-93876): Remove.
"//src/mongo/db/stats:resource_consumption_metrics",
"//src/mongo/db/stats:timer_stats",
"//src/mongo/db/timeseries:timeseries_options", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc",
"//src/mongo/rpc:command_status", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:rewrite_state_change_errors", # TODO(SERVER-93876): Remove.
"//src/mongo/transport:service_executor",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util:progress_meter",
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
] + select({
"//bazel/config:use_diagnostic_latches_enabled": [
"//src/mongo/util:diagnostic_info",
],
"//conditions:default": [],
}) + select({
"//bazel/config:use_tracing_profiler_enabled": [
"//src/mongo/util/tracing_profiler", # TODO(SERVER-93876): Remove.
],
"//conditions:default": [],
}),
)
mongo_cc_library(
name = "shard_role_api_stor_ex",
srcs = [
"//src/mongo/db/catalog:collection.cpp",
],
hdrs = [
"//src/mongo/db/catalog:collection.h",
],
deps = [
":server_base",
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/catalog:index_catalog", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/collation:collator_factory_interface",
"//src/mongo/s:common_s",
],
)
idl_generator(
name = "internal_transactions_feature_flag_gen",
src = "internal_transactions_feature_flag.idl",
@ -492,11 +843,37 @@ idl_generator(
],
)
mongo_cc_library(
name = "resumable_index_builds_idl",
srcs = [
"resumable_index_builds_gen",
],
deps = [
"//src/mongo:base",
"//src/mongo/db/sorter:sorter_base",
"//src/mongo/idl:idl_parser",
],
)
idl_generator(
name = "cloner_gen",
src = "cloner.idl",
)
mongo_cc_library(
name = "curop_metrics",
srcs = [
"curop_metrics.cpp",
],
hdrs = [
"curop_metrics.h",
],
deps = [
"//src/mongo/db/commands:server_status_core",
"//src/mongo/db/query/query_stats",
],
)
idl_generator(
name = "read_concern_mongod_gen",
src = "read_concern_mongod.idl",
@ -507,6 +884,23 @@ idl_generator(
src = "ttl.idl",
)
mongo_cc_library(
name = "record_id_helpers",
srcs = [
"record_id_helpers.cpp",
],
hdrs = [
"record_id_helpers.h",
],
deps = [
":server_base",
"//src/mongo/bson:bson_validate",
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/query/collation:collator_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/db/storage:key_string", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "create_indexes_gen",
src = "create_indexes.idl",
@ -610,6 +1004,70 @@ idl_generator(
],
)
mongo_cc_library(
name = "vector_clock",
srcs = [
"key_generator.cpp",
"keys_collection_cache.cpp",
"keys_collection_manager.cpp",
"keys_collection_manager_gen",
"logical_time_validator.cpp",
"time_proof_service.cpp",
"vector_clock.cpp",
"vector_clock_document_gen",
],
hdrs = [
"key_generator.h",
"keys_collection_cache.h",
"keys_collection_manager.h",
"logical_time_validator.h",
"time_proof_service.h",
"vector_clock.h",
],
deps = [
":global_settings", # TODO(SERVER-93876): Remove.
":keys_collection_client_sharded",
":keys_collection_document",
":server_base", # TODO(SERVER-93876): Remove.
":service_context",
":signed_logical_time",
"//src/mongo/crypto:sha_block",
"//src/mongo/db/auth",
"//src/mongo/db/auth:authprivilege", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_coordinator_interface",
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point",
],
)
mongo_cc_library(
name = "vector_clock_mutable",
srcs = [
"vector_clock_mutable.cpp",
],
hdrs = [
"vector_clock_mutable.h",
],
deps = [
":vector_clock",
],
)
mongo_cc_library(
name = "logical_time_metadata_hook",
srcs = [
"vector_clock_metadata_hook.cpp",
],
hdrs = [
"vector_clock_metadata_hook.h",
],
deps = [
":operation_time_tracker",
":vector_clock",
"//src/mongo/rpc:metadata", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "cursor_server_params_gen",
src = "cursor_server_params.idl",
@ -665,6 +1123,40 @@ idl_generator(
],
)
mongo_cc_library(
name = "traffic_recorder",
srcs = [
"traffic_recorder.cpp",
"traffic_recorder_gen",
"traffic_recorder_validators.cpp",
],
hdrs = [
"traffic_recorder.h",
"traffic_recorder_validators.h",
],
deps = [
":server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:server_status_core", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc",
],
)
mongo_cc_library(
name = "traffic_reader",
srcs = [
"traffic_reader.cpp",
],
hdrs = [
"traffic_reader.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc",
"//src/mongo/rpc:message", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "commands_test_example_gen",
src = "commands_test_example.idl",
@ -836,6 +1328,59 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "validate_api_parameters",
srcs = [
"validate_api_parameters.cpp",
],
hdrs = [
"validate_api_parameters.h",
],
deps = [
":api_parameters",
":commands",
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "error_labels",
srcs = [
"error_labels.cpp",
],
hdrs = [
"error_labels.h",
],
deps = [
":commands",
"//src/mongo/db/pipeline:lite_parsed_document_source",
"//src/mongo/db/session:logical_session_id", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "shared_request_handling",
srcs = [
"initialize_operation_session_info.cpp",
"transaction_validation.cpp",
],
hdrs = [
"initialize_operation_session_info.h",
"transaction_validation.h",
],
header_deps = [
"//src/mongo/db/commands:txn_cmd_request",
],
deps = [
":api_parameters", # TODO(SERVER-93876): Remove.
":error_labels",
"//src/mongo/db/repl:repl_coordinator_interface",
"//src/mongo/db/session:logical_session_cache",
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "change_stream_state",
srcs = [
@ -849,6 +1394,22 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "dbmessage",
srcs = [
"dbmessage.cpp",
],
hdrs = [
"dbmessage.h",
],
deps = [
"//src/mongo/bson:bson_validate",
"//src/mongo/transport:transport_layer_common",
# "//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
":server_base",
],
)
mongo_cc_library(
name = "write_block_bypass",
srcs = [
@ -1113,3 +1674,82 @@ mongo_cc_library(
"//src/mongo/util/net:network",
],
)
mongo_cc_library(
name = "sbe_values",
srcs = [
"//src/mongo/db/exec/sbe/values:arith_common.cpp",
"//src/mongo/db/exec/sbe/values:block_interface.cpp",
"//src/mongo/db/exec/sbe/values:bson.cpp",
"//src/mongo/db/exec/sbe/values:bson_block.cpp",
"//src/mongo/db/exec/sbe/values:cell_interface.cpp",
"//src/mongo/db/exec/sbe/values:key_string_entry.cpp",
"//src/mongo/db/exec/sbe/values:row.cpp",
"//src/mongo/db/exec/sbe/values:slot_printer.cpp",
"//src/mongo/db/exec/sbe/values:ts_block.cpp",
"//src/mongo/db/exec/sbe/values:value.cpp",
"//src/mongo/db/exec/sbe/values:value_printer.cpp",
"//src/mongo/db/exec/sbe/vm:label.h",
"//src/mongo/db/exec/timeseries:bucket_unpacker.h",
"//src/mongo/db/pipeline/search:search_helper.h",
"//src/mongo/db/query/search:search_task_executors.h",
"//src/mongo/executor:task_executor_cursor.h",
"//src/mongo/executor:task_executor_cursor_options.h",
],
hdrs = [
"//src/mongo/db/exec:trial_run_tracker.h",
"//src/mongo/db/exec/sbe:makeobj_input_plan.h",
"//src/mongo/db/exec/sbe:makeobj_spec.h",
"//src/mongo/db/exec/sbe:size_estimator.h",
"//src/mongo/db/exec/sbe:sort_spec.h",
"//src/mongo/db/exec/sbe/abt:slots_provider.h",
"//src/mongo/db/exec/sbe/expressions:compile_ctx.h",
"//src/mongo/db/exec/sbe/expressions:expression.h",
"//src/mongo/db/exec/sbe/expressions:runtime_environment.h",
"//src/mongo/db/exec/sbe/stages:block_hashagg.h",
"//src/mongo/db/exec/sbe/stages:hash_agg.h",
"//src/mongo/db/exec/sbe/stages:hashagg_base.h",
"//src/mongo/db/exec/sbe/stages:stages.h",
"//src/mongo/db/exec/sbe/stages:window.h",
"//src/mongo/db/exec/sbe/util:debug_print.h",
"//src/mongo/db/exec/sbe/util:print_options.h",
"//src/mongo/db/exec/sbe/util:spilling.h",
"//src/mongo/db/exec/sbe/values:arith_common.h",
"//src/mongo/db/exec/sbe/values:block_interface.h",
"//src/mongo/db/exec/sbe/values:bson.h",
"//src/mongo/db/exec/sbe/values:bson_block.h",
"//src/mongo/db/exec/sbe/values:bsoncolumn_materializer.h",
"//src/mongo/db/exec/sbe/values:cell_interface.h",
"//src/mongo/db/exec/sbe/values:column_op.h",
"//src/mongo/db/exec/sbe/values:generic_compare.h",
"//src/mongo/db/exec/sbe/values:key_string_entry.h",
"//src/mongo/db/exec/sbe/values:row.h",
"//src/mongo/db/exec/sbe/values:scalar_mono_cell_block.h",
"//src/mongo/db/exec/sbe/values:slot_printer.h",
"//src/mongo/db/exec/sbe/values:ts_block.h",
"//src/mongo/db/exec/sbe/values:util.h",
"//src/mongo/db/exec/sbe/values:value.h",
"//src/mongo/db/exec/sbe/values:value_printer.h",
"//src/mongo/db/exec/sbe/vm:datetime.h",
"//src/mongo/db/exec/sbe/vm:makeobj_cursors.h",
"//src/mongo/db/exec/sbe/vm:vm.h",
"//src/mongo/db/query/search:internal_search_mongot_remote_spec_gen",
"//src/mongo/executor:task_executor_cursor_parameters_gen",
],
header_deps = [
"//src/mongo/util:field_set",
"//src/mongo/db/timeseries:bucket_compression",
],
deps = [
"//src/mongo:base",
"//src/mongo/bson/util:bson_column", # TODO(SERVER-93876): Remove.
"//src/mongo/db/exec:js_function",
"//src/mongo/db/query/collation:collator_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/datetime:date_time_support", # TODO(SERVER-93876): Remove.
"//src/mongo/db/storage:key_string", # TODO(SERVER-93876): Remove.
"//src/mongo/db/storage:storage_options", # TODO(SERVER-93876): Remove.
"//src/mongo/util:pcre_util",
"//src/mongo/util:string_listset",
"//src/mongo/util:summation", # TODO(SERVER-93876): Remove.
],
)

View File

@ -94,46 +94,6 @@ env.Library(
],
)
env.Library(
target="dbmessage",
source=[
"dbmessage.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/bson_validate",
"$BUILD_DIR/mongo/transport/transport_layer_common",
"$BUILD_DIR/mongo/util/net/network",
],
LIBDEPS_PRIVATE=[
"server_base",
],
)
env.Library(
target="startup_warnings_common",
source=[
"startup_warnings_common.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/client/authentication",
"$BUILD_DIR/mongo/util/net/ssl_manager",
],
)
env.Library(
target="startup_warnings_mongod",
source=[
"startup_warnings_mongod.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/repl/repl_coordinator_interface",
"$BUILD_DIR/mongo/db/repl/repl_settings",
"$BUILD_DIR/mongo/util/processinfo",
"startup_warnings_common",
],
)
env.Benchmark(
target="profile_filter_bm",
source=[
@ -146,35 +106,6 @@ env.Benchmark(
],
)
env.Library(
target="curop_failpoint_helpers",
source=[
"curop_failpoint_helpers.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/util/fail_point",
"query/query_stats/query_stats",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
],
)
env.Library(
target="server_options",
source=[
"server_options_helpers.cpp",
"server_options_helpers_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/util/cmdline_utils/cmdline_utils",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/fail_point",
"server_base",
],
)
if env.TargetOSIs("windows"):
env.Library(
target="windows_options",
@ -186,45 +117,6 @@ if env.TargetOSIs("windows"):
],
)
env.Library(
target="server_options_base",
source=[
"server_options_base.cpp",
"cluster_auth_mode_option_gen.cpp",
"keyfile_option_gen.cpp",
"server_options_base_gen.cpp",
"server_options_general_gen.cpp",
"server_options_nongeneral_gen.cpp",
"server_options_upgrade_downgrade_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/options_parser/options_parser",
"auth/cluster_auth_mode",
"connection_health_metrics_parameter",
"server_base",
],
)
env.Clone().InjectModule("enterprise").Library(
target="server_options_servers",
source=[
"server_options_server_helpers.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/transport/message_compressor",
"$BUILD_DIR/mongo/util/net/network",
# The dependency on net/ssl_manager is a temporary crutch that should go away once the
# networking library has separate options
"$BUILD_DIR/mongo/util/net/ssl_manager",
"server_options",
"server_options_base",
],
LIBDEPS_PRIVATE=[
"auth/cluster_auth_mode",
"server_base",
],
)
env.Library(
target="serverinit",
source=[
@ -240,89 +132,6 @@ env.Library(
],
)
env.Library(
target="global_settings",
source=[
"global_settings.cpp",
],
LIBDEPS=[
"repl/repl_settings",
"server_base",
"service_context",
],
)
env.Library(
target="connection_health_metrics_parameter",
source=[
"connection_health_metrics_parameter_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/options_parser/options_parser",
"server_base",
],
)
env.Library(
target="mongod_options",
source=[
"mongod_options.cpp",
"mongod_options_general_gen.cpp",
"mongod_options_legacy_gen.cpp",
"mongod_options_replication_gen.cpp",
"mongod_options_sharding_gen.cpp",
"mongod_options_storage_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/s/common_s",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
"auth/cluster_auth_mode",
"global_settings",
"repl/repl_server_parameters",
"repl/repl_settings",
"repl/replica_set_messages",
"server_base",
"server_feature_flags",
"server_options_base",
"server_options_servers",
"storage/storage_options",
],
)
env.Library(
target="read_write_concern_defaults",
source=[
"read_write_concern_defaults.cpp",
"read_write_concern_defaults_gen.cpp",
],
LIBDEPS=[
"repl/read_concern_args",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/caching",
"$BUILD_DIR/mongo/util/concurrency/thread_pool",
"repl/repl_server_parameters",
"server_base",
"vector_clock",
],
)
env.Library(
target="default_max_time_ms_cluster_parameter",
source=[
"default_max_time_ms_cluster_parameter_gen.cpp",
"default_max_time_ms_cluster_parameter.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/auth/security_token",
"$BUILD_DIR/mongo/idl/cluster_server_parameter",
"query/query_request",
"server_base",
"server_feature_flags",
],
)
env.Library(
target="change_stream_options_manager",
source=[
@ -580,106 +389,6 @@ env.CppUnitTest(
],
)
env.Library(
target="coll_mod_command_idl",
source=[
"coll_mod_gen.cpp",
],
LIBDEPS=[
"catalog/collection_options",
],
LIBDEPS_PRIVATE=[
"auth/authprivilege",
"server_base",
"timeseries/timeseries_options",
],
)
env.Library(
target="dbcommands_idl",
source=[
"dbcommands_gen.cpp",
],
LIBDEPS_PRIVATE=[
"catalog/collection_options",
"pipeline/document_sources_idl",
"server_base",
],
)
env.Library(
target="commands",
source=[
"coll_mod_reply_validation.cpp",
"commands.cpp",
"commands/query_cmd/explain_gen.cpp",
"curop.cpp",
"drop_gen.cpp",
"drop_database_gen.cpp",
"list_collections_gen.cpp",
"list_indexes_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/admission/execution_admission_context",
"$BUILD_DIR/mongo/db/admission/ingress_admission_context",
"$BUILD_DIR/mongo/db/query/cursor_response_idl",
"$BUILD_DIR/mongo/rpc/rpc",
"api_parameters",
"server_base",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/bson/mutable/mutable_bson",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/rewrite_state_change_errors",
"$BUILD_DIR/mongo/transport/service_executor",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
"$BUILD_DIR/mongo/util/diagnostic_info"
if get_option("use-diagnostic-latches") == "on"
else [],
"$BUILD_DIR/mongo/util/fail_point",
"$BUILD_DIR/mongo/util/progress_meter",
"$BUILD_DIR/mongo/util/tracing_profiler/tracing_profiler"
if get_option("use-tracing-profiler") == "on"
else [],
"admission/ticketholder_manager",
"audit",
"auth/auth",
"auth/authprivilege",
"auth/user_acquisition_stats",
"catalog/collection_options",
"coll_mod_command_idl",
"commands/create_command",
"commands/server_status_core",
"commands/test_commands_enabled",
"concurrency/lock_manager",
"generic_cursor",
"index_commands_idl",
"prepare_conflict_tracker",
"query/common_query_enums_and_helpers",
"repl/read_concern_args",
"server_feature_flags",
"stats/resource_consumption_metrics",
"stats/timer_stats",
"timeseries/timeseries_options",
],
)
env.Library(
target="shard_role_api_stor_ex",
source=[
"catalog/collection.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/s/common_s",
"catalog/collection_options",
"catalog/index_catalog",
"query/collation/collator_factory_interface",
],
LIBDEPS_PRIVATE=[
"server_base",
],
)
env.Library(
target="shard_role_api",
source=[
@ -977,20 +686,6 @@ env.Library(
],
)
env.Library(
target="resumable_index_builds_idl",
source=[
"resumable_index_builds_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/idl/idl_parser",
],
LIBDEPS_PRIVATE=[
"sorter/sorter_base",
],
)
env.Library(
target="index_builds_coordinator_mongod",
source=[
@ -1113,17 +808,6 @@ env.Library(
],
)
env.Library(
target="curop_metrics",
source=[
"curop_metrics.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/query/query_stats/query_stats",
"commands/server_status_core",
],
)
env.Library(
target="profile_collection",
source=[
@ -1219,20 +903,6 @@ env.Library(
],
)
env.Library(
target="record_id_helpers",
source=[
"record_id_helpers.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/bson/bson_validate",
"catalog/collection_options",
"query/collation/collator_interface",
"server_base",
"storage/key_string",
],
)
env.Library(
target="shard_filterer",
source=[
@ -1473,35 +1143,6 @@ execEnv.Library(
],
)
env.Library(
target="sbe_values",
source=[
"exec/sbe/values/arith_common.cpp",
"exec/sbe/values/block_interface.cpp",
"exec/sbe/values/bson.cpp",
"exec/sbe/values/bson_block.cpp",
"exec/sbe/values/cell_interface.cpp",
"exec/sbe/values/key_string_entry.cpp",
"exec/sbe/values/row.cpp",
"exec/sbe/values/slot_printer.cpp",
"exec/sbe/values/ts_block.cpp",
"exec/sbe/values/value.cpp",
"exec/sbe/values/value_printer.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/bson/util/bson_column",
"$BUILD_DIR/mongo/util/pcre_util",
"$BUILD_DIR/mongo/util/string_listset",
"$BUILD_DIR/mongo/util/summation",
"exec/js_function",
"query/collation/collator_interface",
"query/datetime/date_time_support",
"storage/key_string",
"storage/storage_options",
],
)
env.Library(
target="query_expressions",
source=[
@ -1650,50 +1291,6 @@ env.Library(
],
)
env.Library(
target="error_labels",
source=[
"error_labels.cpp",
],
LIBDEPS=[
"commands",
"pipeline/lite_parsed_document_source",
"session/logical_session_id",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="shared_request_handling",
source=[
"initialize_operation_session_info.cpp",
"transaction_validation.cpp",
],
LIBDEPS=[
"api_parameters",
"error_labels",
"repl/repl_coordinator_interface",
"session/logical_session_cache",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
],
)
env.Library(
target="validate_api_parameters",
source=[
"validate_api_parameters.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/transport/transport_layer_common",
"api_parameters",
"commands",
],
)
env.Library(
target="periodic_runner_job_abort_expired_transactions",
source=[
@ -1748,46 +1345,6 @@ env.Library(
],
)
env.Library(
target="vector_clock",
source=[
"key_generator.cpp",
"keys_collection_cache.cpp",
"keys_collection_manager.cpp",
"keys_collection_manager_gen.cpp",
"logical_time_validator.cpp",
"time_proof_service.cpp",
"vector_clock.cpp",
"vector_clock_document_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/transport/transport_layer_common",
"auth/auth",
"auth/authprivilege",
"global_settings",
"keys_collection_client_sharded",
"keys_collection_document",
"repl/repl_coordinator_interface",
"server_base",
"signed_logical_time",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/crypto/sha_block_${MONGO_CRYPTO}",
"$BUILD_DIR/mongo/util/fail_point",
"service_context",
],
)
env.Library(
target="vector_clock_mutable",
source=[
"vector_clock_mutable.cpp",
],
LIBDEPS=[
"vector_clock",
],
)
env.Library(
target="vector_clock_mongod",
source=[
@ -1817,18 +1374,6 @@ env.Library(
],
)
env.Library(
target="logical_time_metadata_hook",
source=[
"vector_clock_metadata_hook.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/rpc/metadata",
"operation_time_tracker",
"vector_clock",
],
)
# This library is the base class for tests which require the presence of ServiceContext. However it
# does not perform any default initialisation of the relevant services, such as lockers and
# transaction resources, so any test which directly references it must perform its own
@ -1879,54 +1424,9 @@ env.Library(
],
)
env.Library(
target="log_process_details",
source=[
"log_process_details.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/net/network",
"server_options_servers",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/processinfo",
"repl/repl_coordinator_interface",
"repl/repl_settings",
"repl/replica_set_messages",
],
)
asioEnv = env.Clone()
asioEnv.InjectThirdParty("asio")
env.Library(
target="traffic_recorder",
source=[
"traffic_recorder.cpp",
"traffic_recorder_validators.cpp",
"traffic_recorder_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/rpc/rpc",
"server_base",
],
)
env.Library(
target="traffic_reader",
source=[
"traffic_reader.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/rpc/message",
"$BUILD_DIR/mongo/rpc/rpc",
],
)
env.Program(
target="mongotrafficreader",
source=[
@ -1941,21 +1441,6 @@ env.Program(
],
)
env.Library(
target="mongod_options_init",
source=[
"mongod_options_init.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/net/ssl_options_server" if get_option("ssl") == "on" else "",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
"mongod_options",
],
)
env.Library(
target="mongod_initializers",
source=[

View File

@ -14,6 +14,26 @@ idl_generator(
src = "ingress_admission_control.idl",
)
mongo_cc_library(
name = "ingress_admission_control",
srcs = [
"ingress_admission_controller.cpp",
":ingress_admission_control_gen",
],
hdrs = [
"ingress_admission_controller.h",
],
deps = [
":ingress_admission_context",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:commands", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/util/concurrency:ticketholder",
],
)
mongo_cc_library(
name = "ticketholder_manager",
srcs = [
@ -31,6 +51,20 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "queues_server_status_section",
srcs = [
"queues_server_status_section.cpp",
],
deps = [
":ingress_admission_control",
":ticketholder_manager", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:server_status_core", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "execution_control",
srcs = [
@ -82,6 +116,10 @@ mongo_cc_library(
header_deps = [
"//src/mongo/db/pipeline/process_interface:mongo_process_interface",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:server_base",
],
)
mongo_cc_library(

View File

@ -4,25 +4,6 @@ Import("env")
env = env.Clone()
env.Library(
target="ingress_admission_control",
source=[
"ingress_admission_controller.cpp",
"ingress_admission_control_gen.cpp",
],
LIBDEPS=[
"ingress_admission_context",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/commands",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/concurrency/ticketholder",
],
)
env.CppUnitTest(
target="ingress_admission_control_test",
source=[
@ -35,20 +16,6 @@ env.CppUnitTest(
],
)
env.Library(
target="queues_server_status_section",
source=[
"queues_server_status_section.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/db/service_context",
"ingress_admission_control",
"ticketholder_manager",
],
)
env.CppUnitTest(
target="throughput_probing_test",
source=[

View File

@ -104,6 +104,19 @@ idl_generator(
],
)
mongo_cc_library(
name = "sasl_options_init",
srcs = [
"sasl_options_gen",
"sasl_options_init.cpp",
],
deps = [
":sasl_options",
"//src/mongo/util/net:network",
"//src/mongo/util/options_parser",
],
)
idl_generator(
name = "authorization_manager_impl_parameters_gen",
src = "authorization_manager_impl_parameters.idl",
@ -130,6 +143,50 @@ idl_generator(
src = "authorization_manager_global_parameters.idl",
)
mongo_cc_library(
name = "security_key",
srcs = [
"security_key.cpp",
],
hdrs = [
"security_key.h",
],
deps = [
":auth",
":cluster_auth_mode",
":sasl_options",
":security_file",
":user",
"//src/mongo:base",
"//src/mongo/base:secure_allocator",
"//src/mongo/client:authentication",
"//src/mongo/crypto:sha_block",
"//src/mongo/util:icu",
"//src/mongo/util:md5",
],
)
mongo_cc_library(
name = "authorization_manager_global",
srcs = [
"authorization_manager_global.cpp",
"authorization_manager_global_parameters_gen",
],
hdrs = [
"authorization_manager_impl.h",
],
deps = [
":auth",
":cluster_auth_mode",
":security_key",
"//src/mongo/client:authentication",
"//src/mongo/db:server_base",
"//src/mongo/db:service_context",
"//src/mongo/util/net:ssl_manager",
"//src/mongo/util/net:ssl_parameters_auth",
],
)
idl_generator(
name = "sasl_commands_gen",
src = "sasl_commands.idl",
@ -139,6 +196,20 @@ idl_generator(
],
)
mongo_cc_library(
name = "security_file",
srcs = [
"security_file.cpp",
],
hdrs = [
"security_file.h",
],
deps = [
"//src/mongo:base",
"//src/third_party/yaml-cpp:yaml",
],
)
idl_generator(
name = "sasl_options_gen",
src = "sasl_options.idl",
@ -282,6 +353,7 @@ mongo_cc_library(
"authorization_manager_factory.cpp",
"authorization_session.cpp",
"role_name_or_string.cpp",
"//src/mongo/util/concurrency:thread_pool.h",
],
hdrs = [
"authorization_manager_factory.h",
@ -297,6 +369,28 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "auth_umc",
srcs = [
"impersonation_session.cpp",
"user_management_commands_parser.cpp",
],
hdrs = [
"impersonation_session.h",
"user_management_commands_parser.h",
],
deps = [
":address_restriction", # TODO(SERVER-93876): Remove.
":auth",
":authprivilege",
"//src/mongo/bson/mutable:mutable_bson", # TODO(SERVER-93876): Remove.
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:common", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/rpc:metadata_impersonated_user",
],
)
mongo_cc_library(
name = "builtin_roles",
srcs = [
@ -357,18 +451,9 @@ mongo_cc_library(
deps = [
"auth",
"authprivilege",
"//src/mongo/crypto:sha_block",
"//src/mongo/db:server_base",
] + select({
"//bazel/config:mongo_crypto_{}".format(mongo_crypto): ["//src/mongo/crypto:sha_block_{}".format(mongo_crypto)]
for mongo_crypto in [
"windows",
"apple",
"openssl",
"tom",
]
} | {
"//conditions:default": [],
}),
],
)
mongo_cc_library(
@ -415,3 +500,89 @@ idl_generator(
"//src/mongo/db:basic_types_gen",
],
)
mongo_cc_library(
name = "sasl_mechanism_protocol",
srcs = [
"oauth_authorization_server_metadata_gen",
"oauth_discovery_factory.cpp",
"oidc_protocol_gen",
"x509_protocol_gen",
],
hdrs = [
"oauth_discovery_factory.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/idl:idl_parser",
"//src/mongo/util/net:http_client",
],
)
mongo_cc_library(
name = "saslauth",
srcs = [
"sasl_mechanism_registry.cpp",
"sasl_plain_server_conversation.cpp",
"sasl_scram_server_conversation.cpp",
"//src/mongo/crypto:mechanism_scram.h",
] + select({
"//bazel/config:ssl_enabled": [
"sasl_x509_server_conversation.cpp",
],
"//conditions:default": [],
}),
hdrs = [
"authentication_metrics.h",
"authentication_session.h",
"sasl_command_constants.h",
"sasl_mechanism_policies.h",
"sasl_mechanism_registry.h",
"sasl_plain_server_conversation.h",
"sasl_scram_server_conversation.h",
] + select({
"//bazel/config:ssl_enabled": [
"sasl_x509_server_conversation.h",
],
"//conditions:default": [],
}),
deps = [
# TODO(SERVER-93876): Remove all except authorization_manager_global.
"//src/mongo/base:secure_allocator",
"//src/mongo/db/commands:test_commands_enabled",
"//src/mongo/util:icu",
"//src/mongo/util:md5",
"//src/mongo/util/net:network",
":auth",
":auth_options",
":authorization_manager_global",
":authprivilege",
":sasl_mechanism_protocol",
":sasl_options",
":user",
"//src/mongo/db:connection_health_metrics_parameter",
"//src/mongo/db:server_base",
"//src/mongo/db:service_context",
"//src/mongo/util/net:ssl_manager",
":cluster_auth_mode",
"//src/mongo/crypto:sha_block",
],
)
mongo_cc_library(
name = "authentication_session",
srcs = [
"authentication_session.cpp",
],
hdrs = [
"authentication_session.h",
],
deps = [
":auth", # TODO(SERVER-93876): Remove.
":saslauth",
"//src/mongo/db:audit",
"//src/mongo/db:connection_health_metrics_parameter", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context",
"//src/mongo/db/stats:counters", # TODO(SERVER-93876): Remove.
],
)

View File

@ -4,23 +4,6 @@ Import("env", "get_option")
env = env.Clone()
env.Library(
target="authentication_session",
source=[
"authentication_session.cpp",
],
LIBDEPS=[
"auth",
"saslauth",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/audit",
"$BUILD_DIR/mongo/db/connection_health_metrics_parameter",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/db/stats/counters",
],
)
env.Library(
target="auth_impl_internal",
source=[
@ -163,66 +146,6 @@ env.Library(
],
)
env.Library(
target="auth_umc",
source=[
"impersonation_session.cpp",
"user_management_commands_parser.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/bson/mutable/mutable_bson",
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/rpc/metadata_impersonated_user",
"address_restriction",
"auth",
"authprivilege",
],
)
env.Library(
target="authorization_manager_global",
source=[
"authorization_manager_global.cpp",
"authorization_manager_global_parameters_gen.cpp",
],
LIBDEPS=[
"auth",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/client/authentication",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/net/ssl_manager",
"$BUILD_DIR/mongo/util/net/ssl_parameters_auth",
"cluster_auth_mode",
"security_key",
],
)
env.Library(
target="security_key",
source=[
"security_key.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base/secure_allocator",
"$BUILD_DIR/mongo/client/authentication",
"$BUILD_DIR/mongo/crypto/sha_block_${MONGO_CRYPTO}",
"$BUILD_DIR/mongo/util/icu",
"$BUILD_DIR/mongo/util/md5",
"auth",
"cluster_auth_mode",
"sasl_options",
"security_file",
"user",
],
)
env.Library(
target="sasl_commands",
source=[
@ -242,83 +165,6 @@ env.Library(
],
)
yamlEnv = env.Clone()
yamlEnv.InjectThirdParty(libraries=["yaml"])
yamlEnv.Library(
target="security_file",
source=[
"security_file.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/third_party/yaml-cpp/yaml",
],
)
env.Library(
target="sasl_options_init",
source=[
"sasl_options_init.cpp",
"sasl_options_gen.cpp",
],
LIBDEPS=[
"sasl_options",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/net/network",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)
env.Library(
target="sasl_mechanism_protocol",
source=[
"oauth_authorization_server_metadata_gen.cpp",
"oauth_discovery_factory.cpp",
"oidc_protocol_gen.cpp",
"x509_protocol_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/idl/idl_parser",
"$BUILD_DIR/mongo/util/net/http_client",
],
)
env.Library(
target="saslauth",
source=[
"sasl_mechanism_registry.cpp",
"sasl_plain_server_conversation.cpp",
"sasl_scram_server_conversation.cpp",
"sasl_x509_server_conversation.cpp" if get_option("ssl") == "on" else [],
],
LIBDEPS=[
"$BUILD_DIR/mongo/base/secure_allocator",
"$BUILD_DIR/mongo/crypto/sha_block_${MONGO_CRYPTO}",
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
"$BUILD_DIR/mongo/util/icu",
"$BUILD_DIR/mongo/util/md5",
"$BUILD_DIR/mongo/util/net/network",
"auth",
"auth_options",
"authorization_manager_global",
"authprivilege",
"sasl_mechanism_protocol",
"sasl_options",
"user",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/connection_health_metrics_parameter",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/net/ssl_manager",
"cluster_auth_mode",
],
)
env.Library(
target="authmocks",
source=[

View File

@ -43,6 +43,35 @@ idl_generator(
],
)
mongo_cc_library(
name = "collection_options",
srcs = [
"clustered_collection_options_gen",
"clustered_collection_util.cpp",
"collection_options.cpp",
"collection_options_gen",
"collection_options_validation.cpp",
"//src/mongo/db/commands:create_command_validation.h",
],
hdrs = [
"clustered_collection_util.h",
"collection_options.h",
"collection_options_validation.h",
],
deps = [
# TODO(SERVER-93876): Technically only requires `//src/mongo/db:common`.
"//src/mongo/crypto:encrypted_field_config",
"//src/mongo/db/pipeline:change_stream_pre_and_post_images_options",
"//src/mongo/db/query/query_shape",
"//src/mongo/db/commands:test_commands_enabled",
"//src/mongo/db:common",
"//src/mongo/db/query/collation:collator_interface",
"//src/mongo/db/query:query_knobs",
"//src/mongo/db:server_base",
"//src/mongo/db/timeseries:timeseries_options",
],
)
idl_generator(
name = "validate_gen",
src = "validate.idl",
@ -110,6 +139,23 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "index_build_oplog_entry",
srcs = [
"index_build_oplog_entry.cpp",
],
hdrs = [
"index_build_oplog_entry.h",
],
deps = [
":commit_quorum_options",
"//src/mongo:base",
"//src/mongo/bson/util:bson_extract",
"//src/mongo/db/repl:oplog_entry",
"//src/mongo/rpc:command_status", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "validate_idl",
srcs = [

View File

@ -15,30 +15,6 @@ env.SConscript(
],
)
env.Library(
target="collection_options",
source=[
"clustered_collection_options_gen.cpp",
"clustered_collection_util.cpp",
"collection_options.cpp",
"collection_options_gen.cpp",
"collection_options_validation.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/crypto/encrypted_field_config",
"$BUILD_DIR/mongo/db/pipeline/change_stream_pre_and_post_images_options",
"$BUILD_DIR/mongo/db/query/query_shape/query_shape",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/query/collation/collator_interface",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/timeseries/timeseries_options",
],
)
env.Library(
target="health_log",
source=[
@ -101,20 +77,6 @@ env.Library(
],
)
env.Library(
target="index_build_oplog_entry",
source=[
"index_build_oplog_entry.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/repl/oplog_entry",
"$BUILD_DIR/mongo/rpc/command_status",
"commit_quorum_options",
],
)
env.Library(
target="index_key_validate",
source=[

View File

@ -170,6 +170,17 @@ idl_generator(
],
)
mongo_cc_library(
name = "rwc_defaults_commands",
srcs = [
":rwc_defaults_commands_gen",
],
deps = [
"//src/mongo/db:read_write_concern_defaults",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "authentication_commands_gen",
src = "authentication_commands.idl",
@ -230,6 +241,25 @@ idl_generator(
],
)
mongo_cc_library(
name = "create_command",
srcs = [
"create_gen",
],
hdrs = [
"create_command_validation.h",
],
deps = [
"//src/mongo/crypto:encrypted_field_config",
"//src/mongo/db:server_base",
"//src/mongo/db:server_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:authprivilege",
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/query:query_knobs", # TODO(SERVER-93876): Remove.
"//src/mongo/db/timeseries:timeseries_options", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "validate_db_metadata_gen",
src = "validate_db_metadata.idl",
@ -580,7 +610,7 @@ mongo_cc_library(
"//src/mongo/db/query/query_shape:shape_helpers.h",
"//src/mongo/db/query/query_stats:key.h",
"//src/mongo/db/query/query_stats:transform_algorithm_gen",
"//src/mongo/db/query/stats:stats_gen",
"//src/mongo/db/query/stats:stats_gen_for_histograms",
"//src/mongo/db/query/stats:value_utils.h",
"//src/mongo/db/query/timeseries:bucket_spec.h",
"//src/mongo/db/query/util:named_enum.h",
@ -655,6 +685,20 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "server_status_servers",
srcs = [
"server_status_servers.cpp",
],
deps = [
":server_status_core",
"//src/mongo/db/stats:counters", # TODO(SERVER-93876): Remove.
"//src/mongo/transport:message_compressor",
"//src/mongo/transport:service_executor",
"//src/mongo/util/net:ssl_manager", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "set_user_write_block_mode_idl",
srcs = [

View File

@ -16,20 +16,6 @@ env.SConscript(
],
)
env.Library(
target="server_status_servers",
source=[
"server_status_servers.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/stats/counters",
"$BUILD_DIR/mongo/transport/message_compressor",
"$BUILD_DIR/mongo/transport/service_executor",
"$BUILD_DIR/mongo/util/net/ssl_manager",
"server_status_core",
],
)
# Commands available in every process that executes commands
env.Library(
target="core",
@ -167,17 +153,6 @@ env.Library(
],
)
env.Library(
target="rwc_defaults_commands",
source=[
"rwc_defaults_commands_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/read_write_concern_defaults",
"$BUILD_DIR/mongo/db/server_base",
],
)
env.Library(
target="authentication_commands",
source=[
@ -240,22 +215,6 @@ env.Library(
],
)
env.Library(
target="create_command",
source=[
"create_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/crypto/encrypted_field_config",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/catalog/collection_options",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_options",
"$BUILD_DIR/mongo/db/timeseries/timeseries_options",
],
)
# Commands that are present in both mongod and embedded
env.Library(
target="standalone",

View File

@ -34,6 +34,27 @@ idl_generator(
],
)
mongo_cc_library(
name = "bulk_write_parser",
srcs = [
"bulk_write_crud_op.cpp",
"bulk_write_parser.cpp",
":bulk_write_gen",
],
hdrs = [
"bulk_write_crud_op.h",
"bulk_write_parser.h",
],
deps = [
"//src/mongo/crypto:fle_fields",
"//src/mongo/db:commands", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/ops:write_ops_parsers",
"//src/mongo/s:common_s",
],
)
idl_generator(
name = "query_settings_cmds_gen",
src = "query_settings_cmds.idl",
@ -47,6 +68,24 @@ idl_generator(
],
)
mongo_cc_library(
name = "current_op_common",
srcs = [
"current_op_common.cpp",
],
hdrs = [
"current_op_common.h",
],
deps = [
"//src/mongo/db:commands",
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:test_commands_enabled", # TODO(SERVER-93876): Remove.
"//src/mongo/db/pipeline:aggregation_request_helper",
"//src/mongo/db/query:command_request_response",
],
)
idl_generator(
name = "map_reduce_gen",
src = "map_reduce.idl",
@ -85,3 +124,34 @@ mongo_cc_library(
"//src/mongo/db:server_base",
],
)
mongo_cc_library(
name = "update_metrics",
srcs = [
"update_metrics.cpp",
],
hdrs = [
"update_metrics.h",
],
deps = [
"//src/mongo/db/commands:server_status_core", # TODO(SERVER-93876): Remove.
"//src/mongo/db/ops:write_ops_parsers",
],
)
mongo_cc_library(
name = "write_commands_common",
srcs = [
"write_commands_common.cpp",
],
hdrs = [
"write_commands_common.h",
],
deps = [
":update_metrics",
"//src/mongo/db/auth",
"//src/mongo/db/auth:authprivilege", # TODO(SERVER-93876): Remove.
"//src/mongo/db/ops:write_ops_parsers", # TODO(SERVER-93876): Remove.
"//src/mongo/db/pipeline:lite_parsed_document_source",
],
)

View File

@ -4,31 +4,6 @@ Import("env")
env = env.Clone()
env.Library(
target="update_metrics",
source=[
"update_metrics.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/ops/write_ops_parsers",
],
)
env.Library(
target="write_commands_common",
source=[
"write_commands_common.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/ops/write_ops_parsers",
"$BUILD_DIR/mongo/db/pipeline/lite_parsed_document_source",
"update_metrics",
],
)
env.Library(
target="bulk_write_common",
source=[
@ -48,23 +23,6 @@ env.Library(
],
)
env.Library(
target="bulk_write_parser",
source=[
"bulk_write_gen.cpp",
"bulk_write_parser.cpp",
"bulk_write_crud_op.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/crypto/fle_fields",
"$BUILD_DIR/mongo/db/commands",
"$BUILD_DIR/mongo/db/ops/write_ops_parsers",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/s/common_s",
],
)
env.Library(
target="bulk_write_command",
source=[
@ -134,23 +92,6 @@ env.Library(
],
)
env.Library(
target="current_op_common",
source=[
"current_op_common.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/commands",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
"$BUILD_DIR/mongo/db/pipeline/aggregation_request_helper",
"$BUILD_DIR/mongo/db/query/command_request_response",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
],
)
env.Library(
target="map_reduce_agg",
source=[

View File

@ -14,6 +14,26 @@ idl_generator(
src = "exception_util.idl",
)
mongo_cc_library(
name = "exception_util",
srcs = [
"exception_util.cpp",
":exception_util_gen",
],
hdrs = [
"exception_util.h",
],
deps = [
"//src/mongo/db:server_base",
"//src/mongo/db:server_options_servers",
"//src/mongo/db/commands:server_status_core", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_stats",
"//src/mongo/db/storage:recovery_unit_base", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util:log_and_backoff",
],
)
mongo_cc_library(
name = "lock_manager",
srcs = [

View File

@ -20,23 +20,6 @@ env.Library(
],
)
env.Library(
target="exception_util",
source=[
"exception_util.cpp",
"exception_util_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/query/query_stats/query_stats",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_options_servers",
"$BUILD_DIR/mongo/db/storage/recovery_unit_base",
"$BUILD_DIR/mongo/util/fail_point",
"$BUILD_DIR/mongo/util/log_and_backoff",
],
)
env.CppUnitTest(
target="lock_manager_test",
source=[

View File

@ -9,6 +9,22 @@ exports_files(
]),
)
mongo_cc_library(
name = "js_function",
srcs = [
"js_function.cpp",
],
hdrs = [
"js_function.h",
],
deps = [
"//src/mongo/db:service_context",
"//src/mongo/db/auth",
"//src/mongo/db/query:query_knobs",
"//src/mongo/scripting:scripting_common",
],
)
filegroup(
name = "headers",
srcs = [
@ -20,6 +36,23 @@ filegroup(
],
)
# WorkingSet target and associated test
mongo_cc_library(
name = "working_set",
srcs = [
"working_set.cpp",
],
hdrs = [
"working_set.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/exec/document_value",
"//src/mongo/db/query/bson:dotted_path_support",
],
)
idl_generator(
name = "batched_delete_stage_gen",
src = "batched_delete_stage.idl",

View File

@ -15,33 +15,6 @@ env.SConscript(
],
)
# WorkingSet target and associated test
env.Library(
target="working_set",
source=[
"working_set.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/query/bson/dotted_path_support",
"$BUILD_DIR/mongo/db/service_context",
"document_value/document_value",
],
)
env.Library(
target="js_function",
source=[
"js_function.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/scripting/scripting_common",
],
)
env.Library(
target="bucket_unpacker",
source=[

View File

@ -8,3 +8,26 @@ exports_files(
"*.cpp",
]),
)
mongo_cc_library(
name = "document_value",
srcs = [
"document.cpp",
"document_comparator.cpp",
"document_metadata_fields.cpp",
"value.cpp",
"value_comparator.cpp",
],
hdrs = [
"document.h",
"document_comparator.h",
"document_metadata_fields.h",
"value.h",
"value_comparator.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db/pipeline:field_path",
"//src/mongo/db/query/datetime:date_time_support", # TODO(SERVER-93876): Remove.
],
)

View File

@ -2,22 +2,6 @@
Import("env")
env.Library(
target="document_value",
source=[
"document.cpp",
"document_comparator.cpp",
"document_metadata_fields.cpp",
"value.cpp",
"value_comparator.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/pipeline/field_path",
"$BUILD_DIR/mongo/db/query/datetime/date_time_support",
],
)
env.Library(
target="document_value_test_util",
source=[

View File

@ -9,6 +9,23 @@ exports_files(
]),
)
mongo_cc_library(
name = "query_sbe_makeobj_spec",
srcs = [
"makeobj_spec.cpp",
"size_estimator.cpp",
],
hdrs = [
"makeobj_spec.h",
"size_estimator.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:sbe_values",
"//src/mongo/util:field_set", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "query_sbe_plan_stats",
srcs = [

View File

@ -2,19 +2,6 @@
Import("env")
env.Library(
target="query_sbe_makeobj_spec",
source=[
"makeobj_spec.cpp",
"size_estimator.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/sbe_values",
"$BUILD_DIR/mongo/util/field_set",
],
)
sbeEnv = env.Clone()
sbeEnv.InjectThirdParty(libraries=["snappy"])
sbeEnv.Library(

View File

@ -39,3 +39,26 @@ idl_generator(
"//src/mongo/db:basic_types_gen",
],
)
mongo_cc_library(
name = "column_store_index",
srcs = [
"column_cell.cpp",
"column_store_sorter.cpp",
],
hdrs = [
"column_cell.h",
"column_key_generator.h",
"column_store_sorter.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:server_base",
"//src/mongo/db/sorter:sorter_base",
"//src/mongo/db/sorter:sorter_stats", # TODO(SERVER-93876): Remove.
"//src/mongo/db/storage:encryption_hooks",
"//src/mongo/db/storage:execution_context",
"//src/mongo/db/storage:storage_options", # TODO(SERVER-93876): Remove.
"//src/third_party/snappy",
],
)

View File

@ -82,23 +82,6 @@ iamEnv.Library(
],
)
iamEnv.Library(
target="column_store_index",
source=[
"column_cell.cpp",
"column_store_sorter.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/sorter/sorter_base",
"$BUILD_DIR/mongo/db/sorter/sorter_stats",
"$BUILD_DIR/mongo/db/storage/encryption_hooks",
"$BUILD_DIR/mongo/db/storage/storage_options",
"$BUILD_DIR/third_party/snappy/snappy",
],
)
indexTestEnv = env.Clone()
indexTestEnv.InjectThirdParty(libraries=["snappy"])
indexTestEnv.CppUnitTest(

View File

@ -32,6 +32,36 @@ idl_generator(
],
)
mongo_cc_library(
name = "write_ops_parsers",
srcs = [
"write_ops.cpp",
":write_ops_gen",
"//src/mongo/db/update:update_oplog_entry_serialization.h",
"//src/mongo/db/update:update_oplog_entry_version.h",
],
hdrs = [
"write_ops.h",
],
header_deps = [
"//src/mongo/s/catalog:sharding_catalog_client",
],
deps = [
"//src/mongo:base",
"//src/mongo/crypto:encrypted_field_config",
"//src/mongo/crypto:fle_fields",
"//src/mongo/db:dbmessage",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:authprivilege",
"//src/mongo/db/pipeline:runtime_constants_idl",
"//src/mongo/db/query:hint_parser",
"//src/mongo/db/repl:optime", # TODO(SERVER-93876): Remove.
"//src/mongo/idl:idl_parser",
"//src/mongo/rpc:command_status",
"//src/mongo/rpc:metadata_impersonated_user",
],
)
idl_generator(
name = "delete_request_gen",
src = "delete_request.idl",

View File

@ -87,30 +87,6 @@ env.Library(
],
)
env.Library(
target="write_ops_parsers",
source=[
"write_ops.cpp",
"write_ops_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/dbmessage",
"$BUILD_DIR/mongo/db/pipeline/runtime_constants_idl",
"$BUILD_DIR/mongo/db/query/hint_parser",
"$BUILD_DIR/mongo/db/repl/optime",
"$BUILD_DIR/mongo/idl/idl_parser",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/metadata_impersonated_user",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/crypto/encrypted_field_config",
"$BUILD_DIR/mongo/crypto/fle_fields",
"$BUILD_DIR/mongo/db/server_base",
],
)
env.Library(
target="write_ops_parsers_test_helpers",
source=[

View File

@ -9,6 +9,50 @@ exports_files(
]),
)
mongo_cc_library(
name = "field_path",
srcs = [
"field_path.cpp",
],
hdrs = [
"field_path.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:server_base",
"//src/mongo/db:server_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:query_knobs", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "dependencies",
srcs = [
"dependencies.cpp",
],
hdrs = [
"dependencies.h",
],
deps = [
":field_path",
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "document_path_support",
srcs = [
"document_path_support.cpp",
],
hdrs = [
"document_path_support.h",
],
deps = [
"//src/mongo/db:common",
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "change_stream_pre_and_post_images_options_gen",
src = "change_stream_pre_and_post_images_options.idl",
@ -50,11 +94,114 @@ idl_generator(
],
)
mongo_cc_library(
name = "document_sources_idl",
srcs = [
"document_source_change_stream_gen",
"document_source_coll_stats_gen",
"document_source_current_op_gen",
"document_source_densify_gen",
"document_source_fill_gen",
"document_source_hybrid_scoring_util.cpp",
"document_source_internal_all_collection_stats_gen",
"document_source_internal_apply_oplog_update_gen",
"document_source_internal_projection_gen",
"document_source_list_sampled_queries_gen",
"document_source_list_sessions_gen",
"document_source_merge_gen",
"document_source_merge_modes_gen",
"document_source_merge_spec.cpp",
"document_source_out_gen",
"document_source_parsing_validators.cpp",
"document_source_query_settings_gen",
"document_source_query_stats_gen",
"document_source_query_stats_validators.cpp",
"document_source_rank_fusion_gen",
"document_source_rank_fusion_inputs_gen",
"document_source_replace_root_gen",
"document_source_set_variable_from_subpipeline_gen",
"document_source_set_window_fields_gen",
"document_source_union_with_gen",
"exchange_spec_gen",
"resume_token.cpp",
"resume_token_gen",
"storage_stats_spec_gen",
"//src/mongo/db:catalog_raii.h",
"//src/mongo/db:db_raii.h",
"//src/mongo/db:read_concern.h",
"//src/mongo/db/catalog:local_oplog_info.h",
"//src/mongo/db/exec:exclusion_projection_executor.h",
"//src/mongo/db/exec:fastpath_projection_node.h",
"//src/mongo/db/exec:projection_executor.h",
"//src/mongo/db/exec:projection_node.h",
"//src/mongo/db/pipeline/search:plan_sharded_search_gen",
"//src/mongo/db/stats:operation_latency_histogram.h",
"//src/mongo/db/stats:top.h",
],
hdrs = [
"change_stream_constants.h",
"change_stream_helpers.h",
"document_source_change_stream.h",
"document_source_hybrid_scoring_util.h",
"document_source_merge.h",
"document_source_merge_spec.h",
"document_source_parsing_validators.h",
"document_source_query_stats_validators.h",
"document_source_single_document_transformation.h",
"document_source_writer.h",
"lite_parsed_pipeline.h",
"merge_processor.h",
"resume_token.h",
"single_document_transformation_processor.h",
"transformer_interface.h",
],
deps = [
":docs_needed_bounds", # TODO(SERVER-93876): Remove.
":runtime_constants_idl",
":value_idl", # TODO(SERVER-93876): Remove.
"//src/mongo:base",
"//src/mongo/db:namespace_spec",
"//src/mongo/db/auth:security_token_auth",
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_shape", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_stats:query_stats_parse",
"//src/mongo/db/storage:key_string",
"//src/mongo/db/timeseries:timeseries_options", # TODO(SERVER-93876): Remove.
"//src/mongo/idl:idl_parser",
"//src/mongo/s:common_s",
],
)
mongo_cc_library(
name = "change_stream_helpers",
srcs = [
"change_stream_helpers.cpp",
],
hdrs = [
"change_stream_helpers.h",
],
deps = [
"document_sources_idl",
"//src/mongo/db/repl:oplog_entry",
],
)
idl_generator(
name = "value_gen",
src = "value.idl",
)
mongo_cc_library(
name = "value_idl",
srcs = [
"value_gen",
],
deps = [
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
"//src/mongo/idl:idl_parser",
],
)
idl_generator(
name = "change_stream_preimage_gen",
src = "change_stream_preimage.idl",
@ -98,6 +245,35 @@ idl_generator(
],
)
mongo_cc_library(
name = "aggregation_request_helper",
srcs = [
"aggregation_request_helper.cpp",
"name_expression.h",
"name_expression_parser.cpp",
"query_request_conversion.cpp",
":aggregate_command_gen",
":external_data_source_option_gen",
":name_expression_gen",
],
hdrs = [
"aggregation_request_helper.h",
"query_request_conversion.h",
],
deps = [
":document_sources_idl",
"//src/mongo/db:server_base",
"//src/mongo/db/auth:security_token", # TODO(SERVER-93876): Remove.
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:command_request_response",
"//src/mongo/db/query:common_query_enums_and_helpers",
"//src/mongo/db/query:query_request", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_settings", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:read_concern_args", # TODO(SERVER-93876): Remove.
"//src/mongo/db/storage:storage_options", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "accumulator_percentile_gen",
src = "accumulator_percentile.idl",
@ -119,6 +295,39 @@ idl_generator(
src = "map_reduce_options.idl",
)
mongo_cc_library(
name = "abt_utils",
srcs = [
"//src/mongo/db/pipeline/abt:utils.cpp",
],
hdrs = [
"//src/mongo/db/exec:docval_to_sbeval.h",
"//src/mongo/db/pipeline/abt:utils.h",
],
deps = [
":field_path", # TODO(SERVER-93876): Remove.
"//src/mongo/db/exec/document_value",
"//src/mongo/db/query/optimizer:optimizer_base",
],
)
mongo_cc_library(
name = "lite_parsed_document_source",
srcs = [
"lite_parsed_document_source.cpp",
"lite_parsed_pipeline.cpp",
],
hdrs = [
"lite_parsed_document_source.h",
"lite_parsed_pipeline.h",
],
deps = [
":aggregation_request_helper",
"//src/mongo/db/query:common_query_enums_and_helpers", # TODO(SERVER-93876): Remove.
"//src/mongo/db/stats:counters", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "document_source_coll_stats_gen",
src = "document_source_coll_stats.idl",

View File

@ -27,56 +27,6 @@ env.Library(
],
)
env.Library(
target="field_path",
source=[
"field_path.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_options",
],
)
env.Library(
target="aggregation_request_helper",
source=[
"aggregate_command_gen.cpp",
"aggregation_request_helper.cpp",
"external_data_source_option_gen.cpp",
"name_expression_parser.cpp",
"name_expression_gen.cpp",
"query_request_conversion.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/auth/security_token",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/db/query/command_request_response",
"$BUILD_DIR/mongo/db/query/common_query_enums_and_helpers",
"$BUILD_DIR/mongo/db/query/query_request",
"$BUILD_DIR/mongo/db/query/query_settings/query_settings",
"$BUILD_DIR/mongo/db/repl/read_concern_args",
"document_sources_idl",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/storage/storage_options",
],
)
env.Library(
target="dependencies",
source=[
"dependencies.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"field_path",
],
)
env.Library(
target="accumulator",
source=[
@ -175,42 +125,6 @@ env.Library(
],
)
env.Library(
target="lite_parsed_document_source",
source=[
"lite_parsed_document_source.cpp",
"lite_parsed_pipeline.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/query/common_query_enums_and_helpers",
"$BUILD_DIR/mongo/db/stats/counters",
"aggregation_request_helper",
],
)
env.Library(
target="document_path_support",
source=[
"document_path_support.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
],
)
env.Library(
target="abt_utils",
source=[
"abt/utils.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/db/query/optimizer/optimizer_base",
"field_path",
],
)
env.Library(
target="pipeline_visitor",
source=[
@ -501,68 +415,6 @@ env.Library(
],
)
env.Library(
target="document_sources_idl",
source=[
"document_source_change_stream_gen.cpp",
"document_source_coll_stats_gen.cpp",
"document_source_current_op_gen.cpp",
"document_source_densify_gen.cpp",
"document_source_fill_gen.cpp",
"document_source_hybrid_scoring_util.cpp",
"document_source_internal_all_collection_stats_gen.cpp",
"document_source_internal_apply_oplog_update_gen.cpp",
"document_source_internal_projection_gen.cpp",
"document_source_list_sampled_queries_gen.cpp",
"document_source_list_sessions_gen.cpp",
"document_source_merge_gen.cpp",
"document_source_merge_modes_gen.cpp",
"document_source_merge_spec.cpp",
"document_source_out_gen.cpp",
"document_source_parsing_validators.cpp",
"document_source_query_settings_gen.cpp",
"document_source_query_stats_gen.cpp",
"document_source_query_stats_validators.cpp",
"document_source_rank_fusion_gen.cpp",
"document_source_rank_fusion_inputs_gen.cpp",
"document_source_replace_root_gen.cpp",
"document_source_set_variable_from_subpipeline_gen.cpp",
"document_source_set_window_fields_gen.cpp",
"document_source_union_with_gen.cpp",
"exchange_spec_gen.cpp",
"resume_token_gen.cpp",
"resume_token.cpp",
"search/plan_sharded_search_gen.cpp",
"storage_stats_spec_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/auth/security_token_auth",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/db/namespace_spec",
"$BUILD_DIR/mongo/db/query/query_shape/query_shape",
"$BUILD_DIR/mongo/db/query/query_stats/query_stats_parse",
"$BUILD_DIR/mongo/db/storage/key_string",
"$BUILD_DIR/mongo/db/timeseries/timeseries_options",
"$BUILD_DIR/mongo/idl/idl_parser",
"$BUILD_DIR/mongo/s/common_s",
"docs_needed_bounds",
"runtime_constants_idl",
"value_idl",
],
)
env.Library(
target="value_idl",
source=[
"value_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/idl/idl_parser",
],
)
env.Library(
target="change_stream_expired_pre_image_remover",
source=[
@ -575,19 +427,6 @@ env.Library(
],
)
env.Library(
target="change_stream_helpers",
source=[
"change_stream_helpers.cpp",
],
LIBDEPS=[
"document_sources_idl",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/repl/oplog_entry",
],
)
env.Library(
target="change_stream_test_helpers",
source=[

View File

@ -28,6 +28,27 @@ idl_generator(
src = "explain_verbosity.idl",
)
mongo_cc_library(
name = "common_query_enums_and_helpers",
srcs = [
"allowed_contexts.cpp",
"analyze_regex.cpp",
"explain_options.cpp",
":explain_verbosity_gen",
],
hdrs = [
"allowed_contexts.h",
"analyze_regex.h",
"explain_options.h",
],
deps = [
"//src/mongo/db:api_parameters",
"//src/mongo/db:server_base",
"//src/mongo/db:service_context",
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "hint_gen",
src = "hint.idl",
@ -178,6 +199,41 @@ idl_generator(
],
)
mongo_cc_library(
name = "command_request_response",
srcs = [
"analyze_command_gen",
"count_command_as_aggregation_command.cpp",
"count_command_gen",
"count_request.cpp",
"cursor_request.cpp",
"cursor_response.cpp",
"kill_cursors_gen",
"view_response_formatter.cpp",
"//src/mongo/db:clientcursor.h",
"//src/mongo/db:cursor_id.h",
],
hdrs = [
"count_command_as_aggregation_command.h",
"count_request.h",
"cursor_request.h",
"cursor_response.h",
"view_response_formatter.h",
],
deps = [
":cursor_response_idl",
":query_request", # TODO(SERVER-93876): Remove.
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:common", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db/ops:write_ops_parsers",
"//src/mongo/db/query:hint_parser",
"//src/mongo/db/repl:optime", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc",
"//src/mongo/rpc:command_status", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "getmore_command_gen",
src = "getmore_command.idl",
@ -189,6 +245,37 @@ idl_generator(
],
)
mongo_cc_library(
name = "query_request",
srcs = [
"distinct_command_gen",
"find_command_gen",
"getmore_command_gen",
"query_request_helper.cpp",
"tailable_mode.cpp",
"tailable_mode_gen",
],
hdrs = [
"query_request_helper.h",
"tailable_mode.h",
],
deps = [
":cursor_response_idl",
":hint_parser",
"//src/mongo/crypto:fle_fields",
"//src/mongo/db:api_parameters", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db/auth:authprivilege",
"//src/mongo/db/auth:security_token_auth", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:test_commands_enabled",
"//src/mongo/db/pipeline:runtime_constants_idl", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_settings",
"//src/mongo/db/repl:read_concern_args", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:repl_coordinator_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/s:common_s",
],
)
mongo_cc_library(
name = "hint_parser",
srcs = [

View File

@ -192,81 +192,6 @@ env.Library(
],
)
env.Library(
target="common_query_enums_and_helpers",
source=[
"allowed_contexts.cpp",
"analyze_regex.cpp",
"explain_options.cpp",
"explain_verbosity_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/api_parameters",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/transport/transport_layer_common",
],
)
env.Library(
target="command_request_response",
source=[
"analyze_command_gen.cpp",
"count_command_as_aggregation_command.cpp",
"count_command_gen.cpp",
"count_request.cpp",
"cursor_request.cpp",
"cursor_response.cpp",
"kill_cursors_gen.cpp",
"view_response_formatter.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/ops/write_ops_parsers",
"$BUILD_DIR/mongo/db/query/hint_parser",
"$BUILD_DIR/mongo/db/repl/optime",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/rpc",
"query_request",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"cursor_response_idl",
],
)
env.Library(
target="query_request",
source=[
"distinct_command_gen.cpp",
"find_command_gen.cpp",
"getmore_command_gen.cpp",
"query_request_helper.cpp",
"tailable_mode.cpp",
"tailable_mode_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/crypto/fle_fields",
"$BUILD_DIR/mongo/db/api_parameters",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/auth/security_token_auth",
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
"$BUILD_DIR/mongo/db/pipeline/runtime_constants_idl",
"$BUILD_DIR/mongo/db/repl/read_concern_args",
"$BUILD_DIR/mongo/db/repl/repl_coordinator_interface",
"$BUILD_DIR/mongo/s/common_s",
"hint_parser",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"cursor_response_idl",
"query_settings/query_settings",
],
)
env.Library(
target="query_test_service_context",
source=[

View File

@ -8,3 +8,33 @@ exports_files(
"*.cpp",
]),
)
mongo_cc_library(
name = "ce_utils",
srcs = [
"bound_utils.cpp",
"sel_tree_utils.cpp",
],
hdrs = [
"bound_utils.h",
"sel_tree_utils.h",
],
deps = [
"//src/mongo/db/pipeline:abt_utils",
"//src/mongo/db/query/optimizer:optimizer_rewrites",
],
)
mongo_cc_library(
name = "ce_histogram_estimation",
srcs = [
"histogram_predicate_estimation.cpp",
],
hdrs = [
"histogram_predicate_estimation.h",
],
deps = [
":ce_utils",
"//src/mongo/db/query/stats:stats_histograms",
],
)

View File

@ -13,29 +13,6 @@ env.SConscript(
],
)
env.Library(
target="ce_utils",
source=[
"bound_utils.cpp",
"sel_tree_utils.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/pipeline/abt_utils",
"$BUILD_DIR/mongo/db/query/optimizer/optimizer_rewrites",
],
)
env.Library(
target="ce_histogram_estimation",
source=[
"histogram_predicate_estimation.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/query/stats/stats_histograms",
"ce_utils",
],
)
env.Library(
target="test_utils",
source=[

View File

@ -8,3 +8,85 @@ exports_files(
"*.cpp",
]),
)
# Core definitions: ABT, Logical and physical properties, Metadata, and core
# utilities.
mongo_cc_library(
name = "optimizer_base",
srcs = [
"defs.cpp",
"explain.cpp",
"index_bounds.cpp",
"node.cpp",
"partial_schema_requirements.cpp",
"props.cpp",
"reference_tracker.cpp",
"//src/mongo/db/query/optimizer/syntax:expr.cpp",
"//src/mongo/db/query/optimizer/utils:abt_compare.cpp",
"//src/mongo/db/query/optimizer/utils:abt_hash.cpp",
"//src/mongo/db/query/optimizer/utils:ce_math.cpp",
"//src/mongo/db/query/optimizer/utils:interval_utils.cpp",
"//src/mongo/db/query/optimizer/utils:path_utils.cpp",
"//src/mongo/db/query/optimizer/utils:reftracker_utils.cpp",
"//src/mongo/db/query/optimizer/utils:utils.cpp",
],
hdrs = [
"defs.h",
"explain.h",
"index_bounds.h",
"node.h",
"partial_schema_requirements.h",
"props.h",
"reference_tracker.h",
"//src/mongo/db/query/optimizer:bool_expression.h",
"//src/mongo/db/query/optimizer:comparison_op.h",
"//src/mongo/db/query/optimizer:containers.h",
"//src/mongo/db/query/optimizer:explain_interface.h",
"//src/mongo/db/query/optimizer:node_defs.h",
"//src/mongo/db/query/optimizer/syntax:expr.h",
"//src/mongo/db/query/optimizer/syntax:path.h",
"//src/mongo/db/query/optimizer/syntax:syntax.h",
"//src/mongo/db/query/optimizer/syntax:syntax_fwd_declare.h",
"//src/mongo/db/query/optimizer/utils:abt_compare.h",
"//src/mongo/db/query/optimizer/utils:abt_hash.h",
"//src/mongo/db/query/optimizer/utils:bool_expression_builder.h",
"//src/mongo/db/query/optimizer/utils:ce_math.h",
"//src/mongo/db/query/optimizer/utils:const_fold_interface.h",
"//src/mongo/db/query/optimizer/utils:interval_utils.h",
"//src/mongo/db/query/optimizer/utils:path_utils.h",
"//src/mongo/db/query/optimizer/utils:physical_plan_builder.h",
"//src/mongo/db/query/optimizer/utils:reftracker_utils.h",
"//src/mongo/db/query/optimizer/utils:strong_alias.h",
"//src/mongo/db/query/optimizer/utils:utils.h",
],
deps = [
# We should only depend on SBE for value representation and basic
# arithmetic for constant folding.
"//src/mongo/db/exec/sbe:query_sbe_makeobj_spec",
"//src/mongo/db:sbe_values", # TODO(SERVER-93876): Remove.
],
)
# Rewrites which manipulate the ABT directly.
mongo_cc_library(
name = "optimizer_rewrites",
srcs = [
"//src/mongo/db/query/optimizer/rewrites:const_eval.cpp",
"//src/mongo/db/query/optimizer/rewrites:normalize_projections.cpp",
"//src/mongo/db/query/optimizer/rewrites:path.cpp",
"//src/mongo/db/query/optimizer/rewrites:path_lower.cpp",
"//src/mongo/db/query/optimizer/rewrites:proj_spec_builder.cpp",
"//src/mongo/db/query/optimizer/rewrites:proj_spec_lower.cpp",
],
hdrs = [
"//src/mongo/db/query/optimizer/rewrites:const_eval.h",
"//src/mongo/db/query/optimizer/rewrites:normalize_projections.h",
"//src/mongo/db/query/optimizer/rewrites:path.h",
"//src/mongo/db/query/optimizer/rewrites:path_lower.h",
"//src/mongo/db/query/optimizer/rewrites:proj_spec_builder.h",
"//src/mongo/db/query/optimizer/rewrites:proj_spec_lower.h",
],
deps = [
":optimizer_base",
],
)

View File

@ -14,49 +14,6 @@ env.SConscript(
],
)
# Core definitions: ABT, Logical and physical properties, Metadata, and core utilities.
env.Library(
target="optimizer_base",
source=[
"defs.cpp",
"explain.cpp",
"index_bounds.cpp",
"node.cpp",
"partial_schema_requirements.cpp",
"props.cpp",
"reference_tracker.cpp",
"syntax/expr.cpp",
"utils/abt_compare.cpp",
"utils/abt_hash.cpp",
"utils/ce_math.cpp",
"utils/interval_utils.cpp",
"utils/path_utils.cpp",
"utils/reftracker_utils.cpp",
"utils/utils.cpp",
],
LIBDEPS=[
# We should only depend on SBE for value representation and basic arithmetic for constant folding.
"$BUILD_DIR/mongo/db/exec/sbe/query_sbe_makeobj_spec",
"$BUILD_DIR/mongo/db/sbe_values",
],
)
# Rewrites which manipulate the ABT directly.
env.Library(
target="optimizer_rewrites",
source=[
"rewrites/const_eval.cpp",
"rewrites/normalize_projections.cpp",
"rewrites/path.cpp",
"rewrites/path_lower.cpp",
"rewrites/proj_spec_lower.cpp",
"rewrites/proj_spec_builder.cpp",
],
LIBDEPS=[
"optimizer_base",
],
)
env.CppUnitTest(
target="optimizer_proj_spec_test",
source=[

View File

@ -52,3 +52,25 @@ idl_generator(
"//src/mongo/idl:cluster_server_parameter_gen",
],
)
mongo_cc_library(
name = "manager",
srcs = [
"query_settings_manager.cpp",
":query_settings_cluster_parameter_gen",
],
hdrs = [
"query_settings_manager.h",
],
deps = [
":query_settings",
"//src/mongo/crypto:sha256_block", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:server_status_core",
"//src/mongo/db/concurrency:exception_util", # TODO(SERVER-93876): Remove.
"//src/mongo/db/concurrency:lock_manager",
"//src/mongo/db/query:query_knobs", # TODO(SERVER-93876): Remove.
"//src/mongo/idl:cluster_server_parameter", # TODO(SERVER-93876): Remove.
],
)

View File

@ -4,25 +4,6 @@ Import("env")
env = env.Clone()
env.Library(
target="manager",
source=[
"query_settings_cluster_parameter_gen.cpp",
"query_settings_manager.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/crypto/sha256_block",
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/concurrency/exception_util",
"$BUILD_DIR/mongo/db/concurrency/lock_manager",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/idl/cluster_server_parameter",
"query_settings",
],
)
env.Library(
target="utils",
source=[

View File

@ -9,14 +9,6 @@ exports_files(
]),
)
idl_generator(
name = "query_shape_hash_gen",
src = "query_shape_hash.idl",
deps = [
"//src/mongo/crypto:sha256_block_gen",
],
)
idl_generator(
name = "query_shape_gen",
src = "query_shape.idl",
@ -25,6 +17,57 @@ idl_generator(
],
)
mongo_cc_library(
name = "query_shape_common",
srcs = [
"query_shape_gen",
"serialization_options.cpp",
],
hdrs = [
"serialization_options.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db/exec/document_value",
"//src/mongo/db/pipeline:field_path", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "query_shape",
srcs = [
"query_shape.cpp",
"shape_helpers.cpp",
"//src/mongo/db/pipeline:aggregation_request_helper.h",
"//src/mongo/db/pipeline:plan_executor_pipeline.h",
"//src/mongo/db/pipeline:plan_explainer_pipeline.h",
"//src/mongo/db/query:count_request.h",
"//src/mongo/db/query:projection_ast_util.h",
],
hdrs = [
"agg_cmd_shape.h",
"cmd_with_let_shape.h",
"find_cmd_shape.h",
"query_shape.h",
"shape_helpers.h",
],
deps = [
":query_shape_common",
"//src/mongo:base",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
"//src/mongo/db/pipeline:field_path", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "query_shape_hash_gen",
src = "query_shape_hash.idl",
deps = [
"//src/mongo/crypto:sha256_block_gen",
],
)
idl_generator(
name = "query_shape_test_gen",
src = "query_shape_test.idl",

View File

@ -9,34 +9,6 @@ Import(
env = env.Clone()
env.Library(
target="query_shape",
source=[
"query_shape.cpp",
"shape_helpers.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/db/pipeline/field_path",
"$BUILD_DIR/mongo/db/server_base",
"query_shape_common",
],
)
env.Library(
target="query_shape_common",
source=[
"query_shape_gen.cpp",
"serialization_options.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"$BUILD_DIR/mongo/db/pipeline/field_path",
],
)
env.CppUnitTest(
target="db_query_query_shape_test",
source=[

View File

@ -9,11 +9,6 @@ exports_files(
]),
)
idl_generator(
name = "transform_algorithm_gen",
src = "transform_algorithm.idl",
)
mongo_cc_library(
name = "rate_limiting",
srcs = [
@ -28,6 +23,55 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "query_stats",
srcs = [
"aggregated_metric.cpp",
"key.cpp",
"optimizer_metrics_stats_entry.cpp",
"query_stats.cpp",
"query_stats_entry.cpp",
"query_stats_helpers.h",
"supplemental_metrics_stats.cpp",
"vector_search_stats_entry.cpp",
],
hdrs = [
"aggregated_metric.h",
"key.h",
"optimizer_metrics_stats_entry.h",
"query_stats.h",
"query_stats_entry.h",
"supplemental_metrics_stats.h",
"vector_search_stats_entry.h",
],
deps = [
":query_stats_parse", # TODO(SERVER-93876): Remove.
":rate_limiting",
"//src/mongo/bson/mutable:mutable_bson",
"//src/mongo/db:commands",
"//src/mongo/db:profile_filter", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:command_request_response", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:cursor_response_idl", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:memory_util", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query:query_knobs", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_shape", # TODO(SERVER-93876): Remove.
"//src/mongo/db/stats:counters", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:client_metadata", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util:processinfo", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "transform_algorithm_gen",
src = "transform_algorithm.idl",
)
mongo_cc_library(
name = "query_stats_parse",
srcs = [

View File

@ -9,42 +9,6 @@ Import(
env = env.Clone()
env.Library(
target="query_stats",
source=[
"aggregated_metric.cpp",
"key.cpp",
"optimizer_metrics_stats_entry.cpp",
"query_stats_entry.cpp",
"query_stats.cpp",
"supplemental_metrics_stats.cpp",
"vector_search_stats_entry.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/mutable/mutable_bson",
"$BUILD_DIR/mongo/db/commands",
"$BUILD_DIR/mongo/db/profile_filter",
"$BUILD_DIR/mongo/db/query/command_request_response",
"$BUILD_DIR/mongo/db/query/cursor_response_idl",
"$BUILD_DIR/mongo/db/query/memory_util",
"$BUILD_DIR/mongo/db/query/query_knobs",
"$BUILD_DIR/mongo/db/query/query_shape/query_shape",
"$BUILD_DIR/mongo/db/server_options",
"$BUILD_DIR/mongo/db/stats/counters",
"$BUILD_DIR/mongo/rpc/client_metadata",
"$BUILD_DIR/mongo/util/fail_point",
"$BUILD_DIR/mongo/util/net/network",
"$BUILD_DIR/mongo/util/processinfo",
"query_stats_parse",
"rate_limiting",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
],
)
env.CppUnitTest(
target="db_query_query_stats_test",
source=[

View File

@ -75,3 +75,18 @@ mongo_cc_library(
"//src/mongo/util/net:network",
],
)
mongo_cc_library(
name = "search_index_process_interface",
srcs = [
"search_index_process_interface.cpp",
],
hdrs = [
"search_index_process_interface.h",
],
deps = [
"//src/mongo/db:commands", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
],
)

View File

@ -106,18 +106,6 @@ env.Library(
],
)
env.Library(
target="search_index_process_interface",
source=[
"search_index_process_interface.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
],
)
env.Library(
target="search_index_process_shard",
source=[

View File

@ -10,9 +10,40 @@ exports_files(
)
idl_generator(
name = "stats_gen",
name = "stats_gen_for_histograms",
src = "stats.idl",
deps = [
"//src/mongo/db:basic_types_gen",
],
)
mongo_cc_library(
name = "stats_histograms",
srcs = [
"array_histogram.cpp",
"scalar_histogram.cpp",
"value_utils.cpp",
":stats_gen_for_histograms",
],
hdrs = [
"array_histogram.h",
"scalar_histogram.h",
"value_utils.h",
],
deps = [
"//src/mongo/db:sbe_values",
],
)
mongo_cc_library(
name = "stats_gen",
srcs = [
"max_diff.cpp",
],
hdrs = [
"max_diff.h",
],
deps = [
":stats_histograms",
],
)

View File

@ -20,29 +20,6 @@ env.Library(
],
)
env.Library(
target="stats_histograms",
source=[
"array_histogram.cpp",
"scalar_histogram.cpp",
"stats_gen.cpp",
"value_utils.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/sbe_values",
],
)
env.Library(
target="stats_gen",
source=[
"max_diff.cpp",
],
LIBDEPS=[
"stats_histograms",
],
)
env.CppUnitTest(
target="stats_cache_loader_test",
source=[

View File

@ -114,6 +114,29 @@ idl_generator(
],
)
mongo_cc_library(
name = "oplog_entry",
srcs = [
"oplog_entry.cpp",
"oplog_entry_gen",
"oplog_entry_serialization.cpp",
"//src/mongo/db:global_index.h",
],
hdrs = [
"oplog_entry.h",
"oplog_entry_serialization.h",
],
deps = [
":optime", # TODO(SERVER-93876): Remove.
"//src/mongo/db:multitenancy", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:security_token_auth", # TODO(SERVER-93876): Remove.
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/exec/document_value", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "topology_coordinator_gen",
src = "topology_coordinator.idl",
@ -165,6 +188,26 @@ idl_generator(
],
)
mongo_cc_library(
name = "cloner_utils",
srcs = [
"cloner_utils.cpp",
"database_cloner_common.cpp",
"database_cloner_gen",
],
hdrs = [
"cloner_utils.h",
"database_cloner_common.h",
],
deps = [
":read_concern_args", # TODO(SERVER-93876): Remove.
"//src/mongo/db:multitenancy", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/db/catalog:collection_options",
],
)
idl_generator(
name = "hello_gen",
src = "hello.idl",
@ -178,6 +221,20 @@ idl_generator(
],
)
mongo_cc_library(
name = "hello_command",
srcs = [
"hello_gen",
],
deps = [
":optime", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db/auth",
"//src/mongo/db/auth:authprivilege",
"//src/mongo/rpc:metadata",
],
)
idl_generator(
name = "tenant_migration_state_machine_gen",
src = "tenant_migration_state_machine.idl",
@ -233,6 +290,19 @@ idl_generator(
],
)
mongo_cc_library(
name = "image_collection_entry",
srcs = [
"image_collection_entry_gen",
],
deps = [
":oplog_entry",
"//src/mongo:base",
"//src/mongo/db/session:logical_session_id", # TODO(SERVER-93876): Remove.
"//src/mongo/idl:idl_parser",
],
)
idl_generator(
name = "read_concern_gen",
src = "read_concern.idl",
@ -328,11 +398,178 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "oplog_write_interface",
srcs = [
"oplog_applier_batcher.h",
"oplog_writer.cpp",
"oplog_writer_batcher.cpp",
"//src/mongo/util/concurrency:thread_pool.h",
],
hdrs = [
"oplog_writer.h",
"oplog_writer_batcher.h",
],
deps = [
":oplog_entry",
":repl_coordinator_interface",
":repl_server_parameters", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context",
],
)
idl_generator(
name = "repl_set_config_params_gen",
src = "repl_set_config_params.idl",
)
mongo_cc_library(
name = "replica_set_messages",
srcs = [
"hello_response.cpp",
"last_vote.cpp",
"member_config.cpp",
"repl_set_config.cpp",
"repl_set_config_validators.cpp",
"repl_set_heartbeat_args_v1.cpp",
"repl_set_heartbeat_response.cpp",
"repl_set_request_votes_args.cpp",
"repl_set_tag.cpp",
"repl_set_write_concern_mode_definitions.cpp",
"update_position_args.cpp",
":member_config_gen",
":repl_set_config_gen",
":repl_set_config_params_gen",
],
hdrs = [
"hello_response.h",
"last_vote.h",
"member_config.h",
"repl_set_config.h",
"repl_set_config_validators.h",
"repl_set_heartbeat_args_v1.h",
"repl_set_heartbeat_response.h",
"repl_set_request_votes_args.h",
"repl_set_tag.h",
"repl_set_write_concern_mode_definitions.h",
"update_position_args.h",
],
deps = [
":optime",
":read_concern_args", # TODO(SERVER-93876): Remove.
":repl_server_parameters",
":split_horizon",
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/client:connection_string", # TODO(SERVER-93876): Remove.
"//src/mongo/db:common", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:command_status",
"//src/mongo/rpc:metadata",
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "topology_version_observer",
srcs = [
"topology_version_observer.cpp",
],
hdrs = [
"topology_version_observer.h",
],
deps = [
":repl_coordinator_interface", # TODO(SERVER-93876): Remove.
":replica_set_messages",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "member_data",
srcs = [
"member_data.cpp",
],
hdrs = [
"member_data.h",
],
deps = [
":replica_set_messages",
],
)
mongo_cc_library(
name = "reporter",
srcs = [
"reporter.cpp",
],
hdrs = [
"reporter.h",
],
deps = [
":replica_set_messages",
"//src/mongo/db:server_base",
"//src/mongo/db/commands:server_status_core", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:remote_command", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:task_executor_interface",
"//src/mongo/rpc:command_status", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "sync_source_resolver",
srcs = [
"sync_source_resolver.cpp",
],
hdrs = [
"sync_source_resolver.h",
],
deps = [
":oplog_entry",
":optime", # TODO(SERVER-93876): Remove.
":read_concern_args", # TODO(SERVER-93876): Remove.
"//src/mongo/client:fetcher",
"//src/mongo/db:server_base",
"//src/mongo/executor:task_executor_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:metadata", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "rollback_checker",
srcs = [
"rollback_checker.cpp",
],
hdrs = [
"rollback_checker.h",
],
deps = [
"//src/mongo/executor:task_executor_interface",
],
)
mongo_cc_library(
name = "scatter_gather",
srcs = [
"scatter_gather_algorithm.cpp",
"scatter_gather_runner.cpp",
],
hdrs = [
"scatter_gather_algorithm.h",
"scatter_gather_runner.h",
],
deps = [
"//src/mongo/executor:task_executor_interface",
],
)
idl_generator(
name = "apply_ops_gen",
src = "apply_ops.idl",
@ -341,6 +578,22 @@ idl_generator(
],
)
mongo_cc_library(
name = "apply_ops_command_info",
srcs = [
"apply_ops_command_info.cpp",
"apply_ops_gen",
"multiapplier.h",
],
hdrs = [
"apply_ops_command_info.h",
],
deps = [
":oplog_entry",
"//src/mongo:base",
],
)
idl_generator(
name = "repl_set_config_gen",
src = "repl_set_config.idl",
@ -886,6 +1139,24 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "roll_back_local_operations",
srcs = [
"roll_back_local_operations.cpp",
"//src/mongo/db/repl:oplog_interface.h",
"//src/mongo/db/transaction:transaction_history_iterator.h",
],
hdrs = [
"roll_back_local_operations.h",
],
deps = [
":oplog_entry",
":optime", # TODO(SERVER-93876): Remove.
"//src/mongo:base",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "replication_consistency_markers_idl",
srcs = [
@ -972,3 +1243,32 @@ mongo_cc_library(
"//src/mongo/db/session:logical_session_id_helpers",
],
)
mongo_cc_library(
name = "abstract_async_component",
srcs = [
"abstract_async_component.cpp",
],
hdrs = [
"abstract_async_component.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:task_executor_interface",
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "delayable_timeout_callback",
srcs = [
"delayable_timeout_callback.cpp",
],
hdrs = [
"delayable_timeout_callback.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/executor:task_executor_interface",
],
)

View File

@ -5,18 +5,6 @@ Import("wiredtiger")
env = env.Clone()
env.Library(
target="apply_ops_command_info",
source=[
"apply_ops_command_info.cpp",
"apply_ops_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"oplog_entry",
],
)
env.Library(
target="change_stream_oplog_notification",
source=[
@ -152,20 +140,6 @@ env.Library(
],
)
env.Library(
target="abstract_async_component",
source=[
"abstract_async_component.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/executor/task_executor_interface",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
],
)
env.Library(
target="dbcheck",
source=[
@ -263,17 +237,6 @@ env.Library(
],
)
env.Library(
target="scatter_gather",
source=[
"scatter_gather_algorithm.cpp",
"scatter_gather_runner.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/executor/task_executor_interface",
],
)
env.Library(
target="oplog_buffer_collection",
source=[
@ -439,26 +402,6 @@ env.Library(
],
)
env.Library(
target="oplog_entry",
source=[
"oplog_entry.cpp",
"oplog_entry_serialization.cpp",
"oplog_entry_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/auth/security_token_auth",
"$BUILD_DIR/mongo/db/catalog/collection_options",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
"optime",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/multitenancy",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
],
)
env.Benchmark(
target="oplog_entry_bm",
source=[
@ -471,21 +414,6 @@ env.Benchmark(
],
)
env.Library(
target="oplog_write_interface",
source=[
"oplog_writer_batcher.cpp",
"oplog_writer.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"oplog_entry",
"repl_coordinator_interface",
"repl_server_parameters",
],
)
env.Library(
target="oplog_write",
source=["oplog_writer_impl.cpp"],
@ -598,16 +526,6 @@ env.Library(
],
)
env.Library(
target="member_data",
source=[
"member_data.cpp",
],
LIBDEPS=[
"replica_set_messages",
],
)
env.Library(
target="topology_coordinator",
source=[
@ -747,44 +665,6 @@ env.Library(
],
)
env.Library(
target="replica_set_messages",
source=[
"hello_response.cpp",
"member_config.cpp",
"repl_set_config.cpp",
"repl_set_config_validators.cpp",
"repl_set_heartbeat_args_v1.cpp",
"repl_set_heartbeat_response.cpp",
"repl_set_request_votes_args.cpp",
"repl_set_tag.cpp",
"repl_set_write_concern_mode_definitions.cpp",
"update_position_args.cpp",
"last_vote.cpp",
"member_config_gen.cpp",
"repl_set_config_gen.cpp",
"repl_set_config_params_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/client/connection_string",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/metadata",
"$BUILD_DIR/mongo/transport/transport_layer_common",
"$BUILD_DIR/mongo/util/net/network",
"optime",
"read_concern_args",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/util/fail_point",
"repl_server_parameters",
"split_horizon",
],
)
env.Library(
target="repl_set_status_commands",
source=[
@ -861,38 +741,6 @@ env.Library(
],
)
env.Library(
target="reporter",
source=[
"reporter.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/executor/remote_command",
"$BUILD_DIR/mongo/executor/task_executor_interface",
"$BUILD_DIR/mongo/rpc/command_status",
"replica_set_messages",
],
)
env.Library(
target="sync_source_resolver",
source=[
"sync_source_resolver.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/client/fetcher",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/executor/task_executor_interface",
"$BUILD_DIR/mongo/rpc/metadata",
"$BUILD_DIR/mongo/util/net/network",
"oplog_entry",
"optime",
"read_concern_args",
],
)
env.Library(
target="sync_source_selector_mock",
source=[
@ -1041,22 +889,6 @@ env.Library(
],
)
env.Library(
target="cloner_utils",
source=[
"cloner_utils.cpp",
"database_cloner_common.cpp",
"database_cloner_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/catalog/collection_options",
"$BUILD_DIR/mongo/db/multitenancy",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"read_concern_args",
],
)
env.Library(
target="initial_syncer",
source=[
@ -1093,43 +925,6 @@ env.Library(
],
)
env.Library(
target="rollback_checker",
source=[
"rollback_checker.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/executor/task_executor_interface",
],
)
env.Library(
target="roll_back_local_operations",
source=[
"roll_back_local_operations.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/fail_point",
"oplog_entry",
"optime",
],
)
env.Library(
target="hello_command",
source=[
"hello_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/rpc/metadata",
"optime",
],
)
env.Library(
target="replication_info",
source=[
@ -1801,23 +1596,6 @@ env.Library(
],
)
env.Library(
target="topology_version_observer",
source=[
"topology_version_observer.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/service_context",
"repl_coordinator_interface",
"replica_set_messages",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="hello_auth",
source=[
@ -1907,30 +1685,6 @@ env.Library(
],
)
env.Library(
target="image_collection_entry",
source=[
"image_collection_entry_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/session/logical_session_id",
"$BUILD_DIR/mongo/idl/idl_parser",
"oplog_entry",
],
)
env.Library(
target="delayable_timeout_callback",
source=[
"delayable_timeout_callback.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/executor/task_executor_interface",
],
)
env.Benchmark(
target="oplog_application_bm",
source=[

View File

@ -167,6 +167,26 @@ idl_generator(
],
)
mongo_cc_library(
name = "forwardable_operation_metadata",
srcs = [
"forwardable_operation_metadata.cpp",
"forwardable_operation_metadata_gen",
],
hdrs = [
"forwardable_operation_metadata.h",
],
deps = [
"//src/mongo/db:server_base",
"//src/mongo/db:write_block_bypass",
"//src/mongo/db/auth",
"//src/mongo/db/auth:security_token",
"//src/mongo/db/auth:security_token_auth",
"//src/mongo/rpc:metadata_impersonated_user",
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "add_shard_cmd_gen",
src = "add_shard_cmd.idl",

View File

@ -300,23 +300,6 @@ env.Library(
],
)
env.Library(
target="forwardable_operation_metadata",
source=[
"forwardable_operation_metadata.cpp",
"forwardable_operation_metadata_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/auth/security_token",
"$BUILD_DIR/mongo/db/auth/security_token_auth",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/write_block_bypass",
"$BUILD_DIR/mongo/rpc/metadata_impersonated_user",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
],
)
env.Library(
target="sharding_catalog_manager",
source=[

View File

@ -72,6 +72,32 @@ idl_generator(
],
)
mongo_cc_library(
name = "kill_sessions",
srcs = [
"kill_sessions.cpp",
"kill_sessions_common.cpp",
"session_killer.cpp",
":kill_sessions_gen",
],
hdrs = [
"kill_sessions.h",
"kill_sessions_common.h",
"kill_sessions_util.h",
"session_killer.h",
],
deps = [
":logical_session_id_helpers",
"//src/mongo/db:api_parameters",
"//src/mongo/db:server_base",
"//src/mongo/db/auth",
"//src/mongo/db/auth:authprivilege",
"//src/mongo/db/auth:user",
"//src/mongo/rpc:client_metadata",
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "internal_transactions_reap_service_gen",
src = "internal_transactions_reap_service.idl",
@ -96,12 +122,46 @@ mongo_cc_library(
deps = [
"//src/mongo:base",
"//src/mongo/crypto:sha256_block",
"//src/mongo/crypto:sha_block",
"//src/mongo/idl:idl_parser",
] + select({
"//bazel/config:ssl_enabled_linux": ["//src/mongo/crypto:sha_block_openssl"],
"//bazel/config:ssl_disabled_linux": ["//src/mongo/crypto:sha_block_tom"],
"@platforms//os:macos": ["//src/mongo/crypto:sha_block_apple"],
"@platforms//os:windows": ["//src/mongo/crypto:sha_block_windows"],
"//conditions:default": [],
}),
],
)
mongo_cc_library(
name = "session_catalog",
srcs = [
"session_catalog.cpp",
],
hdrs = [
"session.h",
"session_catalog.h",
],
deps = [
":kill_sessions",
":logical_session_id", # TODO(SERVER-93876): Remove.
":logical_session_id_helpers", # TODO(SERVER-93876): Remove.
"//src/mongo/db:internal_transactions_feature_flag", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context",
"//src/mongo/db/concurrency:lock_manager",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "sessions_collection",
srcs = [
"sessions_collection.cpp",
],
hdrs = [
"sessions_collection.h",
],
deps = [
":logical_session_id", # TODO(SERVER-93876): Remove.
":logical_session_id_helpers", # TODO(SERVER-93876): Remove.
"//src/mongo/client:clientdriver_minimal",
"//src/mongo/db:coll_mod_command_idl", # TODO(SERVER-93876): Remove.
"//src/mongo/db:index_commands_idl", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
],
)

View File

@ -3,42 +3,6 @@ Import("env")
env = env.Clone()
env.Library(
target="session_catalog",
source=[
"session_catalog.cpp",
],
LIBDEPS=[
"logical_session_id",
"logical_session_id_helpers",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/concurrency/lock_manager",
"$BUILD_DIR/mongo/db/internal_transactions_feature_flag",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
"$BUILD_DIR/mongo/util/fail_point",
"kill_sessions",
],
)
env.Library(
target="sessions_collection",
source=[
"sessions_collection.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/client/clientdriver_minimal",
"logical_session_id",
"logical_session_id_helpers",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/coll_mod_command_idl",
"$BUILD_DIR/mongo/db/index_commands_idl",
"$BUILD_DIR/mongo/db/server_base",
],
)
env.Library(
target="sessions_collection_mock",
source=[
@ -110,26 +74,6 @@ env.Library(
],
)
env.Library(
target="kill_sessions",
source=[
"kill_sessions.cpp",
"kill_sessions_gen.cpp",
"kill_sessions_common.cpp",
"session_killer.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/api_parameters",
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/auth/user",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/rpc/client_metadata",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
"logical_session_id_helpers",
],
)
env.Library(
target="kill_sessions_local",
source=[

View File

@ -38,6 +38,8 @@ mongo_cc_library(
"sorter_gen",
],
hdrs = [
"sorter.cpp", # Intentionally in hdrs.
"sorter.h",
"sorter_checksum_calculator.h",
],
deps = [

View File

@ -9,6 +9,39 @@ exports_files(
]),
)
mongo_cc_library(
name = "top",
srcs = [
"operation_latency_histogram.cpp",
"top.cpp",
],
hdrs = [
"operation_latency_histogram.h",
"top.h",
],
deps = [
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/query/query_stats",
],
)
mongo_cc_library(
name = "api_version_metrics",
srcs = [
"api_version_metrics.cpp",
],
hdrs = [
"api_version_metrics.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:shared_request_handling", # TODO(SERVER-93876): Remove.
"//src/mongo/db:validate_api_parameters",
"//src/mongo/rpc:client_metadata", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "read_concern_stats_gen",
src = "read_concern_stats.idl",

View File

@ -4,32 +4,6 @@ Import("env")
env = env.Clone()
env.Library(
target="top",
source=[
"top.cpp",
"operation_latency_histogram.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/query/query_stats/query_stats",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
],
)
env.Library(
target="api_version_metrics",
source=[
"api_version_metrics.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/shared_request_handling",
"$BUILD_DIR/mongo/db/validate_api_parameters",
"$BUILD_DIR/mongo/rpc/client_metadata",
],
)
env.Library(
target="change_collection_server_status",
source=[

View File

@ -9,6 +9,24 @@ exports_files(
]),
)
mongo_cc_library(
name = "bson_collection_catalog_entry",
srcs = [
"bson_collection_catalog_entry.cpp",
],
hdrs = [
"bson_collection_catalog_entry.h",
],
deps = [
"//src/mongo/db:common",
"//src/mongo/db:multitenancy", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/catalog:collection_options",
],
)
mongo_cc_library(
name = "recovery_unit_base",
srcs = [
@ -183,6 +201,24 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "storage_repair_observer",
srcs = [
"storage_repair_observer.cpp",
],
hdrs = [
"storage_repair_observer.h",
],
deps = [
":storage_file_util",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context",
"//src/mongo/db/repl:replica_set_messages", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:storage_interface",
"//src/mongo/db/storage:journal_flusher",
],
)
mongo_cc_library(
name = "duplicate_key_error_info",
srcs = [
@ -365,6 +401,7 @@ mongo_cc_library(
":storage_parameters_gen",
],
hdrs = [
"storage_engine_interface.h",
"storage_options.h",
],
deps = [
@ -372,6 +409,26 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "durable_catalog",
srcs = [
"durable_catalog.cpp",
"//src/mongo/db/catalog:import_options.h",
"//src/mongo/db/storage/kv:kv_engine.h",
],
hdrs = [
"durable_catalog.h",
],
deps = [
":bson_collection_catalog_entry",
":record_store_base",
":storage_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db:multitenancy",
"//src/mongo/db:server_base",
"//src/mongo/db/concurrency:lock_manager",
],
)
mongo_cc_library(
name = "storage_init_d",
srcs = [

View File

@ -31,23 +31,6 @@ ksdecode = env.Program(
],
)
env.Library(
target="bson_collection_catalog_entry",
source=[
"bson_collection_catalog_entry.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/catalog/collection_options",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/multitenancy",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_options",
"$BUILD_DIR/mongo/db/service_context",
],
)
env.Library(
target="oplog_cap_maintainer_thread",
source=[
@ -203,21 +186,6 @@ env.Library(
],
)
env.Library(
target="storage_repair_observer",
source=[
"storage_repair_observer.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/repl/replica_set_messages",
"$BUILD_DIR/mongo/db/repl/storage_interface",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/db/storage/journal_flusher",
"storage_file_util",
],
)
env.Benchmark(
target="storage_key_string_bm",
source=[
@ -321,23 +289,6 @@ env.CppUnitTest(
],
)
env.Library(
target="durable_catalog",
source=[
"durable_catalog.cpp",
],
LIBDEPS=[
"bson_collection_catalog_entry",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/concurrency/lock_manager",
"$BUILD_DIR/mongo/db/multitenancy",
"$BUILD_DIR/mongo/db/server_base",
"record_store_base",
"storage_options",
],
)
env.Library(
target="storage_util",
source=[

View File

@ -17,6 +17,42 @@ idl_generator(
],
)
mongo_cc_library(
name = "timeseries_options",
srcs = [
"timeseries_gen",
"timeseries_global_options.cpp",
"timeseries_options.cpp",
],
hdrs = [
"timeseries_global_options.h",
"timeseries_options.h",
],
deps = [
"//src/mongo/db:server_base",
"//src/mongo/db/query/query_shape", # TODO(SERVER-93876): Remove.
"//src/mongo/db/storage:storage_options",
"//src/mongo/util:processinfo",
],
)
mongo_cc_library(
name = "timeseries_extended_range",
srcs = [
"timeseries_constants.h",
"timeseries_extended_range.cpp",
"//src/mongo/db/commands:create_command_validation.h",
],
hdrs = [
"timeseries_extended_range.h",
],
deps = [
":timeseries_options", # TODO(SERVER-93876): Remove.
"//src/mongo:base",
"//src/mongo/db/catalog:index_catalog",
],
)
mongo_cc_library(
name = "timeseries_metadata",
srcs = [

View File

@ -14,21 +14,6 @@ env.SConscript(
],
)
env.Library(
target="timeseries_options",
source=[
"timeseries_gen.cpp",
"timeseries_global_options.cpp",
"timeseries_options.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/query/query_shape/query_shape",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/storage/storage_options",
"$BUILD_DIR/mongo/util/processinfo",
],
)
env.Library(
target="catalog_helper",
source=[
@ -110,18 +95,6 @@ env.Library(
],
)
env.Library(
target="timeseries_extended_range",
source=[
"timeseries_extended_range.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/catalog/index_catalog",
"timeseries_options",
],
)
env.CppUnitTest(
target="db_timeseries_test",
source=[

View File

@ -9,6 +9,21 @@ exports_files(
]),
)
mongo_cc_library(
name = "transaction_operations",
srcs = [
"transaction_operations.cpp",
],
hdrs = [
"transaction_operations.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db/repl:oplog_entry",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "transaction_participant_gen",
src = "transaction_participant.idl",

View File

@ -51,18 +51,6 @@ env.Library(
],
)
env.Library(
target="transaction_operations",
source=[
"transaction_operations.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/repl/oplog_entry",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="transaction_api",
source=[

View File

@ -9,6 +9,23 @@ exports_files(
]),
)
mongo_cc_library(
name = "pattern_cmp",
srcs = [
"pattern_cmp.cpp",
],
hdrs = [
"pattern_cmp.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/bson/mutable:mutable_bson",
"//src/mongo/db:common",
"//src/mongo/db/exec/document_value",
"//src/mongo/db/query/bson:dotted_path_support",
],
)
mongo_cc_library(
name = "update_document_diff",
srcs = [

View File

@ -4,22 +4,6 @@ Import("env")
env = env.Clone()
env.Library(
target="pattern_cmp",
source=[
"pattern_cmp.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/bson/mutable/mutable_bson",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/exec/document_value/document_value",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/query/bson/dotted_path_support",
],
)
env.Library(
target="update_common",
source=[

View File

@ -9,6 +9,146 @@ exports_files(
]),
)
mongo_cc_library(
name = "remote_command",
srcs = [
"remote_command_request.cpp",
"remote_command_response.cpp",
],
hdrs = [
"remote_command_request.h",
"remote_command_response.h",
],
deps = [
"//src/mongo/db:api_parameters", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:security_token_auth", # TODO(SERVER-93876): Remove.
"//src/mongo/rpc:metadata", # TODO(SERVER-93876): Remove.
"//src/mongo/s:mongos_server_parameters", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point",
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "task_executor_interface",
srcs = [
"task_executor.cpp",
],
hdrs = [
"task_executor.h",
],
deps = [
":remote_command",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "async_multicaster",
srcs = [
"async_multicaster.cpp",
],
hdrs = [
"async_multicaster.h",
],
deps = [
":remote_command",
":task_executor_interface", # TODO(SERVER-93876): Remove.
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "scoped_task_executor",
srcs = [
"scoped_task_executor.cpp",
],
hdrs = [
"scoped_task_executor.h",
],
deps = [
":task_executor_interface",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "network_interface",
srcs = [
"network_interface.cpp",
],
hdrs = [
"network_interface.h",
],
deps = [
":task_executor_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point",
],
)
mongo_cc_library(
name = "thread_pool_task_executor",
srcs = [
"thread_pool_task_executor.cpp",
],
hdrs = [
"thread_pool_task_executor.h",
],
deps = [
":network_interface", # TODO(SERVER-93876): Remove.
":task_executor_interface",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "inline_executor",
srcs = [
"inline_executor.cpp",
"//src/mongo/util:producer_consumer_queue.h",
],
hdrs = [
"inline_executor.h",
],
deps = [
":task_executor_interface",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "pinned_connection_task_executor",
srcs = [
"pinned_connection_task_executor.cpp",
],
hdrs = [
"pinned_connection_task_executor.h",
],
deps = [
"scoped_task_executor",
"task_executor_interface", # TODO(SERVER-93876): Remove.
"//src/mongo/client:async_client",
],
)
mongo_cc_library(
name = "pinned_connection_task_executor_factory",
srcs = [
"pinned_connection_task_executor_factory.cpp",
],
hdrs = [
"pinned_connection_task_executor_factory.h",
],
deps = [
":network_interface", # TODO(SERVER-93876): Remove.
":pinned_connection_task_executor",
":task_executor_interface", # TODO(SERVER-93876): Remove.
":thread_pool_task_executor",
],
)
mongo_cc_library(
name = "egress_connection_closer_manager",
srcs = [
@ -49,6 +189,22 @@ idl_generator(
src = "task_executor_pool_parameters.idl",
)
mongo_cc_library(
name = "task_executor_pool",
srcs = [
"task_executor_pool.cpp",
"task_executor_pool_parameters_gen",
],
hdrs = [
"task_executor_pool.h",
],
deps = [
":task_executor_interface",
"//src/mongo/db:server_base",
"//src/mongo/util:processinfo", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "async_request_executor",
srcs = [
@ -217,3 +373,35 @@ mongo_cc_library(
"//src/mongo/util/net:network",
],
)
mongo_cc_library(
name = "connection_pool_executor",
srcs = [
"connection_pool.cpp",
],
hdrs = [
"connection_pool.h",
],
deps = [
":connection_pool_stats",
":egress_connection_closer_manager",
":remote_command", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "connection_pool_controllers",
srcs = [
"connection_pool_controllers.cpp",
],
hdrs = [
"connection_pool_controllers.h",
],
deps = [
":connection_pool_executor",
],
)

View File

@ -15,72 +15,6 @@ env.Library(
],
)
env.Library(
target="remote_command",
source=[
"remote_command_request.cpp",
"remote_command_response.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/api_parameters",
"$BUILD_DIR/mongo/rpc/metadata",
"$BUILD_DIR/mongo/s/mongos_server_parameters",
"$BUILD_DIR/mongo/util/net/network",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/security_token_auth",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="async_multicaster",
source=[
"async_multicaster.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/net/network",
"remote_command",
"task_executor_interface",
],
)
env.Library(
target="task_executor_interface",
source=[
"task_executor.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"remote_command",
],
)
env.Library(
target="scoped_task_executor",
source=[
"scoped_task_executor.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/util/fail_point",
"task_executor_interface",
],
)
env.Library(
target="network_interface",
source=[
"network_interface.cpp",
],
LIBDEPS=[
"task_executor_interface",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="network_interface_mock",
source=[
@ -101,34 +35,6 @@ env.Library(
],
)
env.Library(
target="connection_pool_executor",
source=[
"connection_pool.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/util/net/network",
"connection_pool_stats",
"remote_command",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/util/fail_point",
"egress_connection_closer_manager",
],
)
env.Library(
target="connection_pool_controllers",
source=[
"connection_pool_controllers.cpp",
],
LIBDEPS=[
"connection_pool_executor",
],
)
env.Library(
target="network_test_env",
source=[
@ -210,35 +116,6 @@ env.Library(
],
)
env.Library(
target="thread_pool_task_executor",
source=[
"thread_pool_task_executor.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/fail_point",
"task_executor_interface",
],
LIBDEPS_PRIVATE=[
"network_interface",
],
)
env.Library(
target="pinned_connection_task_executor",
source=[
"pinned_connection_task_executor.cpp",
],
LIBDEPS=[
"scoped_task_executor",
"task_executor_interface",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/client/async_client",
],
)
env.Library(
target="async_rpc",
source=[
@ -268,21 +145,6 @@ env.Library(
],
)
env.Library(
target="task_executor_pool",
source=[
"task_executor_pool.cpp",
"task_executor_pool_parameters_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/util/processinfo",
"task_executor_interface",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
],
)
env.Library(
target="task_executor_cursor",
source=[
@ -300,32 +162,6 @@ env.Library(
],
)
env.Library(
target="pinned_connection_task_executor_factory",
source=[
"pinned_connection_task_executor_factory.cpp",
],
LIBDEPS=[
"task_executor_interface",
],
LIBDEPS_PRIVATE=[
"network_interface",
"pinned_connection_task_executor",
"thread_pool_task_executor",
],
)
env.Library(
target="inline_executor",
source=[
"inline_executor.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"task_executor_interface",
],
)
env.CppUnitTest(
target="executor_test",
source=[

View File

@ -9,6 +9,32 @@ exports_files(
]),
)
mongo_cc_library(
name = "message",
srcs = [
"message.cpp",
"op_msg.cpp",
],
hdrs = [
"message.h",
"op_msg.h",
],
deps = [
"//src/mongo/bson:bson_validate", # TODO(SERVER-93876): Remove.
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:multitenancy",
"//src/mongo/db:server_base",
"//src/mongo/db:wire_version", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:security_token_auth",
"//src/mongo/db/query/bson:dotted_path_support",
] + select({
"//bazel/config:use_wiredtiger_enabled": [
"//src/third_party/wiredtiger:wiredtiger_checksum",
],
"//conditions:default": [],
}),
)
idl_generator(
name = "topology_version_gen",
src = "topology_version.idl",
@ -17,6 +43,118 @@ idl_generator(
],
)
mongo_cc_library(
name = "client_metadata",
srcs = [
"//src/mongo/rpc/metadata:client_metadata.cpp",
"//src/mongo/rpc/metadata:client_metadata_gen",
],
hdrs = [
"//src/mongo/rpc/metadata:client_metadata.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:server_base",
"//src/mongo/db:service_context",
"//src/mongo/transport:message_compressor", # TODO(SERVER-93876): Remove.
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
"//src/mongo/util:processinfo", # TODO(SERVER-93876): Remove.
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "metadata",
srcs = [
"metadata.cpp",
"topology_version_gen",
"//src/mongo/rpc/metadata:egress_metadata_hook_list.cpp",
"//src/mongo/rpc/metadata:oplog_query_metadata.cpp",
"//src/mongo/rpc/metadata:repl_set_metadata.cpp",
],
hdrs = [
"metadata.h",
"//src/mongo/rpc/metadata:egress_metadata_hook_list.h",
"//src/mongo/rpc/metadata:metadata_hook.h",
"//src/mongo/rpc/metadata:oplog_query_metadata.h",
"//src/mongo/rpc/metadata:repl_set_metadata.h",
],
deps = [
":client_metadata",
":message", # TODO(SERVER-93876): Remove.
":metadata_impersonated_user",
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/client:read_preference", # TODO(SERVER-93876): Remove.
"//src/mongo/db:multitenancy", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:signed_logical_time", # TODO(SERVER-93876): Remove.
"//src/mongo/db:vector_clock",
"//src/mongo/db:write_block_bypass",
"//src/mongo/db/auth:security_token", # TODO(SERVER-93876): Remove.
"//src/mongo/db/repl:optime", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util/concurrency:spin_lock", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "object_check_gen",
src = "object_check.idl",
)
mongo_cc_library(
name = "rpc",
srcs = [
"check_allowed_op_query_cmd.cpp",
"factory.cpp",
"legacy_reply.cpp",
"legacy_reply_builder.cpp",
"legacy_request.cpp",
"object_check.cpp",
"reply_builder_interface.cpp",
":object_check_gen",
],
hdrs = [
"check_allowed_op_query_cmd.h",
"factory.h",
"legacy_reply.h",
"legacy_reply_builder.h",
"legacy_request.h",
"object_check.h",
"op_msg_rpc_impls.h",
"reply_builder_interface.h",
],
deps = [
":message",
":metadata",
":rewrite_state_change_errors", # TODO(SERVER-93876): Remove.
"//src/mongo/db:dbmessage",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db/commands:test_commands_enabled", # TODO(SERVER-93876): Remove.
"//src/mongo/db/stats:counters", # TODO(SERVER-93876): Remove.
"//src/mongo/s:common_s", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:network", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "metadata_impersonated_user",
srcs = [
"//src/mongo/rpc/metadata:impersonated_user_metadata.cpp",
],
hdrs = [
"//src/mongo/rpc/metadata:impersonated_user_metadata.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_options", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth",
],
)
idl_generator(
name = "write_concern_error_gen",
src = "write_concern_error.idl",
@ -25,16 +163,31 @@ idl_generator(
],
)
idl_generator(
name = "object_check_gen",
src = "object_check.idl",
)
idl_generator(
name = "rewrite_state_change_errors_server_parameter_gen",
src = "rewrite_state_change_errors_server_parameter.idl",
)
mongo_cc_library(
name = "rewrite_state_change_errors",
srcs = [
"rewrite_state_change_errors.cpp",
"rewrite_state_change_errors_server_parameter_gen",
],
hdrs = [
"rewrite_state_change_errors.h",
],
deps = [
":message", # TODO(SERVER-93876): Remove.
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/bson/mutable:mutable_bson",
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/util:pcre_wrapper",
],
)
mongo_cc_library(
name = "command_status",
srcs = [

View File

@ -6,76 +6,6 @@ Import("get_option")
env = env.Clone()
protoEnv = env.Clone()
if wiredtiger:
protoEnv.InjectThirdParty(libraries=["wiredtiger"])
protoEnv.Library(
target=[
"message",
],
source=[
"message.cpp",
"op_msg.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/multitenancy",
"$BUILD_DIR/mongo/db/wire_version",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/bson/bson_validate",
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/auth/security_token_auth",
"$BUILD_DIR/mongo/db/query/bson/dotted_path_support",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/third_party/wiredtiger/wiredtiger_checksum" if wiredtiger else [],
],
)
env.Library(
target="rpc",
source=[
"check_allowed_op_query_cmd.cpp",
"factory.cpp",
"legacy_reply.cpp",
"legacy_reply_builder.cpp",
"legacy_request.cpp",
"object_check.cpp",
"object_check_gen.cpp",
"reply_builder_interface.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/dbmessage",
"$BUILD_DIR/mongo/s/common_s",
"$BUILD_DIR/mongo/util/net/network",
"message",
"metadata",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/stats/counters",
"rewrite_state_change_errors",
],
)
env.Library(
target="rewrite_state_change_errors",
source=[
"rewrite_state_change_errors.cpp",
"rewrite_state_change_errors_server_parameter_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/bson/mutable/mutable_bson",
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/pcre_wrapper",
"message",
],
)
env.CppLibfuzzerTest(
target="protocol_fuzzer",
source=[
@ -90,73 +20,6 @@ env.CppLibfuzzerTest(
],
)
env.Library(
target="metadata",
source=[
"metadata.cpp",
"metadata/egress_metadata_hook_list.cpp",
"metadata/repl_set_metadata.cpp",
"metadata/oplog_query_metadata.cpp",
"topology_version_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/client/read_preference",
"$BUILD_DIR/mongo/db/auth/security_token",
"$BUILD_DIR/mongo/db/repl/optime",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/signed_logical_time",
"$BUILD_DIR/mongo/db/write_block_bypass",
"client_metadata",
"message",
"metadata_impersonated_user",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/multitenancy",
"$BUILD_DIR/mongo/db/vector_clock",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target=[
"metadata_impersonated_user",
],
source=[
"metadata/impersonated_user_metadata.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/service_context",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/server_options",
],
)
env.Library(
target="client_metadata",
source=[
"metadata/client_metadata.cpp",
"metadata/client_metadata_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/transport/message_compressor",
"$BUILD_DIR/mongo/transport/transport_layer_common",
"$BUILD_DIR/mongo/util/net/network",
"$BUILD_DIR/mongo/util/processinfo",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
],
)
if wiredtiger:
env.CppUnitTest(
target="rpc_test",

View File

@ -207,6 +207,193 @@ idl_generator(
],
)
mongo_cc_library(
name = "common_s",
srcs = [
"//src/mongo/s/catalog:type_changelog.cpp",
"//src/mongo/s/catalog:type_chunk.cpp",
"//src/mongo/s/catalog:type_chunk_base_gen",
"//src/mongo/s/catalog:type_collection.cpp",
"//src/mongo/s/catalog:type_collection_gen",
"//src/mongo/s/catalog:type_config_version.cpp",
"//src/mongo/s/catalog:type_database_gen",
"//src/mongo/s/catalog:type_index_catalog.cpp",
"//src/mongo/s/catalog:type_index_catalog_gen",
"//src/mongo/s/catalog:type_mongos.cpp",
"//src/mongo/s/catalog:type_namespace_placement_gen",
"//src/mongo/s/catalog:type_remove_shard_event_gen",
"//src/mongo/s/catalog:type_shard.cpp",
"//src/mongo/s/catalog:type_tags.cpp",
"//src/mongo/s/migration_blocking_operation:migration_blocking_operation_cluster_parameters_gen",
"//src/mongo/s/migration_blocking_operation:migration_blocking_operation_feature_flags_gen",
"//src/mongo/s/request_types:abort_reshard_collection_gen",
"//src/mongo/s/request_types:add_shard_request_type.cpp",
"//src/mongo/s/request_types:add_shard_to_zone_request_type.cpp",
"//src/mongo/s/request_types:auto_split_vector_gen",
"//src/mongo/s/request_types:balancer_collection_status_gen",
"//src/mongo/s/request_types:cleanup_reshard_collection_gen",
"//src/mongo/s/request_types:clone_catalog_data_gen",
"//src/mongo/s/request_types:cluster_commands_without_shard_key_gen",
"//src/mongo/s/request_types:commit_reshard_collection_gen",
"//src/mongo/s/request_types:configure_collection_balancing_gen",
"//src/mongo/s/request_types:coordinate_multi_update_gen",
"//src/mongo/s/request_types:drop_collection_if_uuid_not_matching_gen",
"//src/mongo/s/request_types:ensure_chunk_version_is_greater_than_gen",
"//src/mongo/s/request_types:flush_database_cache_updates_gen",
"//src/mongo/s/request_types:flush_resharding_state_change_gen",
"//src/mongo/s/request_types:flush_routing_table_cache_updates_gen",
"//src/mongo/s/request_types:get_database_version_gen",
"//src/mongo/s/request_types:get_stats_for_balancing_gen",
"//src/mongo/s/request_types:merge_chunk_request_gen",
"//src/mongo/s/request_types:migration_blocking_operation_gen",
"//src/mongo/s/request_types:migration_secondary_throttle_options.cpp",
"//src/mongo/s/request_types:move_primary_gen",
"//src/mongo/s/request_types:move_range_request_gen",
"//src/mongo/s/request_types:placement_history_commands_gen",
"//src/mongo/s/request_types:remove_shard_from_zone_request_type.cpp",
"//src/mongo/s/request_types:remove_shard_gen",
"//src/mongo/s/request_types:reshard_collection_gen",
"//src/mongo/s/request_types:resharding_operation_time_gen",
"//src/mongo/s/request_types:set_allow_migrations_gen",
"//src/mongo/s/request_types:sharded_ddl_commands_gen",
"//src/mongo/s/request_types:shardsvr_join_ddl_coordinators_request_gen",
"//src/mongo/s/request_types:shardsvr_join_migrations_request_gen",
"//src/mongo/s/request_types:transition_from_dedicated_config_server_gen",
"//src/mongo/s/request_types:transition_to_dedicated_config_server_gen",
"//src/mongo/s/request_types:update_zone_key_range_request_type.cpp",
"//src/mongo/s/request_types:wait_for_fail_point_gen",
"//src/mongo/s/resharding:common_types_gen",
"//src/mongo/s/resharding:resharding_coordinator_service_conflicting_op_in_progress_info.cpp",
"//src/mongo/s/resharding:resharding_feature_flag_gen",
"//src/mongo/s/resharding:resume_token_gen",
"//src/mongo/s/resharding:type_collection_fields_gen",
"analyze_shard_key_cmd_gen",
"cannot_implicitly_create_collection_info.cpp",
"check_metadata_consistency_gen",
"chunk.cpp",
"chunk_manager.cpp",
"configure_query_analyzer_cmd_gen",
"error_status_gen",
"mongod_and_mongos_server_parameters_gen",
"refresh_query_analyzer_configuration_cmd_gen",
"shard_cannot_refresh_due_to_locks_held_exception.cpp",
"shard_key_pattern.cpp",
"shard_version_factory.cpp",
"sharding_cluster_parameters_gen",
"sharding_feature_flags.cpp",
"sharding_feature_flags_gen",
"stale_exception.cpp",
"transaction_participant_failed_unyield_exception.cpp",
"type_collection_common_types_gen",
"would_change_owning_shard_exception.cpp",
# TODO(SERVER-9414): Clean this up.
"//src/mongo/db/repl:primary_only_service.h",
"//src/mongo/db/s:sharding_ddl_util.h",
"//src/mongo/db/catalog:drop_collection.h",
"//src/mongo/db/transaction:transaction_api.h",
"//src/mongo/executor:inline_executor.h",
"//src/mongo/util:producer_consumer_queue.h",
"//src/mongo/executor:async_rpc.h",
"//src/mongo/client:async_remote_command_targeter_adapter.h",
"//src/mongo/client:remote_command_targeter.h",
"//src/mongo/executor:async_rpc_targeter.h",
"//src/mongo/client:remote_command_targeter_factory.h",
"//src/mongo/client:remote_command_targeter_factory_impl.h",
"//src/mongo/db/repl:optime_with.h",
"//src/mongo/db/session:kill_sessions.h",
"//src/mongo/db/session:kill_sessions_util.h",
"//src/mongo/db/session:session.h",
"//src/mongo/db/session:session_catalog.h",
"//src/mongo/db/session:session_killer.h",
"//src/mongo/executor:async_rpc_retry_policy.h",
"//src/mongo/executor:async_rpc_util.h",
"//src/mongo/executor:task_executor_pool.h",
"//src/mongo/rpc/metadata:impersonated_user_metadata.h",
"//src/mongo/s/client:shard.h",
"//src/mongo/s/client:shard_factory.h",
"//src/mongo/s/client:shard_registry.h",
"//src/mongo/s/write_ops:batched_command_response.h",
"//src/mongo/s/write_ops:batched_upsert_detail.h",
"//src/mongo/s:async_requests_sender.h",
"//src/mongo/s:async_rpc_shard_retry_policy.h",
"//src/mongo/s:async_rpc_shard_targeter.h",
"//src/mongo/s:catalog_cache.h",
"//src/mongo/s:catalog_cache_loader.h",
"//src/mongo/s:grid.h",
"//src/mongo/s:transaction_router.h",
"//src/mongo/util:future_util.h",
],
hdrs = [
"//src/mongo/db/s:auto_split_vector.h",
"//src/mongo/s/catalog:type_changelog.h",
"//src/mongo/s/catalog:type_chunk.h",
"//src/mongo/s/catalog:type_collection.h",
"//src/mongo/s/catalog:type_config_version.h",
"//src/mongo/s/catalog:type_index_catalog.h",
"//src/mongo/s/catalog:type_mongos.h",
"//src/mongo/s/catalog:type_shard.h",
"//src/mongo/s/catalog:type_tags.h",
"//src/mongo/s/request_types:merge_chunk_request_valid.h",
"//src/mongo/s/request_types:add_shard_request_type.h",
"//src/mongo/s/request_types:add_shard_to_zone_request_type.h",
"//src/mongo/s/request_types:migration_secondary_throttle_options.h",
"//src/mongo/s/request_types:remove_shard_from_zone_request_type.h",
"//src/mongo/s/request_types:update_zone_key_range_request_type.h",
"//src/mongo/s/resharding:resharding_coordinator_service_conflicting_op_in_progress_info.h",
"cannot_implicitly_create_collection_info.h",
"chunk.h",
"chunk_manager.h",
"shard_cannot_refresh_due_to_locks_held_exception.h",
"shard_key_pattern.h",
"shard_version_factory.h",
"stale_exception.h",
"transaction_participant_failed_unyield_exception.h",
"would_change_owning_shard_exception.h",
# Header-only.
"//src/mongo/db/commands:txn_cmds_gen",
"//src/mongo/db/s:forwardable_operation_metadata_gen",
"//src/mongo/db/session:kill_sessions_gen",
"//src/mongo/s/client:shard_gen",
],
header_deps = [
"//src/mongo/db/s:forwardable_operation_metadata",
"//src/mongo/db:write_block_bypass",
"//src/mongo/db/stats:transaction_stats",
"//src/mongo/s/catalog:sharding_catalog_client",
"//src/mongo/util/concurrency:thread_pool",
":mongos_server_parameters",
],
deps = [
"//src/mongo/client:connection_string",
"//src/mongo/db/commands:create_command",
"//src/mongo/db/commands:set_user_write_block_mode_idl",
"//src/mongo/db/matcher:path",
"//src/mongo/db:coll_mod_command_idl",
"//src/mongo/db:index_commands_idl",
"//src/mongo/db:metadata_consistency_types_idl",
"//src/mongo/db:mongohasher",
"//src/mongo/rpc:command_status",
"//src/mongo/db:server_feature_flags",
":analyze_shard_key_common",
# TODO(SERVER-93876): Remove.
"//src/mongo/client:read_preference",
"//src/mongo/db/auth:authprivilege",
"//src/mongo/db/catalog:collection_options",
"//src/mongo/db/commands:cluster_server_parameter_cmds_idl",
"//src/mongo/db/query/query_shape",
"//src/mongo/db/storage:key_string",
"//src/mongo/db/timeseries:timeseries_options",
"//src/mongo/db:common",
"//src/mongo/db:server_base",
"//src/mongo/executor:async_rpc_error_info",
"//src/mongo/rpc:message",
"//src/mongo/util:caching",
],
)
idl_generator(
name = "mongos_server_parameters_gen",
src = "mongos_server_parameters.idl",
@ -215,6 +402,26 @@ idl_generator(
],
)
mongo_cc_library(
name = "mongos_topology_coordinator",
srcs = [
"mongos_hello_response.cpp",
"mongos_topology_coordinator.cpp",
],
hdrs = [
"mongos_hello_response.h",
"mongos_topology_coordinator.h",
],
deps = [
"//src/mongo/bson/util:bson_extract", # TODO(SERVER-93876): Remove.
"//src/mongo/db:common", # TODO(SERVER-93876): Remove.
"//src/mongo/db:server_base",
"//src/mongo/rpc:metadata",
"//src/mongo/transport:transport_layer_common", # TODO(SERVER-93876): Remove.
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "mongos_options_gen",
src = "mongos_options.idl",

View File

@ -180,115 +180,6 @@ env.Library(
],
)
env.Library(
target="common_s",
source=[
"analyze_shard_key_cmd_gen.cpp",
"cannot_implicitly_create_collection_info.cpp",
"catalog/type_changelog.cpp",
"catalog/type_chunk.cpp",
"catalog/type_chunk_base_gen.cpp",
"catalog/type_collection.cpp",
"catalog/type_collection_gen.cpp",
"catalog/type_config_version.cpp",
"catalog/type_database_gen.cpp",
"catalog/type_index_catalog.cpp",
"catalog/type_index_catalog_gen.cpp",
"catalog/type_mongos.cpp",
"catalog/type_namespace_placement_gen.cpp",
"catalog/type_remove_shard_event_gen.cpp",
"catalog/type_shard.cpp",
"catalog/type_tags.cpp",
"check_metadata_consistency_gen.cpp",
"chunk.cpp",
"chunk_manager.cpp",
"configure_query_analyzer_cmd_gen.cpp",
"error_status_gen.cpp",
"migration_blocking_operation/migration_blocking_operation_cluster_parameters_gen.cpp",
"migration_blocking_operation/migration_blocking_operation_feature_flags_gen.cpp",
"mongod_and_mongos_server_parameters_gen.cpp",
"refresh_query_analyzer_configuration_cmd_gen.cpp",
"request_types/abort_reshard_collection_gen.cpp",
"request_types/add_shard_request_type.cpp",
"request_types/add_shard_to_zone_request_type.cpp",
"request_types/auto_split_vector_gen.cpp",
"request_types/balancer_collection_status_gen.cpp",
"request_types/cleanup_reshard_collection_gen.cpp",
"request_types/clone_catalog_data_gen.cpp",
"request_types/cluster_commands_without_shard_key_gen.cpp",
"request_types/commit_reshard_collection_gen.cpp",
"request_types/configure_collection_balancing_gen.cpp",
"request_types/coordinate_multi_update_gen.cpp",
"request_types/drop_collection_if_uuid_not_matching_gen.cpp",
"request_types/ensure_chunk_version_is_greater_than_gen.cpp",
"request_types/flush_database_cache_updates_gen.cpp",
"request_types/flush_resharding_state_change_gen.cpp",
"request_types/flush_routing_table_cache_updates_gen.cpp",
"request_types/get_database_version_gen.cpp",
"request_types/get_stats_for_balancing_gen.cpp",
"request_types/merge_chunk_request_gen.cpp",
"request_types/migration_blocking_operation_gen.cpp",
"request_types/migration_secondary_throttle_options.cpp",
"request_types/move_primary_gen.cpp",
"request_types/move_range_request_gen.cpp",
"request_types/placement_history_commands_gen.cpp",
"request_types/remove_shard_gen.cpp",
"request_types/remove_shard_from_zone_request_type.cpp",
"request_types/reshard_collection_gen.cpp",
"request_types/resharding_operation_time_gen.cpp",
"request_types/set_allow_migrations_gen.cpp",
"request_types/sharded_ddl_commands_gen.cpp",
"request_types/shardsvr_join_migrations_request_gen.cpp",
"request_types/shardsvr_join_ddl_coordinators_request_gen.cpp",
"request_types/transition_from_dedicated_config_server_gen.cpp",
"request_types/transition_to_dedicated_config_server_gen.cpp",
"request_types/update_zone_key_range_request_type.cpp",
"request_types/wait_for_fail_point_gen.cpp",
"resharding/common_types_gen.cpp",
"resharding/resharding_coordinator_service_conflicting_op_in_progress_info.cpp",
"resharding/resharding_feature_flag_gen.cpp",
"resharding/resume_token_gen.cpp",
"resharding/type_collection_fields_gen.cpp",
"shard_cannot_refresh_due_to_locks_held_exception.cpp",
"shard_key_pattern.cpp",
"shard_version_factory.cpp",
"sharding_cluster_parameters_gen.cpp",
"sharding_feature_flags.cpp",
"sharding_feature_flags_gen.cpp",
"stale_exception.cpp",
"type_collection_common_types_gen.cpp",
"transaction_participant_failed_unyield_exception.cpp",
"would_change_owning_shard_exception.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/server_base",
"analyze_shard_key_common",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/client/connection_string",
"$BUILD_DIR/mongo/client/read_preference",
"$BUILD_DIR/mongo/db/auth/authprivilege",
"$BUILD_DIR/mongo/db/catalog/collection_options",
"$BUILD_DIR/mongo/db/coll_mod_command_idl",
"$BUILD_DIR/mongo/db/commands/cluster_server_parameter_cmds_idl",
"$BUILD_DIR/mongo/db/commands/create_command",
"$BUILD_DIR/mongo/db/commands/set_user_write_block_mode_idl",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/index_commands_idl",
"$BUILD_DIR/mongo/db/matcher/path",
"$BUILD_DIR/mongo/db/metadata_consistency_types_idl",
"$BUILD_DIR/mongo/db/mongohasher",
"$BUILD_DIR/mongo/db/query/query_shape/query_shape",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/db/storage/key_string",
"$BUILD_DIR/mongo/db/timeseries/timeseries_options",
"$BUILD_DIR/mongo/executor/async_rpc_error_info",
"$BUILD_DIR/mongo/rpc/command_status",
"$BUILD_DIR/mongo/rpc/message",
"$BUILD_DIR/mongo/util/caching",
],
)
env.Library(
target="sharding_task_executor",
source=[
@ -344,22 +235,6 @@ env.Library(
],
)
env.Library(
target="mongos_topology_coordinator",
source=[
"mongos_hello_response.cpp",
"mongos_topology_coordinator.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/bson/util/bson_extract",
"$BUILD_DIR/mongo/db/common",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/rpc/metadata",
"$BUILD_DIR/mongo/transport/transport_layer_common",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="sessions_collection_sharded",
source=[

View File

@ -13,3 +13,13 @@ idl_generator(
name = "cluster_query_knobs_gen",
src = "cluster_query_knobs.idl",
)
mongo_cc_library(
name = "cluster_query_knobs",
srcs = [
":cluster_query_knobs_gen",
],
deps = [
"//src/mongo/db:server_base",
],
)

View File

@ -15,15 +15,6 @@ env.SConscript(
],
)
env.Library(
target="cluster_query_knobs",
source=[
"cluster_query_knobs_gen.cpp",
],
LIBDEPS=[],
LIBDEPS_PRIVATE=["$BUILD_DIR/mongo/db/server_base"],
)
env.Library(
target="mongos_docs_needed_bounds",
source=[

View File

@ -9,11 +9,6 @@ exports_files(
]),
)
idl_generator(
name = "deadline_monitor_gen",
src = "deadline_monitor.idl",
)
mongo_cc_library(
name = "bson_template_evaluator",
srcs = [
@ -29,3 +24,42 @@ mongo_cc_library(
"//src/mongo:base",
],
)
idl_generator(
name = "deadline_monitor_gen",
src = "deadline_monitor.idl",
)
mongo_cc_library(
name = "scripting_common",
srcs = [
"dbdirectclient_factory.cpp",
"deadline_monitor.cpp",
"engine.cpp",
"jsexception.cpp",
"utils.cpp",
":deadline_monitor_gen",
],
hdrs = [
"dbdirectclient_factory.h",
"deadline_monitor.h",
"engine.h",
"jsexception.h",
],
copts = select({
"@platforms//os:windows": [],
"//conditions:default": [
# TODO(SERVER-77205): Review and Possibly Remove '-Wno-deprecated'
# After Mozjs Update
"-Wno-deprecated",
],
}),
deps = [
":bson_template_evaluator", # TODO(SERVER-93876): Remove.
"//src/mongo/client:clientdriver_minimal",
"//src/mongo/db:server_base",
"//src/mongo/shell:mongojs",
"//src/mongo/util:fail_point", # TODO(SERVER-93876): Remove.
"//src/mongo/util:md5", # TODO(SERVER-93876): Remove.
],
)

View File

@ -9,38 +9,6 @@ Import(
]
)
scripting_common_env = env.Clone()
# TODO(SERVER-77205): Review and Possibly Remove '-Wno-deprecated' After Mozjs Update
scripting_common_env.Append(
CXXFLAGS=[]
if scripting_common_env.TargetOSIs("windows")
else [
"-Wno-deprecated",
],
)
scripting_common_env.Library(
target="scripting_common",
source=[
"deadline_monitor.cpp",
"deadline_monitor_gen.cpp",
"dbdirectclient_factory.cpp",
"engine.cpp",
"jsexception.cpp",
"utils.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/client/clientdriver_minimal",
"$BUILD_DIR/mongo/shell/mongojs",
"$BUILD_DIR/mongo/util/md5",
"bson_template_evaluator",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/fail_point",
],
)
env.Library(
target="scripting_none",
source=[

View File

@ -11,6 +11,24 @@ exports_files(
]),
)
mongo_cc_library(
name = "benchrun",
srcs = [
"bench.cpp",
],
hdrs = [
"bench.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/client:clientdriver_minimal",
"//src/mongo/db/session:logical_session_id", # TODO(SERVER-93876): Remove.
"//src/mongo/scripting:bson_template_evaluator",
"//src/mongo/util:pcre_util",
"//src/mongo/util:pcre_wrapper", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "program_runner",
srcs = [
@ -39,6 +57,30 @@ mongo_cc_library(
],
)
mongo_cc_library(
name = "shell_options_storage",
srcs = [
"shell_options_storage.cpp",
],
hdrs = [
"shell_options.h",
],
copts = select({
"@platforms//os:windows": [
# See the /Zc:preprocessor comment in third_party/mozjs/SConscript
"/Zc:preprocessor",
"/wd5104",
"/wd5105",
],
"//conditions:default": [],
}),
deps = [
"//src/mongo:base",
"//src/mongo/client:connection_string",
"//src/mongo/util/cmdline_utils",
],
)
idl_generator(
name = "shell_options_gen",
src = "shell_options.idl",
@ -63,6 +105,34 @@ idl_generator(
],
)
mongo_cc_library(
name = "kms_idl",
srcs = [
":kms_gen",
],
deps = [
"//src/mongo/db:server_base",
],
)
mongo_cc_library(
name = "kms",
srcs = [
"kms.cpp",
"kms_local.cpp",
],
hdrs = [
"kms.h",
],
deps = [
":kms_idl",
"//src/mongo:base",
"//src/mongo/base:secure_allocator", # TODO(SERVER-93876): Remove.
"//src/mongo/crypto:aead_encryption",
"//src/mongo/db/commands:test_commands_enabled",
],
)
mongo_cc_library(
name = "linenoise",
srcs = [
@ -178,11 +248,20 @@ mongo_cc_library(
)
mongo_cc_library(
name = "kms_idl",
name = "shell_options_register",
srcs = [
":kms_gen",
"shell_options_gen",
] + select({
"//bazel/config:build_grpc_enabled": ["shell_options_grpc_gen"],
"//conditions:default": {},
}),
hdrs = [
"shell_utils.h",
],
deps = [
"//src/mongo/db:server_base",
"shell_options_storage",
"//src/mongo:base",
"//src/mongo/client:native_sasl_client",
"//src/mongo/util/options_parser",
],
)

View File

@ -13,48 +13,6 @@ Import(
env = env.Clone()
env.Library(
target="benchrun",
source=[
"bench.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/client/clientdriver_minimal",
"$BUILD_DIR/mongo/db/session/logical_session_id",
"$BUILD_DIR/mongo/scripting/bson_template_evaluator",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/pcre_util",
"$BUILD_DIR/mongo/util/pcre_wrapper",
],
)
shellEnv = env.Clone()
if shellEnv.TargetOSIs("windows"):
shellEnv.Append(
CXXFLAGS=[
# See the /Zc:preprocessor comment in third_party/mozjs/SConscript
"/Zc:preprocessor",
"/wd5104",
"/wd5105",
]
)
shellEnv.Library(
target="shell_options_storage",
source=[
"shell_options_storage.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/client/connection_string",
"$BUILD_DIR/mongo/util/cmdline_utils/cmdline_utils",
],
)
def shouldBuildGRPC(myEnv):
return myEnv.TargetOSIs("linux") and myEnv["ENABLE_GRPC_BUILD"]
@ -63,21 +21,6 @@ def shouldBuildGRPC(myEnv):
if shouldBuildGRPC(env):
env.InjectThirdParty(libraries=["grpc"])
env.Library(
target="shell_options_register",
source=[
"shell_options_gen.cpp",
"shell_options_grpc_gen.cpp" if shouldBuildGRPC(env) else [],
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/client/native_sasl_client",
"shell_options_storage",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)
env.Library(
target="shell_utils",
@ -114,23 +57,6 @@ env.Library(
if get_option("ssl") == "on":
kmsEnv = env.Clone()
kmsEnv.Library(
target="kms",
source=[
"kms.cpp",
"kms_local.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base/secure_allocator",
"kms_idl",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/crypto/aead_encryption",
"$BUILD_DIR/mongo/db/commands/test_commands_enabled",
],
)
env.Library(
target="kms_shell",
source=[

View File

@ -9,6 +9,28 @@ exports_files(
]),
)
mongo_cc_library(
name = "transport_layer_common",
srcs = [
"hello_metrics.cpp",
"session.cpp",
"transport_layer.cpp",
],
hdrs = [
"hello_metrics.h",
"session.h",
"session_manager.h",
"transport_layer.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/db:connection_health_metrics_parameter", # TODO(SERVER-93876): Remove.
"//src/mongo/db:service_context",
"//src/mongo/db:wire_version", # TODO(SERVER-93876): Remove.
"//src/mongo/util/net:ssl_manager", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "transport_options_gen",
src = "transport_options.idl",
@ -19,11 +41,64 @@ idl_generator(
src = "service_executor.idl",
)
mongo_cc_library(
name = "service_executor",
srcs = [
"service_executor.cpp",
"service_executor_reserved.cpp",
"service_executor_synchronous.cpp",
"service_executor_utils.cpp",
":service_executor_gen",
],
hdrs = [
"service_executor.h",
"service_executor_reserved.h",
"service_executor_synchronous.h",
"service_executor_utils.h",
],
deps = [
":transport_layer_common",
"//src/mongo/db:server_base",
"//src/mongo/db:service_context", # TODO(SERVER-93876): Remove.
"//src/mongo/util:processinfo", # TODO(SERVER-93876): Remove.
"//src/mongo/util/concurrency:thread_pool", # TODO(SERVER-93876): Remove.
"//src/third_party/asio-master:asio", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "session_manager_common_gen",
src = "session_manager_common.idl",
)
mongo_cc_library(
name = "message_compressor",
srcs = [
"message_compressor_manager.cpp",
"message_compressor_metrics.cpp",
"message_compressor_registry.cpp",
"message_compressor_snappy.cpp",
"message_compressor_zlib.cpp",
"message_compressor_zstd.cpp",
],
hdrs = [
"message_compressor_base.h",
"message_compressor_manager.h",
"message_compressor_noop.h",
"message_compressor_registry.h",
"message_compressor_snappy.h",
"message_compressor_zlib.h",
"message_compressor_zstd.h",
],
deps = [
"//src/mongo:base",
"//src/mongo/util/options_parser",
"//src/third_party/snappy",
"//src/third_party/zlib", # TODO(SERVER-93876): Remove.
"//src/third_party/zstandard:zstd",
],
)
idl_generator(
name = "message_compressor_options_client_gen",
src = "message_compressor_options_client.idl",
@ -47,3 +122,76 @@ mongo_cc_library(
"//src/mongo/util/net:network",
],
)
mongo_cc_library(
name = "ingress_handshake_metrics",
srcs = [
"ingress_handshake_metrics.cpp",
],
hdrs = [
"ingress_handshake_metrics.h",
],
deps = [
"transport_layer_common",
"//src/mongo:base",
"//src/mongo/db:commands",
"//src/mongo/db:server_feature_flags",
"//src/mongo/db/commands:server_status_core",
"//src/mongo/util:clock_sources",
],
)
mongo_cc_library(
name = "message_compressor_options_client",
srcs = [
":message_compressor_options_client_gen",
],
deps = [
":message_compressor",
"//src/mongo:base",
],
)
mongo_cc_library(
name = "message_compressor_options_server",
srcs = [
":message_compressor_options_server_gen",
],
deps = [
":message_compressor",
"//src/mongo:base",
],
)
mongo_cc_library(
name = "session_manager",
srcs = [
"session_manager_common.cpp",
"session_workflow.cpp",
":session_manager_common_gen",
],
hdrs = [
"client_transport_observer.h",
"session_manager_common.h",
"session_workflow.h",
"//src/mongo/executor:split_timer.h",
],
deps = [
":ingress_handshake_metrics",
":message_compressor",
":service_executor",
":transport_layer_common",
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags",
"//src/mongo/db:service_context",
"//src/mongo/db:traffic_recorder",
"//src/mongo/db/query:command_request_response",
"//src/mongo/db/stats:counters",
"//src/mongo/rpc:client_metadata",
"//src/mongo/rpc:message",
"//src/mongo/util:fail_point",
"//src/mongo/util:processinfo",
"//src/mongo/util/concurrency:spin_lock",
"//src/mongo/util/net:ssl_manager",
],
)

View File

@ -20,39 +20,6 @@ if shouldBuildGRPC(env):
],
)
env.Library(
target="transport_layer_common",
source=[
"hello_metrics.cpp",
"session.cpp",
"transport_layer.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/connection_health_metrics_parameter",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/db/wire_version",
"$BUILD_DIR/mongo/util/net/ssl_manager",
],
)
env.Library(
target="ingress_handshake_metrics",
source=[
"ingress_handshake_metrics.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/db/commands",
"$BUILD_DIR/mongo/util/clock_sources",
"transport_layer_common",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
"$BUILD_DIR/mongo/db/server_feature_flags",
],
)
env.Library(
target="transport_layer_mock",
source=[
@ -136,97 +103,6 @@ env.Library(
],
)
tlEnv.Library(
target="service_executor",
source=[
"service_executor.cpp",
"service_executor_reserved.cpp",
"service_executor_synchronous.cpp",
"service_executor_utils.cpp",
"service_executor_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/db/service_context",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/concurrency/thread_pool",
"$BUILD_DIR/mongo/util/processinfo",
"$BUILD_DIR/third_party/asio-master/asio",
"transport_layer_common",
],
)
env.Library(
target="session_manager",
source=[
"session_manager_common_gen.cpp",
"session_manager_common.cpp",
"session_workflow.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/query/command_request_response",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/db/stats/counters",
"$BUILD_DIR/mongo/db/traffic_recorder",
"$BUILD_DIR/mongo/rpc/client_metadata",
"$BUILD_DIR/mongo/rpc/message",
"$BUILD_DIR/mongo/util/concurrency/spin_lock",
"$BUILD_DIR/mongo/util/fail_point",
"$BUILD_DIR/mongo/util/net/ssl_manager",
"$BUILD_DIR/mongo/util/processinfo",
"ingress_handshake_metrics",
"message_compressor",
"service_executor",
"transport_layer_common",
],
)
zlibEnv = env.Clone()
zlibEnv.InjectThirdParty(libraries=["zlib", "zstd", "snappy"])
zlibEnv.Library(
target="message_compressor",
source=[
"message_compressor_manager.cpp",
"message_compressor_metrics.cpp",
"message_compressor_registry.cpp",
"message_compressor_snappy.cpp",
"message_compressor_zlib.cpp",
"message_compressor_zstd.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
"$BUILD_DIR/third_party/snappy/snappy",
"$BUILD_DIR/third_party/zlib/zlib",
"$BUILD_DIR/third_party/zstandard/zstd",
],
)
env.Library(
target="message_compressor_options_client",
source=[
"message_compressor_options_client_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"message_compressor",
],
)
env.Library(
target="message_compressor_options_server",
source=[
"message_compressor_options_server_gen.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"message_compressor",
],
)
tlEnv.CppUnitTest(
target="transport_test",
source=[

View File

@ -9,6 +9,21 @@ exports_files(
]),
)
mongo_cc_library(
name = "golden_test_base",
srcs = [
"golden_test_base.cpp",
],
hdrs = [
"golden_test_base.h",
"test_info.h",
],
deps = [
"//src/mongo:base",
"//src/third_party/yaml-cpp:yaml",
],
)
idl_generator(
name = "unittest_options_gen",
src = "unittest_options.idl",

View File

@ -4,18 +4,6 @@ Import("env")
env = env.Clone()
env.InjectThirdParty(libraries=["yaml"])
env.Library(
target="golden_test_base",
source=[
"golden_test_base.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/third_party/yaml-cpp/yaml",
],
)
utEnv = env.Clone()
utEnv.InjectThirdParty(libraries=["yaml"])

View File

@ -16,6 +16,7 @@ filegroup(
"database_name_util.h",
"fail_point.h",
"inline_memory.h",
"log_with_sampling.h",
"make_array_type.h",
"namespace_string_util.h",
"overloaded_visitor.h",

View File

@ -84,7 +84,6 @@ if env.TargetOSIs("windows"):
env.SConscript(
must_exist=1,
dirs=[
"cmdline_utils",
"concurrency",
"cryptd",
"immutable",

View File

@ -8,3 +8,17 @@ exports_files(
"*.cpp",
]),
)
mongo_cc_library(
name = "cmdline_utils",
srcs = [
"censor_cmdline.cpp",
],
hdrs = [
"censor_cmdline.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/util/options_parser",
],
)

View File

@ -1,16 +0,0 @@
# -*- mode: python -*-
Import("env")
env = env.Clone()
env.Library(
target="cmdline_utils",
source=[
"censor_cmdline.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)

View File

@ -22,6 +22,77 @@ filegroup(
],
)
mongo_cc_library(
name = "ssl_options",
srcs = [
"ssl_options.cpp",
],
hdrs = [
"ssl_options.h",
],
deps = [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/util/options_parser",
],
)
mongo_cc_library(
name = "ssl_types",
srcs = [
"ssl_types.cpp",
],
hdrs = [
"ssl_types.h",
],
deps = [
":ssl_options",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
],
)
mongo_cc_library(
name = "ssl_parameters_auth",
srcs = select({
"//bazel/config:ssl_enabled": [
"ssl_parameters_auth.cpp",
"ssl_parameters_auth_gen",
],
"//conditions:default": [
"ssl_parameters_auth_none.cpp",
],
}),
deps = select({
"//bazel/config:ssl_enabled": [
":ssl_options", # TODO(SERVER-93876): Remove.
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/client:authentication",
"//src/mongo/db/auth:cluster_auth_mode", # TODO(SERVER-93876): Remove.
],
"//conditions:default": [
"//src/mongo:base", # TODO(SERVER-93876): Remove.
],
}),
)
mongo_cc_library(
name = "openssl_init",
srcs = [
"openssl_init.cpp",
],
linkopts = [
"-lssl",
],
target_compatible_with = select({
"//bazel/config:mongo_crypto_openssl": [],
"//conditions:default": ["@platforms//:incompatible"],
}),
deps = [
":ssl_options",
"//src/mongo:base",
"//src/mongo/crypto:symmetric_crypto",
],
)
idl_generator(
name = "hostandport_gen",
src = "hostandport.idl",
@ -35,6 +106,19 @@ idl_generator(
],
)
mongo_cc_library(
name = "ssl_options_client",
srcs = [
"ssl_options_client.cpp",
"ssl_options_client_gen",
],
deps = [
":ssl_options",
"//src/mongo:base", # TODO(SERVER-93876): Remove.
"//src/mongo/util/options_parser", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "ssl_options_server_gen",
src = "ssl_options_server.idl",
@ -43,6 +127,24 @@ idl_generator(
],
)
mongo_cc_library(
name = "ssl_options_server",
srcs = [
"ssl_options_server.cpp",
"ssl_options_server_gen",
],
hdrs = [
"//src/mongo/db:server_feature_flags_gen",
],
deps = [
":ssl_options",
"//src/mongo/db:server_base", # TODO(SERVER-93876): Remove.
"//src/mongo/db/auth:auth_options",
"//src/mongo/db/auth:cluster_auth_mode",
"//src/mongo/util/options_parser", # TODO(SERVER-93876): Remove.
],
)
idl_generator(
name = "ssl_parameters_gen",
src = "ssl_parameters.idl",
@ -52,11 +154,117 @@ idl_generator(
],
)
# TODO(SERVER-94377): Rework this.
filegroup(
name = "ssl_manager_file",
srcs = select({
"//bazel/config:ssl_provider_{}".format(ssl_provider): [
"ssl_manager_{}.cpp".format(ssl_provider),
]
for ssl_provider in [
"apple",
"openssl",
"windows",
"none",
]
} | {
# Intentionally blank.
"//conditions:default": [],
}),
)
mongo_cc_library(
name = "ssl_manager",
srcs = [
"sock.cpp",
] + select({
"//bazel/config:ssl_enabled": [
":ssl_manager_file",
"//src/mongo/util/net/private:ssl_expiration.cpp",
"ssl_manager.cpp",
"ssl_parameters.cpp",
"ssl_stream.cpp",
"//src/mongo/util/net/ssl",
"ssl_peer_info.cpp",
"ssl_parameters_gen",
"//src/mongo/util/net/ocsp:ocsp_manager.cpp",
],
} | {
"//conditions:default": ["ssl_manager_none.cpp"],
}),
hdrs = [
"ssl_manager.h",
] + select({
"//bazel/config:ssl_enabled": [
"ssl.hpp",
"ssl_parameters.h",
"ssl_peer_info.h",
"//src/mongo/executor:network_interface_factory.h",
"//src/mongo/rpc/metadata:metadata_hook.h",
"//src/mongo/util/net/ocsp:ocsp_manager.h",
"//src/mongo/util/net/private:ssl_expiration.h",
],
"//conditions:default": [],
}) + select({
"//bazel/config:ssl_provider_openssl": [
"//src/mongo/util:strong_weak_finish_line.h",
"//src/mongo/util/net:dh_openssl.h",
],
"//conditions:default": [],
}),
deps = [
"network",
"ssl_options",
"//src/mongo:base",
"//src/mongo/util:background_job",
"//src/mongo/util:fail_point",
] + select({
"//bazel/config:ssl_enabled": [
":http_client",
":ssl_types",
":ssl_util",
"//src/mongo/base:secure_allocator",
"//src/mongo/client:internal_auth",
"//src/mongo/crypto:sha_block",
"//src/mongo/db:connection_health_metrics_parameter",
"//src/mongo/db:server_base",
"//src/mongo/db:server_feature_flags",
"//src/mongo/db:service_context",
"//src/mongo/db/auth",
"//src/mongo/db/auth:cluster_auth_mode",
"//src/mongo/util:caching",
"//src/mongo/util:icu",
"//src/mongo/util:winutil",
"//src/mongo/util/concurrency:thread_pool",
"//src/third_party/asio-master:asio",
],
"//conditions:default": [],
}) + select({
"//bazel/config:ssl_provider_openssl": [":openssl_init"],
"//conditions:default": [],
}),
)
idl_generator(
name = "ssl_parameters_auth_gen",
src = "ssl_parameters_auth.idl",
)
mongo_cc_library(
name = "mock_http_client",
srcs = [
"http_client_mock.cpp",
"//src/mongo/base:data_builder.h",
],
hdrs = [
"http_client.h",
"http_client_mock.h",
],
deps = [
"//src/mongo:base",
],
)
idl_generator(
name = "http_client_options_gen",
src = "http_client_options.idl",

View File

@ -7,158 +7,6 @@ Import("ssl_provider")
env = env.Clone()
env.Library(
target="ssl_options",
source=[
"ssl_options.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)
env.Library(
target="ssl_options_client",
source=[
"ssl_options_client.cpp",
"ssl_options_client_gen.cpp",
],
LIBDEPS=[
"ssl_options",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)
env.Library(
target="ssl_options_server",
source=[
"ssl_options_server.cpp",
"ssl_options_server_gen.cpp",
],
LIBDEPS=[
"ssl_options",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/auth/auth_options",
"$BUILD_DIR/mongo/db/auth/cluster_auth_mode",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/util/options_parser/options_parser",
],
)
env.Library(
target="ssl_types",
source=[
"ssl_types.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"ssl_options",
],
)
if not get_option("ssl") == "off":
if ssl_provider == "openssl":
env.Library(
target="openssl_init",
source=[
"openssl_init.cpp",
],
LIBDEPS=[
"ssl_options",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/crypto/symmetric_crypto",
],
)
env.Library(
target="ssl_manager",
source=[
"sock.cpp",
"private/ssl_expiration.cpp",
"ssl_manager.cpp",
"ssl_parameters.cpp",
"ssl_manager_%s.cpp" % (ssl_provider),
"ssl_stream.cpp",
"ssl_peer_info.cpp",
"ssl_parameters_gen.cpp",
"ocsp/ocsp_manager.cpp",
],
LIBDEPS=[
"$BUILD_DIR/mongo/client/internal_auth",
"$BUILD_DIR/mongo/db/auth/auth",
"$BUILD_DIR/mongo/db/server_base",
"$BUILD_DIR/mongo/db/server_feature_flags",
"$BUILD_DIR/mongo/util/caching",
"$BUILD_DIR/mongo/util/concurrency/thread_pool",
"$BUILD_DIR/third_party/asio-master/asio",
"network",
"openssl_init" if ssl_provider == "openssl" else "",
"ssl_options",
"ssl_types",
"ssl_util",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/base/secure_allocator",
"$BUILD_DIR/mongo/crypto/sha_block_${MONGO_CRYPTO}",
"$BUILD_DIR/mongo/db/auth/cluster_auth_mode",
"$BUILD_DIR/mongo/db/connection_health_metrics_parameter",
"$BUILD_DIR/mongo/db/service_context",
"$BUILD_DIR/mongo/util/background_job",
"$BUILD_DIR/mongo/util/fail_point",
"$BUILD_DIR/mongo/util/icu",
"$BUILD_DIR/mongo/util/winutil",
"http_client",
],
)
env.Library(
target="ssl_parameters_auth",
source=[
"ssl_parameters_auth.cpp",
"ssl_parameters_auth_gen.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/client/authentication",
"$BUILD_DIR/mongo/db/auth/cluster_auth_mode",
"ssl_options",
],
)
else:
env.Library(
target="ssl_manager",
source=[
"sock.cpp",
"ssl_manager_none.cpp",
],
LIBDEPS=[
"network",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/mongo/util/fail_point",
"ssl_options",
],
)
env.Library(
target="ssl_parameters_auth",
source=[
"ssl_parameters_auth_none.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
],
)
if http_client == "off":
env.Library(
target="http_client_impl",
@ -195,16 +43,6 @@ else:
],
)
env.Library(
target="mock_http_client",
source=[
"http_client_mock.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/base",
],
)
env.CppUnitTest(
target="util_net_test",
source=[

View File

@ -5,3 +5,11 @@ exports_files(
"*.hpp",
]),
)
filegroup(
name = "ssl",
srcs = glob([
"**/*.hpp",
"**/*.ipp",
]),
)

View File

@ -1,4 +1,5 @@
load("//bazel:mongo_src_rules.bzl", "mongo_cc_library")
load("@bazel_skylib//lib:selects.bzl", "selects")
package(default_visibility = ["//visibility:public"])
@ -8,3 +9,72 @@ exports_files(
"*.cpp",
]),
)
# TODO BUILD-16566
# This warning cause false positives with the v4 toolchain gcc on Ubuntu 2022
# ARM64 platforms, in short term we will disable the warning until we can figure
# out what the underlying issue is. Once the toolchain is updated, the
# workaround below should be removed.
selects.config_setting_group(
name = "options_parser_needs_no_missing_indentation_flag",
match_all = [
"@platforms//cpu:aarch64",
"//bazel/config:compiler_type_gcc",
],
)
mongo_cc_library(
name = "options_parser",
srcs = [
"constraints.cpp",
"environment.cpp",
"option_description.cpp",
"option_section.cpp",
"options_parser.cpp",
"startup_option_init.cpp",
"startup_options.cpp",
"value.cpp",
],
hdrs = [
"constraints.h",
"environment.h",
"option_description.h",
"option_section.h",
"options_parser.h",
"startup_option_init.h",
"startup_options.h",
"value.h",
],
copts = select({
":options_parser_needs_no_missing_indentation_flag": [
"-Wno-misleading-indentation",
],
"//conditions:default": [],
}),
deps = [
"//src/mongo:base",
"//src/mongo/crypto:sha_block",
"//src/mongo/util/net:http_client",
"//src/mongo/util/net:network",
"//src/third_party/boost:boost_filesystem", # TODO(SERVER-93876): Remove.
"//src/third_party/boost:boost_iostreams", # TODO(SERVER-93876): Remove.
"//src/third_party/boost:boost_log", # TODO(SERVER-93876): Remove.
"//src/third_party/boost:boost_program_options", # TODO(SERVER-93876): Remove.
"//src/third_party/yaml-cpp:yaml",
],
)
# This library contains the initializers to run option parsing. This is
# separated into its own library because some code that is shared between many
# different binaries needs to link against the options_parser library, but not
# all these binaries need to actually run the option parsing. Linking against
# this library will cause the option parsing initializer to actually be run.
mongo_cc_library(
name = "options_parser_init",
srcs = [
"options_parser_init.cpp",
],
deps = [
":options_parser",
],
)

View File

@ -4,57 +4,6 @@ Import("env")
env = env.Clone()
optsEnv = env.Clone()
optsEnv.InjectThirdParty(libraries=["yaml"])
# TODO BUILD-16566
# This warning cause false positives with the v4 toolchain gcc on Ubuntu 2022 ARM64
# platforms, in short term we will disable the warning until we can figure out what the
# underlying issue is. Once the toolchain is updated, the workaround below should be removed.
if env.ToolchainIs("gcc") and env["TARGET_ARCH"] == "aarch64":
no_misleading_indentation_flag = ["-Wno-misleading-indentation"]
else:
no_misleading_indentation_flag = []
optsEnv.Library(
target="options_parser",
source=[
"constraints.cpp",
"environment.cpp",
"option_description.cpp",
"option_section.cpp",
"options_parser.cpp",
"startup_option_init.cpp",
"startup_options.cpp",
"value.cpp",
],
CCFLAGS=no_misleading_indentation_flag + optsEnv.get("CCFLAGS", []),
LIBDEPS=[
"$BUILD_DIR/mongo/base",
"$BUILD_DIR/third_party/yaml-cpp/yaml",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/crypto/sha_block_${MONGO_CRYPTO}",
"$BUILD_DIR/mongo/util/net/http_client",
"$BUILD_DIR/mongo/util/net/network",
"$BUILD_DIR/third_party/boost/boost_filesystem",
"$BUILD_DIR/third_party/boost/boost_iostreams",
"$BUILD_DIR/third_party/boost/boost_log",
"$BUILD_DIR/third_party/boost/boost_program_options",
"$BUILD_DIR/third_party/boost/boost_system",
],
)
# This library contains the initializers to run option parsing. This is separated into its own
# library because some code that is shared between many different binaries needs to link against the
# options_parser library, but not all these binaries need to actually run the option parsing.
# Linking against this library will cause the option parsing initializer to actually be run.
env.Library(
"options_parser_init",
["options_parser_init.cpp"],
LIBDEPS=["options_parser"],
)
env.CppUnitTest(
target="options_parser_test",
source=[

View File

@ -8,3 +8,18 @@ exports_files(
"*.cpp",
]),
)
mongo_cc_library(
name = "tracing_profiler",
srcs = [
"//src/mongo/util/tracing_profiler/internal:cycleclock.cpp",
"//src/mongo/util/tracing_profiler/internal:profiler_internal.cpp",
],
hdrs = [
"//src/mongo/util/tracing_profiler/internal:cycleclock.h",
"//src/mongo/util/tracing_profiler/internal:profiler_internal.h",
],
deps = [
"//src/mongo/db/commands:server_status_core",
],
)

View File

@ -3,17 +3,6 @@
Import("env")
env = env.Clone()
env.Library(
target="tracing_profiler",
source=[
"internal/cycleclock.cpp",
"internal/profiler_internal.cpp",
],
LIBDEPS_PRIVATE=[
"$BUILD_DIR/mongo/db/commands/server_status_core",
],
)
env.CppUnitTest(
target="tracing_profiler_test",
source=[

View File

@ -176,6 +176,10 @@ mongo_cc_library(
} | {
"//conditions:default": ["//conditions:incompatible"],
}) + CRYPTO_INCLUDES,
linkopts = select({
"//bazel/config:ssl_enabled_linux": ["-lcrypto"],
"//conditions:default": [],
}),
local_defines = [
"MLIB_USER",
] + CRYPTO_LOCAL_DEFINES + select({

View File

@ -71,13 +71,13 @@ mongo_cc_library(
],
"//conditions:default": [],
}),
includes = [
"yaml-cpp/include",
],
local_defines = select({
defines = select({
"//bazel/config:compiler_type_msvc": [
"_SILENCE_CXX17_ITERATOR_BASE_CLASS_DEPRECATION_WARNING",
],
"//conditions:default": [],
}),
includes = [
"yaml-cpp/include",
],
)