SERVER-86977: Make redact a required field for set parameters and update all existing parameters (#20435)

GitOrigin-RevId: a6ede4e300909230b3ec9cc47ea71a9abedde65b
This commit is contained in:
wbradmoore
2024-03-26 20:33:37 -04:00
committed by MongoDB Bot
parent e64f17bfa1
commit 30884c339e
124 changed files with 749 additions and 31 deletions

View File

@@ -954,7 +954,7 @@ def _parse_server_parameter(ctxt, spec, name, node):
"cpp_vartype": _RuleDesc('scalar'),
"cpp_varname": _RuleDesc('scalar'),
"condition": _RuleDesc('mapping', mapping_parser_func=_parse_condition),
"redact": _RuleDesc('bool_scalar'),
"redact": _RuleDesc('required_bool_scalar', _RuleDesc.REQUIRED),
"default": _RuleDesc('scalar_or_mapping', mapping_parser_func=_parse_expression),
"test_only": _RuleDesc('bool_scalar'),
"deprecated_name": _RuleDesc('scalar_or_sequence'),
@@ -1061,12 +1061,12 @@ def _propagate_globals(spec):
idltype.cpp_type = _prefix_with_namespace(cpp_namespace, idltype.cpp_type)
def parse_file(stream, error_file_name, parse_feature_flags=True):
def parse_file(stream, error_file_name, parse_non_forward_compatible_section=True):
# type: (Any, str, bool) -> syntax.IDLParsedSpec
"""
Parse a YAML document into an idl.syntax tree.
If parse_feature_flags is False, don't attempt to parse the feature flag type.
If parse_non_forward_compatible_section is False, don't attempt to parse the feature flag type.
stream: is a io.Stream.
error_file_name: just a file name for error messages to use.
@@ -1117,13 +1117,15 @@ def parse_file(stream, error_file_name, parse_feature_flags=True):
_parse_mapping(ctxt, spec, second_node, 'generic_reply_field_lists',
_parse_generic_reply_field_list)
elif first_name == "server_parameters":
_parse_mapping(ctxt, spec, second_node, "server_parameters", _parse_server_parameter)
# TODO (SERVER-86977): Remove bypass after 8.0 branches
if parse_non_forward_compatible_section:
_parse_mapping(ctxt, spec, second_node, "server_parameters",
_parse_server_parameter)
elif first_name == "configs":
_parse_mapping(ctxt, spec, second_node, "configs", _parse_config_option)
elif parse_feature_flags and first_name == "feature_flags":
_parse_mapping(ctxt, spec, second_node, "feature_flags", _parse_feature_flag)
elif not parse_feature_flags and first_name == "feature_flags":
continue
elif first_name == "feature_flags":
if parse_non_forward_compatible_section:
_parse_mapping(ctxt, spec, second_node, "feature_flags", _parse_feature_flag)
else:
ctxt.add_unknown_root_node_error(first_node)
@@ -1158,18 +1160,18 @@ class ImportResolverBase(object, metaclass=ABCMeta):
pass
def parse(stream, input_file_name, resolver, parse_feature_flags=True):
def parse(stream, input_file_name, resolver, parse_non_forward_compatible_section=True):
# type: (Any, str, ImportResolverBase, bool) -> syntax.IDLParsedSpec
"""
Parse a YAML document into an idl.syntax tree.
If parse_feature_flags is False, don't attempt to parse the feature flag type.
If parse_non_forward_compatible_section is False, don't attempt to parse the feature flag type.
stream: is a io.Stream.
input_file_name: a file name for error messages to use, and to help resolve imported files.
"""
root_doc = parse_file(stream, input_file_name, parse_feature_flags)
root_doc = parse_file(stream, input_file_name, parse_non_forward_compatible_section)
if root_doc.errors:
return root_doc
@@ -1206,7 +1208,8 @@ def parse(stream, input_file_name, resolver, parse_feature_flags=True):
# Parse imported file
with resolver.open(resolved_file_name) as file_stream:
parsed_doc = parse_file(file_stream, resolved_file_name, parse_feature_flags)
parsed_doc = parse_file(file_stream, resolved_file_name,
parse_non_forward_compatible_section)
# Check for errors
if parsed_doc.errors:

View File

@@ -867,7 +867,7 @@ class ServerParameter(common.SourceLocation):
self.cpp_class = None # type: ServerParameterClass
self.condition = None # type: Condition
self.deprecated_name = [] # type: List[str]
self.redact = False # type: bool
self.redact = None # type: bool
self.test_only = False # type: bool
self.default = None # type: Expression

View File

@@ -2045,6 +2045,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: %s
description: bar
redact: false
cpp_varname: baz
""" % (set_at)))
@@ -2055,6 +2056,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_varname: baz
default: 42
on_update: buzz
@@ -2073,6 +2075,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: cluster
description: bar
redact: false
cpp_varname: baz
cpp_vartype: bazStorage
on_update: buzz
@@ -2091,6 +2094,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_varname: baz
default:
expr: 'kDefaultValue'
@@ -2112,6 +2116,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_class: baz
"""))
@@ -2121,6 +2126,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_class:
name: baz
"""))
@@ -2131,6 +2137,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_class:
name: baz
data: bling
@@ -2174,6 +2181,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_class: baz
default: blong
"""))
@@ -2189,6 +2197,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: shutdown
description: bar
redact: false
cpp_varname: baz
"""), idl.errors.ERROR_ID_BAD_SETAT_SPECIFIER)
@@ -2199,6 +2208,7 @@ class TestBinder(testcase.IDLTestcase):
foo:
set_at: startup
description: bar
redact: false
cpp_class: baz
cpp_varname: bling
"""), idl.errors.ERROR_ID_SERVER_PARAMETER_INVALID_ATTR)

View File

@@ -1588,6 +1588,7 @@ class TestParser(testcase.IDLTestcase):
set_at: startup
description: bar
cpp_varname: baz
redact: false
default:
- one
- two

View File

@@ -23,6 +23,7 @@ server_parameters:
cpp_class:
name: LogLevelServerParameter
override_set: true
redact: false
...
```
@@ -203,12 +204,14 @@ as a dictionary, then `cpp_class.name`. A `cpp_class` directive may also contain
```yaml
server_parameters:
someParameter:
...
cpp_class:
name: string # Name to assign to the class (e.g., SomeParameterImpl)
data: string # cpp data type to add to the class as a property named "_data"
override_ctor: bool # True to allow defining a custom constructor, default: false
override_set: bool # True to allow defining a custom set() method, default: false
override_validate: bool # True to allow defining a custom validate() method, default: false
...
```
`override_ctor`: If `false`, the inherited constructor from the `ServerParameter` base class will be

View File

@@ -59,3 +59,4 @@ server_parameters:
gte: 1
lte: 2
default: 2
redact: false

View File

@@ -40,3 +40,4 @@ server_parameters:
cpp_varname: gConnectionAcquisitionToWireLoggingRate
default: 0.05
validator: { gte: 0.0, lte: 1.0 }
redact: false

View File

@@ -56,6 +56,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: maxConnsPerHost
default: 200
redact: false
connPoolMaxInUseConnsPerHost:
description: >
@@ -76,6 +77,7 @@ server_parameters:
cpp_varname: maxInUseConnsPerHost
default:
expr: std::numeric_limits<int>::max()
redact: false
globalConnPoolIdleTimeoutMinutes:
description: >
@@ -95,3 +97,4 @@ server_parameters:
cpp_varname: globalConnPoolIdleTimeout
default:
expr: std::numeric_limits<int>::max()
redact: false

View File

@@ -37,6 +37,7 @@ server_parameters:
set_at: startup
cpp_class:
name: RSMProtocolServerParameter
redact: false
defaultFindReplicaSetHostTimeoutMS:
@@ -48,3 +49,4 @@ server_parameters:
cpp_varname: gDefaultFindReplicaSetHostTimeoutMS
default: 15000
test_only: true
redact: false

View File

@@ -20,9 +20,11 @@ server_parameters:
set_at: startup
cpp_varname: saslAwsClientGlobalParams.awsEC2InstanceMetadataUrl
default: "http://169.254.169.254"
redact: false
awsECSInstanceMetadataUrl:
description: "Test parameter to override the URL for AWS ECS Instance Metadata"
set_at: startup
cpp_varname: saslAwsClientGlobalParams.awsECSInstanceMetadataUrl
default: "http://169.254.170.2"
redact: false

View File

@@ -41,6 +41,7 @@ server_parameters:
validator:
gte: 500
default: 10000
redact: false
localThresholdMs:
description: Determines the width of the latency window used in server selection.
set_at: startup
@@ -48,6 +49,7 @@ server_parameters:
validator:
gte: 0
default: 15
redact: false
connectTimeoutMs:
description: Determines the connection timeout used in the replica set monitor.
set_at: startup
@@ -56,5 +58,6 @@ server_parameters:
validator:
gte: 500
default: 10000
redact: false

View File

@@ -78,9 +78,12 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gUnsupportedDangerousTestingFLEDiagnosticsEnabledAtStartup
default: false
redact: false
fleCompactionOptions:
description: "Options related to compaction or cleanup operations in Queryable Encryption
protocol version 2"
set_at: cluster
cpp_varname: "fleCompactionOptions"
cpp_vartype: FLECompactionOptions
redact: false

View File

@@ -62,6 +62,7 @@ server_parameters:
default: 0
validator:
callback: "admission::TicketHolderManager::validateConcurrentWriteTransactions"
redact: false
storageEngineConcurrentReadTransactions:
description: "Storage Engine Concurrent Read Transactions"
@@ -78,6 +79,7 @@ server_parameters:
default: 0
validator:
callback: "admission::TicketHolderManager::validateConcurrentReadTransactions"
redact: false
lowPriorityAdmissionBypassThreshold:
description: >-
@@ -94,6 +96,7 @@ server_parameters:
default: 5000
validator:
gte: 0
redact: false
storageEngineConcurrencyAdjustmentAlgorithm:
description: >-
@@ -104,6 +107,7 @@ server_parameters:
default: "throughputProbing"
validator:
callback: validateConcurrencyAdjustmentAlgorithm
redact: false
storageEngineConcurrencyAdjustmentIntervalMillis:
description: >-
@@ -115,3 +119,4 @@ server_parameters:
default: 100
validator:
gte: 10
redact: false

View File

@@ -41,3 +41,4 @@ server_parameters:
cpp_vartype: AtomicWord<int32_t>
on_update: IngressAdmissionController::onUpdateTicketPoolSize
default: 1000000
redact: false

View File

@@ -40,6 +40,7 @@ server_parameters:
validator:
gte: 0.01
lte: 0.5
redact: false
throughputProbingInitialConcurrency:
description: >-
@@ -51,6 +52,7 @@ server_parameters:
default: 0
validator:
callback: validateInitialConcurrency
redact: false
throughputProbingMinConcurrency:
description: >-
@@ -62,6 +64,7 @@ server_parameters:
default: 4
validator:
callback: validateMinConcurrency
redact: false
throughputProbingMaxConcurrency:
description: >-
@@ -73,6 +76,7 @@ server_parameters:
default: 128
validator:
callback: validateMaxConcurrency
redact: false
throughputProbingReadWriteRatio:
description: >-
@@ -85,6 +89,7 @@ server_parameters:
validator:
gte: 0
lte: 1
redact: false
throughputProbingConcurrencyMovingAverageWeight:
description: >-
@@ -98,6 +103,7 @@ server_parameters:
validator:
gt: 0
lte: 1
redact: false
throughputProbingStallDetectionTimeoutMs:
description: >-
@@ -108,3 +114,4 @@ server_parameters:
default: 60000
validator:
gt: 0
redact: false

View File

@@ -65,6 +65,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: gRequireApiVersion
default: false
redact: false
acceptApiVersion2:
description: "Allow users to issue commands that include apiVersion: \"2\". Test only."
@@ -73,3 +74,4 @@ server_parameters:
cpp_vartype: bool
cpp_varname: acceptApiVersion2
default: false
redact: false

View File

@@ -42,9 +42,12 @@ server_parameters:
cpp_vartype: bool
cpp_varname: roleGraphInvalidationIsFatal
test_only: true
redact: false
enforceUserClusterSeparation:
description: "Prevents creation of users whose names would be interpreted as cluster members"
set_at: startup
cpp_varname: "gEnforceUserClusterSeparation"
cpp_vartype: bool
default: true
redact: false

View File

@@ -36,12 +36,16 @@ server_parameters:
set_at: 'readonly'
cpp_class:
name: AuthzVersionParameter
redact: false
startupAuthSchemaValidation:
description: 'Validate auth schema on startup'
set_at: startup
cpp_vartype: bool
cpp_varname: gStartupAuthSchemaValidation
default: true
redact: false
allowRolesFromX509Certificates:
description:
Whether to allow roles contained in X509 certificates if X509 authentication is enabled
@@ -49,3 +53,4 @@ server_parameters:
cpp_vartype: bool
cpp_varname: allowRolesFromX509Certificates
default: true
redact: false

View File

@@ -41,3 +41,4 @@ server_parameters:
- startup
cpp_varname: authorizationManagerCacheSize
default: 100
redact: false

View File

@@ -8,3 +8,4 @@ server_parameters:
cpp_varname: "enableLocalhostAuthBypass"
cpp_vartype: bool
default: true
redact: false

View File

@@ -45,21 +45,29 @@ server_parameters:
is_constexpr: false
on_update: "SASLGlobalParams::onSetAuthenticationMechanism"
cpp_varname: "saslGlobalParams.authenticationMechanisms"
redact: false
saslHostName:
description: "Overrides the automatically detected hostname used in SASL authentication"
set_at: startup
on_update: "SASLGlobalParams::onSetHostName"
cpp_varname: "saslGlobalParams.hostName"
redact: false
saslServiceName:
description: "Override the default service name used in Kerberos authentication"
set_at: startup
on_update: "SASLGlobalParams::onSetServiceName"
cpp_varname: "saslGlobalParams.serviceName"
redact: false
saslauthdPath:
description: "The path to a saslauthd Unix domain socket"
set_at: startup
on_update: "SASLGlobalParams::onSetAuthdPath"
cpp_varname: "saslGlobalParams.authdPath"
redact: false
scramIterationCount:
description: "The number of times passwords are iteratively hashed for SCRAM-SHA-1"
set_at: [startup, runtime]
@@ -67,6 +75,8 @@ server_parameters:
cpp_varname: "saslGlobalParams.scramSHA1IterationCount"
default: 10000
validator: {gte: 5000}
redact: false
scramSHA256IterationCount:
description: "The number of times passwords are iteratively hashed for SCRAM-SHA-256"
set_at: [startup, runtime]
@@ -74,6 +84,7 @@ server_parameters:
cpp_varname: "saslGlobalParams.scramSHA256IterationCount"
default: 15000
validator: {gte: 5000}
redact: false
configs:
"security.authenticationMechanisms":

View File

@@ -49,4 +49,5 @@ server_parameters:
validator:
gte: 1
lte: 86400
redact: false

View File

@@ -39,3 +39,4 @@ server_parameters:
cpp_vartype: std::string
cpp_varname: gTestOnlyValidatedTenancyScopeKey
test_only: true
redact: false

View File

@@ -42,6 +42,7 @@ server_parameters:
cpp_vartype: bool
test_only: true
default: false
redact: false
structs:
ClusteredIndexSpec:

View File

@@ -41,6 +41,7 @@ server_parameters:
cpp_varname: useReadOnceCursorsForIndexBuilds
cpp_vartype: AtomicWord<bool>
default: true
redact: false
maxIndexBuildMemoryUsageMegabytes:
description: "Limits the amount of memory that simultaneous index builds on one collection may consume for the duration of the builds"
@@ -52,6 +53,7 @@ server_parameters:
default: 200
validator:
gte: 50
redact: false
internalIndexBuildBulkLoadYieldIterations:
description: "The number of keys bulk-loaded before yielding."
@@ -63,3 +65,4 @@ server_parameters:
default: 1000
validator:
gte: 1
redact: false

View File

@@ -39,6 +39,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
validator: { gte: 0 }
default: 0
redact: false
maxValidateMemoryUsageMB:
description: "Limits the amount of memory that a single validate command will use."
@@ -47,3 +48,4 @@ server_parameters:
cpp_vartype: AtomicWord<int>
validator: { gt: 0 }
default: 200
redact: false

View File

@@ -39,4 +39,4 @@ server_parameters:
name: ChangeStreamOptionsParameter
override_set: true
override_validate: true
redact: false

View File

@@ -60,6 +60,8 @@ server_parameters:
callback: validateChangeStreamsClusterParameter
condition:
min_fcv: 6.2
redact: false
changeCollectionExpiredDocumentsRemoverJobSleepSeconds:
description: "Specifies the number of seconds for which the periodic change collection remover job will sleep between each cycle."
set_at: [ startup ]
@@ -68,6 +70,8 @@ server_parameters:
validator:
gte: 1
default: 10
redact: false
changeCollectionTruncateMarkersMinBytes:
description: "Server parameter that specifies the minimum number of bytes contained in each
truncate marker for change collections. This is only used if
@@ -78,6 +82,8 @@ server_parameters:
default: 33_554_432 # 32 MiB
validator:
gt: 0
redact: false
disableExpiredChangeCollectionRemover:
description: Disables the expired change collection remover.
set_at: [ startup ]
@@ -85,3 +91,4 @@ server_parameters:
cpp_varname: gChangeCollectionRemoverDisabled
default: false
test_only: true
redact: false

View File

@@ -34,3 +34,4 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: gSkipCorruptDocumentsWhenCloning
set_at: [ startup, runtime ]
redact: false

View File

@@ -35,6 +35,8 @@ server_parameters:
set_at: 'readonly'
cpp_class:
name: FeatureCompatibilityVersionParameter
redact: false
internalValidateFeaturesAsPrimary:
deprecated_name: "internalValidateFeaturesAsMaster"
description: >
@@ -44,8 +46,11 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gInternalValidateFeaturesAsPrimary
default: true
redact: false
defaultStartupFCV:
description: 'Startup parameter to set a default FCV at startup'
set_at: startup
cpp_vartype: std::string
cpp_varname: gDefaultStartupFCV
redact: false

View File

@@ -39,16 +39,19 @@ server_parameters:
description: "Sets quiet logging mode"
set_at: ["startup", "runtime"]
cpp_varname: "serverGlobalParams.quiet"
redact: false
traceExceptions:
description: "Configures mongod to log full code stack traces for every database and socket C++ exception"
set_at: runtime
cpp_varname: "DBException::traceExceptions"
redact: false
traceWriteConflictExceptions:
description: "Call printStackTrace on every WriteConflictException created"
set_at: ["startup", "runtime"]
cpp_varname: "DBException::traceWriteConflictExceptions"
redact: false
logLevel:
description: "Specifies the verbosity of logging"
@@ -56,6 +59,7 @@ server_parameters:
cpp_class:
name: LogLevelServerParameter
override_set: true
redact: false
logComponentVerbosity:
description: "Sets the verbosity levels of various components for log messages"
@@ -63,6 +67,7 @@ server_parameters:
cpp_class:
name: LogComponentVerbosityServerParameter
override_set: true
redact: false
automationServiceDescriptor:
description: "automationServiceDescriptor"
@@ -70,3 +75,4 @@ server_parameters:
cpp_class:
name: AutomationServiceDescriptorServerParameter
override_set: true
redact: false

View File

@@ -36,4 +36,5 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gEnableTestCommands
default: false
redact: false

View File

@@ -37,6 +37,7 @@ server_parameters:
cpp_varname: 'gEnableTemporarilyUnavailableExceptions'
cpp_vartype: AtomicWord<bool>
default: true
redact: false
temporarilyUnavailableMaxRetries:
description: 'The number of times to retry a TemporarilyUnavailable error internally'
@@ -46,6 +47,7 @@ server_parameters:
default: 10
validator:
gte: 0
redact: false
temporarilyUnavailableBackoffBaseMs:
description: 'The base period of time to wait between each TemporarilyUnavailable retry
@@ -57,6 +59,7 @@ server_parameters:
default: 1000
validator:
gte: 0
redact: false
transactionTooLargeForCacheThreshold:
description: "Threshold on the proportion of total dirty cache bytes that the running
@@ -72,3 +75,4 @@ server_parameters:
validator:
gte: 0.0
lte: 1.0
redact: false

View File

@@ -38,3 +38,4 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: "gEnableDetailedConnectionHealthMetricLogLines"
default: true
redact: false

View File

@@ -36,6 +36,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: gClientCursorMonitorFrequencySecs
default: 4
redact: false
cursorTimeoutMillis:
description: 'Period of time, in milliseconds, after which mortal cursors are killed for inactivity'
@@ -43,6 +44,7 @@ server_parameters:
cpp_vartype: AtomicWord<long long>
cpp_varname: gCursorTimeoutMillis
default: 600000
redact: false
bulkWriteMaxRepliesSize:
description: >-
@@ -52,3 +54,4 @@ server_parameters:
cpp_varname: gBulkWriteMaxRepliesSize
default:
expr: 30 * 1024 * 1024
redact: false

View File

@@ -58,3 +58,4 @@ server_parameters:
cpp_varname: defaultMaxTimeMS
condition:
feature_flag: gFeatureFlagDefaultReadMaxTimeMS
redact: false

View File

@@ -42,6 +42,8 @@ server_parameters:
validator:
gte: 0
lte: 2147483647
redact: false
batchedDeletesTargetBatchDocs:
description: "Threshold of documents at which a batch of document deletions is committed. A value of zero means unlimited"
set_at: [startup, runtime]
@@ -50,6 +52,8 @@ server_parameters:
default: 10
validator:
gte: 0
redact: false
batchedDeletesTargetBatchTimeMS:
description: "Threshold in milliseconds of batch processing time at which a batch of document deletions is committed. A value of zero means unlimited"
set_at: [startup, runtime]
@@ -58,3 +62,4 @@ server_parameters:
default: 5
validator:
gte: 0
redact: false

View File

@@ -32,7 +32,6 @@ global:
- "mongo/db/query/sbe_plan_cache_on_parameter_change.h"
server_parameters:
allowDiskUseByDefault:
description: "Allow queries which exceed their memory budget to spill to disk. This option can
be overriden at the per-query level."
@@ -41,3 +40,4 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
default: true
on_update: plan_cache_util::clearSbeCacheOnParameterChange
redact: false

View File

@@ -84,6 +84,7 @@ server_parameters:
default: false
condition:
feature_flag: gFeatureFlagToaster
redact: false
spTestNeedsLatestFCV:
description: "Server parameter gated on FCV >= latestFCV"
@@ -94,6 +95,7 @@ server_parameters:
default: 0
condition:
min_fcv: $ver_str(latest)
redact: false
cwspTestNeedsLatestFCV:
description: "Cluster server parameter gated on latest FCV"
@@ -103,6 +105,7 @@ server_parameters:
test_only: true
condition:
min_fcv: $ver_str(latest)
redact: false
spTestNeedsFeatureFlagBlender:
description: "Server Parameter gated on featureFlagBlender"
@@ -113,6 +116,7 @@ server_parameters:
default: 0
condition:
feature_flag: gFeatureFlagBlender
redact: false
cwspTestNeedsFeatureFlagBlender:
description: "Cluster server Parameter gated on featureFlagBlender"
@@ -122,3 +126,4 @@ server_parameters:
test_only: true
condition:
feature_flag: gFeatureFlagBlender
redact: false

View File

@@ -35,7 +35,6 @@ imports:
- "mongo/db/basic_types.idl"
server_parameters:
diagnosticDataCollectionStatsNamespaces:
description: "Specifies a comma-separated list of collections to collect metrics on"
set_at: [startup, runtime]
@@ -43,3 +42,4 @@ server_parameters:
cpp_varname: "gDiagnosticDataCollectionStatsNamespaces"
validator:
callback: validateCollectionStatsNamespaces
redact: false

View File

@@ -35,12 +35,12 @@ imports:
- "mongo/db/basic_types.idl"
server_parameters:
diagnosticDataCollectionEnabled:
description: "Determines whether to enable the collecting and logging of data for diagnostic purposes"
set_at: [startup, runtime]
cpp_varname: "ftdcStartupParams.enabled"
on_update: "onUpdateFTDCEnabled"
redact: false
diagnosticDataCollectionPeriodMillis:
description: "Specifies the interval, in milliseconds, at which to collect diagnostic data."
@@ -49,6 +49,7 @@ server_parameters:
on_update: "onUpdateFTDCPeriod"
validator:
gte: 100
redact: false
diagnosticDataCollectionDirectorySizeMB:
description: "Specifies the maximum size, in megabytes, of the diagnostic.data directory"
@@ -57,6 +58,7 @@ server_parameters:
on_update: "onUpdateFTDCDirectorySize"
validator:
gte: 10
redact: false
diagnosticDataCollectionFileSizeMB:
description: Specifies the maximum size, in megabytes, of each diagnostic file"
@@ -65,6 +67,7 @@ server_parameters:
on_update: "onUpdateFTDCFileSize"
validator:
gte: 1
redact: false
diagnosticDataCollectionSamplesPerChunk:
description: "Internal, Specifies the number of samples per diagnostic archive chunk"
@@ -73,6 +76,7 @@ server_parameters:
on_update: "onUpdateFTDCSamplesPerChunk"
validator:
gte: 2
redact: false
diagnosticDataCollectionSamplesPerInterimUpdate:
description: "Internal, Specifies the number of samples per diagnostic interim update"
@@ -81,20 +85,24 @@ server_parameters:
on_update: "onUpdateFTDCPerInterimUpdate"
validator:
gte: 2
redact: false
diagnosticDataCollectionDirectoryPath:
description: "Specify the directory for the diagnostic data directory."
set_at: [startup, runtime]
cpp_class: DiagnosticDataCollectionDirectoryPathServerParameter
redact: false
diagnosticDataCollectionEnableLatencyHistograms:
description: "Enable the capture of opLatencies: { histograms: true } } in FTDC."
set_at: [startup, runtime]
cpp_vartype: 'AtomicWord<bool>'
cpp_varname: gDiagnosticDataCollectionEnableLatencyHistograms
redact: false
diagnosticDataCollectionVerboseTCMalloc:
description: "Enable the capture of verbose tcmalloc in FTDC."
set_at: [startup, runtime]
cpp_vartype: 'AtomicWord<bool>'
cpp_varname: gDiagnosticDataCollectionVerboseTCMalloc
redact: false

View File

@@ -45,6 +45,7 @@ server_parameters:
default: 1000
validator:
gte: 1
redact: false
maxIndexBuildDrainMemoryUsageMegabytes:
description: "Limits the amount of memory that a hybrid index build on one collection may
@@ -59,4 +60,4 @@ server_parameters:
validator:
gte: 16
lt: 2048
redact: false

View File

@@ -40,6 +40,7 @@ server_parameters:
gte: 0
description: 'Max log attribute size in kilobytes'
set_at: [ startup, runtime ]
redact: false
honorSystemUmask:
description: 'Use the system provided umask, rather than overriding with processUmask config value'
@@ -47,6 +48,7 @@ server_parameters:
cpp_class: HonorSystemUMaskServerParameter
condition:
preprocessor: '!defined(_WIN32)'
redact: false
processUmask:
description: >
@@ -56,6 +58,7 @@ server_parameters:
cpp_class: ProcessUMaskServerParameter
condition:
preprocessor: '!defined(_WIN32)'
redact: false
backtraceLogFile:
description: >
@@ -63,3 +66,4 @@ server_parameters:
set_at: startup
cpp_varname: gBacktraceLogFile
cpp_vartype: std::string
redact: false

View File

@@ -40,3 +40,4 @@ server_parameters:
cpp_varname: KeysRotationIntervalSec
default:
expr: 3 * 30 * 24 * 60 * 60 # ~3 months
redact: false

View File

@@ -62,3 +62,4 @@ server_parameters:
name: "MirroredReadsServerParameter"
data: "synchronized_value<MirroredReadsParameters>"
override_set: true
redact: false

View File

@@ -43,6 +43,7 @@ server_parameters:
cpp_class:
name: AllowListedClusterNetworkSetting
override_set: true
redact: false
configs:
auth:

View File

@@ -47,6 +47,8 @@ server_parameters:
set_at: [ startup ]
cpp_vartype: std::string
cpp_varname: recoverToOplogTimestamp
redact: false
notablescan:
# NOT recommended for production use.
description: >-
@@ -54,6 +56,8 @@ server_parameters:
If true, MongoDB will not execute queries that require a table scan and will return an error.
set_at: [ startup, runtime ]
cpp_varname: 'storageGlobalParams.noTableScan'
redact: false
allowDocumentsGreaterThanMaxUserSize:
description: >-
Internal, allows users to insert documents greater than the 16mb maximum user BSON
@@ -68,6 +72,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gAllowDocumentsGreaterThanMaxUserSize
default: false
redact: false
configs:
'storage.engine':

View File

@@ -38,3 +38,4 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gMultitenancySupport
default: false
redact: false

View File

@@ -45,6 +45,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: gBatchUserMultiDeletes
default: true
redact: false
types:
yield_policy:

View File

@@ -42,6 +42,7 @@ server_parameters:
cpp_varname: gPreImageRemoverDisabled
default: false
test_only: true
redact: false
expiredChangeStreamPreImageRemovalJobSleepSecs:
description: >-
@@ -52,6 +53,7 @@ server_parameters:
validator:
gte: 1
default: 10
redact: false
preImagesCollectionTruncateMarkersMinBytes:
description: >-
@@ -64,6 +66,7 @@ server_parameters:
default: 33_554_432 # 32 MiB
validator:
gt: 0
redact: false
structs:
ChangeStreamPreImageId:

View File

@@ -40,3 +40,4 @@ server_parameters:
cpp_vartype: bool
cpp_varname: mrSingleReduceOptimizationEnabled
default: false
redact: false

View File

@@ -117,6 +117,7 @@ server_parameters:
name: "HealthMonitoringIntensitiesServerParameter"
data: "synchronized_value<HealthObserverIntensities>"
override_set: true
redact: false
progressMonitor:
set_at: ["startup", "runtime"]
@@ -125,6 +126,7 @@ server_parameters:
name: "HealthMonitoringProgressMonitorServerParameter"
data: "synchronized_value<HealthObserverProgressMonitorConfig>"
override_set: true
redact: false
healthMonitoringIntervals:
set_at: [startup, runtime]
@@ -133,6 +135,7 @@ server_parameters:
name: "PeriodicHealthCheckIntervalsServerParameter"
data: "synchronized_value<HealthObserverIntervals>"
override_set: true
redact: false
activeFaultDurationSecs:
description: "A server parameter for specifying the duration after which we transition to active fault."
@@ -143,6 +146,7 @@ server_parameters:
expr: 120
validator:
gte: 0
redact: false
reachableConfigReplicasRequiredByHealthMonitoring:
description: "Minimal count of reachable Config server replicas required to pass the health check"
@@ -153,6 +157,7 @@ server_parameters:
expr: 1
validator:
gt: 0
redact: false
configReplicasProbedByHealthMonitoring:
description: "Count of Config server replicas probed by the health check"
@@ -163,3 +168,4 @@ server_parameters:
expr: 2
validator:
gt: 0
redact: false

View File

@@ -36,28 +36,36 @@ server_parameters:
cpp_vartype: 'AtomicWord<int>'
cpp_varname: gInternalGeoPredicateQuery2DMaxCoveringCells
default: 16
redact: false
internalGeoNearQuery2DMaxCoveringCells:
description: 'Maximum number of cells to use for 2D geo query covering for near queries'
set_at: [ startup, runtime ]
cpp_vartype: 'AtomicWord<int>'
cpp_varname: gInternalGeoNearQuery2DMaxCoveringCells
default: 16
redact: false
internalQueryS2GeoFinestLevel:
description: 'Finest level we will cover a queried region or geoNear annulus'
set_at: [ startup, runtime ]
cpp_vartype: 'AtomicWord<int>'
cpp_varname: gInternalQueryS2GeoFinestLevel
default: 23
redact: false
internalQueryS2GeoCoarsestLevel:
description: 'Coarsest level we will cover a queried region or geoNear annulus'
set_at: [ startup, runtime ]
cpp_vartype: 'AtomicWord<int>'
cpp_varname: gInternalQueryS2GeoCoarsestLevel
default: 0
redact: false
internalQueryS2GeoMaxCells:
description: 'Maximum cell count that we want? (advisory, not a hard threshold)'
set_at: [ startup, runtime ]
cpp_vartype: 'AtomicWord<int>'
cpp_varname: gInternalQueryS2GeoMaxCells
default: 20
redact: false

File diff suppressed because it is too large Load Diff

View File

@@ -59,3 +59,4 @@ server_parameters:
override_set: true
condition:
feature_flag: feature_flags::gFeatureFlagQuerySettings
redact: false

View File

@@ -40,11 +40,15 @@ server_parameters:
cpp_varname: 'globalMongotParams.host'
validator:
callback: 'MongotParams::onValidateHost'
redact: false
skipAuthenticationToMongot:
description: 'Skip authentication for mongod->mongot connections, even if auth is enabled on mongod'
set_at: [ startup ]
cpp_varname: 'globalMongotParams.skipAuthToMongot'
default: false
redact: false
mongotConnectionPoolMinSize:
description: <-
The minimum number of connections for the TaskExecutor ConnectionPool used for outgoing
@@ -54,6 +58,8 @@ server_parameters:
validator:
gte: 0
default: 1
redact: false
mongotConnectionPoolMaxSize:
description: <-
The maximum number of connections for the TaskExecutor ConnectionPool used for outgoing
@@ -63,3 +69,4 @@ server_parameters:
validator:
gte: 1
default: 32767
redact: false

View File

@@ -39,6 +39,8 @@ server_parameters:
cpp_varname: 'globalSearchIndexParams.host'
validator:
callback: 'SearchIndexParams::onValidateHost'
redact: false
skipAuthenticationToSearchIndexManagementServer:
description: 'Skip authentication for mongod->search-index-server connections, even if auth is enabled on mongod'
set_at: [ startup ]
@@ -46,3 +48,4 @@ server_parameters:
# The search index server doesn't support our authentication protocol at this time,
# so this is `true` by default.
default: true
redact: false

View File

@@ -40,3 +40,4 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: waitForSecondaryBeforeNoopWriteMS
default: 10
redact: false

View File

@@ -49,6 +49,7 @@ server_parameters:
validator:
gte: 1
lte: 10000
redact: false
maxDbCheckMBperSec:
description: "Max MB per second that a single dbCheck process running in the background will
@@ -59,6 +60,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
validator: { gte: 0 }
default: 1
redact: false
# TODO SERVER-78399: Remove once secondaryIndexChecksInDbCheck feature flag is removed.
types:

View File

@@ -47,6 +47,7 @@ server_parameters:
cpp_vartype: std::string
cpp_varname: initialSyncOplogBuffer
default: "collection"
redact: false
initialSyncOplogBufferPeekCacheSize:
description: Set this to specify size of read ahead buffer in the OplogBufferCollection.
@@ -54,6 +55,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: initialSyncOplogBufferPeekCacheSize
default: 10000
redact: false
# From initial_syncer.cpp
numInitialSyncConnectAttempts:
@@ -62,6 +64,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: numInitialSyncConnectAttempts
default: 10
redact: false
numInitialSyncOplogFindAttempts:
description: The number of attempts to call find on the remote oplog
@@ -69,6 +72,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: numInitialSyncOplogFindAttempts
default: 3
redact: false
initialSyncOplogFetcherBatchSize:
description: The batchSize to use for the find/getMore queries called by the OplogFetcher
@@ -79,6 +83,7 @@ server_parameters:
# defaultBatchSize to use.
default:
expr: (16 * 1024 * 1024) / 12 * 10
redact: false
# From oplog_fetcher.cpp
oplogInitialFindMaxSeconds:
@@ -91,6 +96,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: oplogInitialFindMaxSeconds
default: 60
redact: false
oplogRetriedFindMaxSeconds:
description: Number of seconds for the `maxTimeMS` on any retried `find` commands
@@ -98,6 +104,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: oplogRetriedFindMaxSeconds
default: 2
redact: false
oplogFetcherUsesExhaust:
description: >-
@@ -107,6 +114,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: oplogFetcherUsesExhaust
default: true
redact: false
oplogBatchDelayMillis:
description: >-
@@ -118,6 +126,7 @@ server_parameters:
default: 0
validator:
gte: 0
redact: false
# From bgsync.cpp
bgSyncOplogFetcherBatchSize:
@@ -129,6 +138,7 @@ server_parameters:
# defaultBatchSize to use.
default:
expr: (16 * 1024 * 1024) / 12 * 10
redact: false
rollbackRemoteOplogQueryBatchSize:
description: >-
@@ -143,6 +153,7 @@ server_parameters:
# We choose 2000 for (10 minute timeout) * (60 sec / min) * (50 MB / second) /
# (16 MB / document).
default: 2000
redact: false
forceRollbackViaRefetch:
description: >-
@@ -153,6 +164,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: forceRollbackViaRefetch
default: false
redact: false
# From noop_writer.cpp
writePeriodicNoops:
@@ -161,6 +173,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: writePeriodicNoops
default: true
redact: false
collectionClonerUsesExhaust:
description: Whether to use the "exhaust cursor" feature when retrieving collection data.
@@ -168,6 +181,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: collectionClonerUsesExhaust
default: true
redact: false
# From collection_bulk_loader_impl.cpp
collectionBulkLoaderBatchSizeInBytes:
@@ -179,6 +193,7 @@ server_parameters:
cpp_varname: collectionBulkLoaderBatchSizeInBytes
default:
expr: 256 * 1024
redact: false
# From database_cloner.cpp
collectionClonerBatchSize:
@@ -192,6 +207,7 @@ server_parameters:
default: 0
validator:
gte: 0
redact: false
# From replication_coordinator_external_state_impl.cpp
oplogFetcherSteadyStateMaxFetcherRestarts:
@@ -205,6 +221,7 @@ server_parameters:
default: 1
validator:
gte: 0
redact: false
oplogFetcherInitialSyncMaxFetcherRestarts:
description: >-
@@ -218,6 +235,7 @@ server_parameters:
default: 10
validator:
gte: 0
redact: false
# From oplog_applier.cpp
replWriterThreadCount:
@@ -229,6 +247,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
replWriterMinThreadCount:
description: The minimum number of threads in the thread pool used to apply the oplog
@@ -239,6 +258,7 @@ server_parameters:
validator:
gte: 0
lte: 256
redact: false
replBatchLimitOperations:
description: The maximum number of operations to apply in a single batch
@@ -251,6 +271,7 @@ server_parameters:
gte: 1
lte:
expr: 1000 * 1000
redact: false
replBatchLimitBytes:
description: The maximum oplog application batch size in bytes
@@ -264,6 +285,7 @@ server_parameters:
expr: 16 * 1024 * 1024
lte:
expr: 100 * 1024 * 1024
redact: false
# From tenant_oplog_applier.cpp
tenantApplierBatchSizeBytes:
@@ -278,6 +300,7 @@ server_parameters:
expr: 16 * 1024 * 1024
lte:
expr: 100 * 1024 * 1024
redact: false
tenantApplierBatchSizeOps:
description: The maximum number of operations in a tenant oplog applier batch.
@@ -289,6 +312,7 @@ server_parameters:
gte: 1
lte:
expr: 100 * 1000
redact: false
minOplogEntriesPerThread:
description: >-
@@ -300,6 +324,7 @@ server_parameters:
validator:
gte: 1
lte: 32
redact: false
tenantApplierThreadCount:
description: >-
@@ -311,6 +336,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
recoverFromOplogAsStandalone:
description: Tells the server to perform replication recovery as a standalone.
@@ -318,6 +344,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: recoverFromOplogAsStandalone
default: false
redact: false
maxSyncSourceLagSecs:
description: ''
@@ -327,6 +354,7 @@ server_parameters:
default: 30
validator:
gt: 0
redact: false
replElectionTimeoutOffsetLimitFraction:
description: ''
@@ -336,6 +364,7 @@ server_parameters:
default: 0.15
validator:
gt: 0.01
redact: false
# New parameters since this file was created, not taken from elsewhere.
initialSyncTransientErrorRetryPeriodSeconds:
@@ -349,6 +378,7 @@ server_parameters:
expr: 24 * 60 * 60
validator:
gte: 0
redact: false
oplogNetworkTimeoutBufferSeconds:
description: >-
@@ -360,6 +390,7 @@ server_parameters:
default: 5
validator:
gte: 0
redact: false
oplogApplicationEnforcesSteadyStateConstraints:
description: >-
@@ -369,6 +400,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: oplogApplicationEnforcesSteadyStateConstraints
default: false
redact: false
initialSyncSourceReadPreference:
description: >-
@@ -383,6 +415,7 @@ server_parameters:
# and if it is not, readPreference is 'nearest'.
default: ""
validator: { callback: 'validateReadPreferenceMode' }
redact: false
changeSyncSourceThresholdMillis:
description: >-
@@ -396,6 +429,7 @@ server_parameters:
default: 5
validator:
gte: 0
redact: false
maxNumSyncSourceChangesPerHour:
description: >-
@@ -408,6 +442,7 @@ server_parameters:
default: 3
validator:
gt: 0
redact: false
enableOverrideClusterChainingSetting:
description: >-
@@ -418,6 +453,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: enableOverrideClusterChainingSetting
default: false
redact: false
disableSplitHorizonIPCheck:
description: >-
@@ -427,6 +463,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: disableSplitHorizonIPCheck
default: false
redact: false
tenantMigrationGarbageCollectionDelayMS:
description: >-
@@ -438,6 +475,7 @@ server_parameters:
cpp_varname: tenantMigrationGarbageCollectionDelayMS
default:
expr: 15 * 60 * 1000
redact: false
tenantMigrationExternalKeysRemovalBufferSecs:
description: >-
@@ -449,6 +487,7 @@ server_parameters:
cpp_varname: tenantMigrationExternalKeysRemovalBufferSecs
default:
expr: 60 * 60 * 24 # 24 hours
redact: false
tenantMigrationOplogBufferPeekCacheSize:
description: >-
@@ -458,6 +497,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: tenantMigrationOplogBufferPeekCacheSize
default: 10000
redact: false
tenantMigrationOplogFetcherBatchSize:
description: >-
@@ -470,6 +510,7 @@ server_parameters:
# defaultBatchSize to use.
default:
expr: (16 * 1024 * 1024) / 12 * 10
redact: false
maxTenantMigrationRecipientThreadPoolSize:
description: >-
@@ -483,6 +524,7 @@ server_parameters:
default: 128
validator:
gte: 1
redact: false
minTenantMigrationRecipientThreadPoolSize:
description: >-
@@ -493,6 +535,7 @@ server_parameters:
default: 0
validator:
gte: 1
redact: false
maxTenantMigrationDonorServiceThreadPoolSize:
description: >-
@@ -503,6 +546,7 @@ server_parameters:
default: 8
validator:
gte: 1
redact: false
minTenantMigrationDonorServiceThreadPoolSize:
description: >-
@@ -513,6 +557,7 @@ server_parameters:
default: 0
validator:
gte: 1
redact: false
importQuorumTimeoutSeconds:
description: >-
@@ -524,6 +569,7 @@ server_parameters:
expr: 24 * 60 * 60 # 24 hours
validator:
gte: 0
redact: false
maxShardSplitDonorServiceThreadPoolSize:
description: >-
@@ -534,6 +580,7 @@ server_parameters:
default: 8
validator:
gte: 1
redact: false
minShardSplitDonorServiceThreadPoolSize:
description: >-
@@ -544,6 +591,7 @@ server_parameters:
default: 0
validator:
gte: 1
redact: false
shardSplitTimeoutMS:
description: >-
@@ -554,6 +602,7 @@ server_parameters:
default: 10000
validator:
gte: 1
redact: false
tenantMigrationBlockingStateTimeoutMS:
description: >-
@@ -564,6 +613,7 @@ server_parameters:
default: 3600000
validator:
gte: 1
redact: false
tenantMigrationDisableX509Auth:
description: >-
@@ -572,6 +622,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: tenantMigrationDisableX509Auth
default: true
redact: false
tenantMigrationExcludeDonorHostTimeoutMS:
description: >-
@@ -582,6 +633,7 @@ server_parameters:
default: 60000
validator:
gte: 1
redact: false
enableDefaultWriteConcernUpdatesForInitiate:
description: >-
@@ -592,6 +644,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: enableDefaultWriteConcernUpdatesForInitiate
default: false
redact: false
startupRecoveryForRestore:
description: >-
@@ -603,6 +656,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: startupRecoveryForRestore
default: false
redact: false
enableReconfigRollbackCommittedWritesCheck:
description: >-
@@ -613,6 +667,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: enableReconfigRollbackCommittedWritesCheck
default: true
redact: false
initialSyncMethod:
description: >-
@@ -622,6 +677,7 @@ server_parameters:
cpp_vartype: std::string
cpp_varname: initialSyncMethod
default: "logical"
redact: false
fileBasedInitialSyncMaxLagSec:
description: >-
@@ -634,6 +690,7 @@ server_parameters:
expr: 5 * 60
validator:
gte: 0
redact: false
fileBasedInitialSyncMaxCyclesWithoutProgress:
description: >-
@@ -646,6 +703,7 @@ server_parameters:
default: 3
validator:
gte: 1
redact: false
fileBasedInitialSyncExtendCursorTimeoutMS:
description: >-
@@ -658,6 +716,7 @@ server_parameters:
expr: 180 * 1000
validator:
gte: 1
redact: false
fassertOnLockTimeoutForStepUpDown:
description: >-
@@ -670,6 +729,7 @@ server_parameters:
default: 30
validator:
gte: 0
redact: false
allowMultipleArbiters:
description: >-
@@ -685,6 +745,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: allowMultipleArbiters
default: false
redact: false
shardSplitGarbageCollectionDelayMS:
description: >-
@@ -695,6 +756,7 @@ server_parameters:
cpp_varname: shardSplitGarbageCollectionDelayMS
default:
expr: 15 * 60 * 1000
redact: false
slowServiceOnStepUpBeginThresholdMS:
description: >-
@@ -706,6 +768,7 @@ server_parameters:
default: 200
validator:
gte: 0
redact: false
slowTotalOnStepUpBeginThresholdMS:
description: >-
@@ -717,6 +780,7 @@ server_parameters:
default: 500
validator:
gte: 0
redact: false
slowServiceOnStepUpCompleteThresholdMS:
description: >-
@@ -729,6 +793,7 @@ server_parameters:
default: 200
validator:
gte: 0
redact: false
slowTotalOnStepUpCompleteThresholdMS:
description: >-
@@ -741,6 +806,7 @@ server_parameters:
default: 500
validator:
gte: 0
redact: false
disableTransitionFromLatestToLastContinuous:
description: >-
@@ -751,6 +817,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: disableTransitionFromLatestToLastContinuous
default: true
redact: false
unsupportedSyncSource:
description: >-
@@ -762,6 +829,7 @@ server_parameters:
cpp_varname: unsupportedSyncSource
default: ""
validator: { callback: 'validateHostAndPort' }
redact: false
dbCheckMaxTotalIndexKeysPerSnapshot:
description: >-
@@ -773,6 +841,7 @@ server_parameters:
default: 1000
validator:
gt: 0
redact: false
dbCheckMaxConsecutiveIdenticalIndexKeysPerSnapshot:
description: >-
@@ -784,6 +853,7 @@ server_parameters:
default: 1000
validator:
gt: 0
redact: false
dbCheckMaxInternalRetries:
description: >-
@@ -794,6 +864,7 @@ server_parameters:
default: 5
validator:
gte: 0
redact: false
writeConflictRetryLimit:
description: >-
@@ -805,6 +876,7 @@ server_parameters:
default: 10000
validator:
gte: 0
redact: false
feature_flags:
featureFlagShardMerge:

View File

@@ -38,4 +38,4 @@ server_parameters:
cpp_vartype: bool
cpp_varname: skipShardingConfigurationChecks
default: false
redact: false

View File

@@ -36,6 +36,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: numInitialSyncAttempts
default: 10
redact: false
enableElectionHandoff:
description: <-
@@ -45,6 +46,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: enableElectionHandoff
default: true
redact: false
shutdownTimeoutMillisForSignaledShutdown:
description: <-
@@ -55,6 +57,7 @@ server_parameters:
default: 15000
validator:
gte: 0
redact: false
periodicNoopIntervalSecs:
description: <-
@@ -66,6 +69,7 @@ server_parameters:
validator:
gt: 0
lte: 10
redact: false
testingSnapshotBehaviorInIsolation:
# SERVER-31304 rename this parameter to something more appropriate.
@@ -75,3 +79,4 @@ server_parameters:
set_at: startup
cpp_vartype: bool
cpp_varname: gTestingSnapshotBehaviorInIsolation
redact: false

View File

@@ -39,6 +39,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: gCreateRollbackDataFiles
default: true
redact: false
rollbackTimeLimitSecs:
description: >-
@@ -52,3 +53,4 @@ server_parameters:
expr: '60 * 60 * 24' # Default 1 day
validator:
gt: 0
redact: false

View File

@@ -38,3 +38,4 @@ server_parameters:
cpp_vartype: int
cpp_varname: gPriorityTakeoverFreshnessWindowSeconds
default: 2
redact: false

View File

@@ -44,6 +44,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
globalIndexClonerServiceFetchBatchMaxSizeBytes:
description: The max number of threads in the global index cloner's thread pool.
@@ -53,3 +54,4 @@ server_parameters:
default: 102400
validator:
gte: 1
redact: false

View File

@@ -42,6 +42,8 @@ server_parameters:
validator:
gte: 0
lte: 255
redact: false
multiUpdateCoordinatorServiceMaxThreadCount:
description: The max number of threads in the multi update coordinator's thread pool.
set_at: startup
@@ -51,3 +53,4 @@ server_parameters:
validator:
gte: 1
lte: 255
redact: false

View File

@@ -44,6 +44,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
reshardingDonorServiceMaxThreadCount:
description: The max number of threads in the resharding donor's thread pool.
@@ -54,6 +55,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
reshardingRecipientServiceMaxThreadCount:
description: The max number of threads in the resharding recipient's thread pool.
@@ -64,6 +66,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
reshardingCollectionClonerBatchSizeInBytes:
description: >-
@@ -76,6 +79,7 @@ server_parameters:
expr: 100 * 1024
validator:
gte: 1
redact: false
reshardingCollectionClonerWriteThreadCount:
description: >-
@@ -87,6 +91,7 @@ server_parameters:
expr: 2
validator:
gte: 1
redact: false
reshardingTxnClonerProgressBatchSize:
description: >-
@@ -98,6 +103,7 @@ server_parameters:
default: 1000
validator:
gte: 1
redact: false
reshardingOplogBatchTaskCount:
description: >-
@@ -112,6 +118,7 @@ server_parameters:
validator:
gte: 1
lte: 256
redact: false
reshardingOplogBatchLimitOperations:
description: >-
@@ -125,6 +132,7 @@ server_parameters:
gte: 1
lte:
expr: 1000 * 1000
redact: false
reshardingOplogBatchLimitBytes:
description: >-
@@ -139,6 +147,7 @@ server_parameters:
expr: 16 * 1024 * 1024
lte:
expr: 100 * 1024 * 1024
redact: false
reshardingOplogApplierMaxLockRequestTimeoutMillis:
description: >-
@@ -148,6 +157,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: gReshardingOplogApplierMaxLockRequestTimeoutMillis
default: 5
redact: false
reshardingMinimumOperationDurationMillis:
description: >-
@@ -161,6 +171,7 @@ server_parameters:
expr: 5 * 60 * 1000
validator:
gte: 0
redact: false
reshardingCriticalSectionTimeoutMillis:
description: >-
@@ -173,6 +184,7 @@ server_parameters:
expr: 5 * 1000
validator:
gte: 0
redact: false
remainingReshardingOperationTimeThresholdMillis:
description: >-
@@ -186,6 +198,7 @@ server_parameters:
expr: 2 * 1000
validator:
gte: 0
redact: false
reshardingCoordinatorQuiescePeriodMillis:
description: >-
@@ -200,3 +213,4 @@ server_parameters:
expr: 15 * 60 * 1000
validator:
gte: 0
redact: false

View File

@@ -39,3 +39,4 @@ server_parameters:
validator:
gte: 0
default: 500
redact: false

View File

@@ -55,3 +55,4 @@ server_parameters:
set_at: cluster
cpp_vartype: ShardedClusterCardinalityParam
cpp_varname: shardedClusterCardinalityForDirectConns
redact: false

View File

@@ -37,6 +37,7 @@ server_parameters:
cpp_varname: minNumChunksForSessionsCollection
default: 1024
validator: { gte: 1, lte: 1000000 }
redact: false
chunkDefragmentationThrottlingMS:
description: >-
@@ -48,6 +49,7 @@ server_parameters:
validator:
gte: 0
default: 1000
redact: false
autoMergerIntervalSecs:
description: Time interval in seconds between subsequent auto-merging rounds
@@ -55,6 +57,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: autoMergerIntervalSecs
default: 3600 # 1 hour
redact: false
autoMergerThrottlingMS:
description: >-
@@ -65,6 +68,7 @@ server_parameters:
validator:
gte: 0
default: 15000 # 15 seconds
redact: false
balancerMigrationsThrottlingMs:
# Sleep between balancer rounds in the case where the last round found some chunks which needed to
@@ -76,6 +80,7 @@ server_parameters:
cpp_vartype: AtomicWord<int32_t>
cpp_varname: balancerMigrationsThrottlingMs
default: 1000 # 1 sec
redact: false
balancerChunksSelectionTimeoutMs:
description: >-
@@ -85,6 +90,7 @@ server_parameters:
cpp_vartype: AtomicWord<int32_t>
cpp_varname: balancerChunksSelectionTimeoutMs
default: 5000 # 5 seconds
redact: false
newShardExistingClusterTimeKeysExpirationSecs:
description: >-
@@ -98,6 +104,7 @@ server_parameters:
expr: 7 * 24 * 3600 # 1 week
validator:
gte: 1
redact: false
enableShardedIndexConsistencyCheck:
description: >-
@@ -108,6 +115,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: enableShardedIndexConsistencyCheck
default: true
redact: false
shardedIndexConsistencyCheckIntervalMS:
description: 'Time interval in milliseconds between subsequent index checks.'
@@ -115,3 +123,4 @@ server_parameters:
cpp_vartype: int
cpp_varname: shardedIndexConsistencyCheckIntervalMS
default: 600000
redact: false

View File

@@ -41,6 +41,7 @@ server_parameters:
validator:
callback: validateChunkMigrationConcurrency
default: 1
redact: false
chunkMigrationFetcherMaxBufferedSizeBytesPerThread:
description: >-
@@ -54,6 +55,7 @@ server_parameters:
callback: validateChunkMigrationFetcherMaxBufferedSizeBytesPerThread
default:
expr: 4 * BSONObjMaxInternalSize
redact: false
rangeDeleterBatchSize:
description: >-
@@ -69,6 +71,7 @@ server_parameters:
gte: 0
default:
expr: std::numeric_limits<int>::max()
redact: false
rangeDeleterBatchDelayMS:
description: >-
@@ -80,6 +83,7 @@ server_parameters:
validator:
gte: 0
default: 20
redact: false
rangeDeleterHighPriority:
description:
@@ -90,6 +94,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: rangeDeleterHighPriority
default: false
redact: false
receiveChunkWaitForRangeDeleterTimeoutMS:
description: >-
@@ -101,6 +106,7 @@ server_parameters:
validator:
gte: 0
default: 10000
redact: false
migrateCloneInsertionBatchSize:
description: >-
@@ -114,6 +120,7 @@ server_parameters:
validator:
gte: 0
default: 0
redact: false
migrateCloneInsertionBatchDelayMS:
description: >-
@@ -126,6 +133,7 @@ server_parameters:
validator:
gte: 0
default: 0
redact: false
migrationLockAcquisitionMaxWaitMS:
description: 'How long to wait to acquire collection lock for migration related operations.'
@@ -133,6 +141,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: migrationLockAcquisitionMaxWaitMS
default: 500
redact: false
maxCatchUpPercentageBeforeBlockingWrites:
description: >-
@@ -146,6 +155,7 @@ server_parameters:
gte: 0
lte: 100
default: 10
redact: false
orphanCleanupDelaySecs:
description: How long to wait before starting cleanup of an emigrated chunk range.
@@ -153,6 +163,7 @@ server_parameters:
cpp_vartype: AtomicWord<int>
cpp_varname: orphanCleanupDelaySecs
default: 900
redact: false
disableResumableRangeDeleter:
description: >-
@@ -163,6 +174,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname : disableResumableRangeDeleter
default: false
redact: false
persistedChunkCacheUpdateMaxBatchSize:
description: >-
@@ -173,3 +185,4 @@ server_parameters:
validator:
gte: 1
default: 1000
redact: false

View File

@@ -37,3 +37,4 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: coordinateCommitReturnImmediatelyAfterPersistingDecision
default: false
redact: false

View File

@@ -35,3 +35,4 @@ server_parameters:
description: 'Disable use of secure allocator domains'
set_at: startup
cpp_varname: 'serverGlobalParams.disabledSecureAllocatorDomains'
redact: false

View File

@@ -43,3 +43,4 @@ server_parameters:
default: 1000
validator:
gte: 0
redact: false

View File

@@ -44,6 +44,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: gKillSessionsMaxConcurrency
default: 100
redact: false
KillSessionsPerHostTimeoutMS:
description: >-
@@ -52,6 +53,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: gKillSessionsPerHostTimeoutMS
default: 60000
redact: false
structs:

View File

@@ -38,6 +38,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: logicalSessionRefreshMillis
default: 300000
redact: false
maxSessions:
description: The maximum number of sessions that can be cached.
@@ -45,6 +46,7 @@ server_parameters:
cpp_vartype: int
cpp_varname: maxSessions
default: 1000000
redact: false
disableLogicalSessionCacheRefresh:
description: Disable the logical session cache refresh (for testing only).
@@ -52,6 +54,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: disableLogicalSessionCacheRefresh
default: false
redact: false
TransactionRecordMinimumLifetimeMinutes:
# The minimum lifetime for a transaction record is how long it has to have lived on the server
@@ -73,3 +76,4 @@ server_parameters:
cpp_vartype: int
cpp_varname: gTransactionRecordMinimumLifetimeMinutes
default: 30
redact: false

View File

@@ -266,3 +266,4 @@ server_parameters:
cpp_vartype: int
cpp_varname: localLogicalSessionTimeoutMinutes
default: 30
redact: false

View File

@@ -40,3 +40,4 @@ server_parameters:
cpp_varname: minSnapshotHistoryWindowInSeconds
default: 300
validator: { gte: 0 }
redact: false

View File

@@ -37,6 +37,7 @@ server_parameters:
cpp_varname: gAggregateOperationResourceConsumptionMetrics
cpp_vartype: bool
default: false
redact: false
profileOperationResourceConsumptionMetrics:
description: "When true, records and profiles per-operation resource consumption metrics"
@@ -45,6 +46,7 @@ server_parameters:
cpp_varname: gProfileOperationResourceConsumptionMetrics
cpp_vartype: bool
default: false
redact: false
documentUnitSizeBytes:
description: "The size of a document unit in bytes for resource consumption metrics collection"
@@ -55,6 +57,7 @@ server_parameters:
default: 128
validator:
gte: 1
redact: false
indexEntryUnitSizeBytes:
description: "The size of an index entry unit for resource consumption metrics collection"
@@ -65,6 +68,7 @@ server_parameters:
default: 16
validator:
gte: 1
redact: false
totalUnitWriteSizeBytes:
description: "The size of a (doc + index) unit in written bytes for resource consumption metrics collection"
@@ -75,3 +79,4 @@ server_parameters:
default: 128
validator:
gte: 1
redact: false

View File

@@ -38,3 +38,4 @@ server_parameters:
cpp_vartype: bool
cpp_varname: reportOpWriteConcernCountersInServerStatus
default: false
redact: false

View File

@@ -35,6 +35,8 @@ server_parameters:
cpp_vartype: 'AtomicWord<bool>'
cpp_varname: 'gFlowControlEnabled'
default: true
redact: false
flowControlTargetLagSeconds:
description: 'Target maximum majority committed lag with flow control enabled'
set_at: [ startup, runtime ]
@@ -42,6 +44,8 @@ server_parameters:
cpp_varname: 'gFlowControlTargetLagSeconds'
default: 10
validator: { gt: 0 }
redact: false
flowControlThresholdLagPercentage:
description: 'Threshold percentage of target lag where flow control will become engaged'
set_at: [ startup, runtime ]
@@ -49,6 +53,8 @@ server_parameters:
cpp_varname: 'gFlowControlThresholdLagPercentage'
default: 0.5
validator: { gte: 0.0, lte: 1.0 }
redact: false
flowControlMaxSamples:
description: 'The maximum number of samples the flow control algorithm will hold onto.'
set_at: [ startup ]
@@ -56,6 +62,8 @@ server_parameters:
cpp_varname: 'gFlowControlMaxSamples'
default: 1000000
validator: { gt: 0 }
redact: false
flowControlSamplePeriod:
description: 'How often flow control samples optimes. Smaller periods have higher resolution, but will suffer degredation sooner in the event of commit point lag.'
set_at: [ startup, runtime ]
@@ -63,6 +71,8 @@ server_parameters:
cpp_varname: 'gFlowControlSamplePeriod'
default: 1000
validator: { gt: 0 }
redact: false
flowControlMinTicketsPerSecond:
description: 'The minimum number of tickets flow control will hand out per second. A smaller value will have better resolution on batch-write workloads, but may unintentionally delay system operations.'
set_at: [ startup, runtime ]
@@ -70,6 +80,8 @@ server_parameters:
cpp_varname: 'gFlowControlMinTicketsPerSecond'
default: 100
validator: { gte: 0 }
redact: false
flowControlDecayConstant:
description: 'The rate at which flow control will throttle based on how lagged the commit point is in time relative to the flow control threshold.'
set_at: [ startup, runtime ]
@@ -77,6 +89,8 @@ server_parameters:
cpp_varname: 'gFlowControlDecayConstant'
default: 0.5
validator: { gt: 0.0, lt: 1.0 }
redact: false
flowControlFudgeFactor:
description: 'When commit point lag is close to the threshold lag, the primary should track the sustainer rate, with some small penalty. This value represents that penalty. A value of 1.0 represents no penalty, a value close to 0.0 represents a large penalty. Reducing oscillations should keep this value close to 1.0.'
set_at: [ startup, runtime ]
@@ -84,6 +98,8 @@ server_parameters:
cpp_varname: 'gFlowControlFudgeFactor'
default: 0.95
validator: { gt: 0.0, lte: 1.0 }
redact: false
flowControlTicketAdderConstant:
description: 'When the commit point lag is small, flow control will add at least this many tickets per second. This provides meaningful ticket increase when immediately recovering from stalling events.'
set_at: [ startup, runtime ]
@@ -91,6 +107,8 @@ server_parameters:
cpp_varname: 'gFlowControlTicketAdderConstant'
default: 1000
validator: { gt: 0 }
redact: false
flowControlTicketMultiplierConstant:
description: 'When the commit point lag is small, flow control will increase its ticket allocation by this factor. This provides meaningful ticket increase in more general recovery scenarios.'
set_at: [ startup, runtime ]
@@ -98,6 +116,8 @@ server_parameters:
cpp_varname: 'gFlowControlTicketMultiplierConstant'
default: 1.05
validator: { gt: 1.0 }
redact: false
flowControlWarnThresholdSeconds:
description: 'If flow control detects the replica set is lagged and the sustainer point is not moving, it will eventually log a warning. This value controls how much time the flow control is in this state before it logs. A value of zero will disable the warnings.'
set_at: [ startup, runtime ]
@@ -105,3 +125,4 @@ server_parameters:
cpp_varname: 'gFlowControlWarnThresholdSeconds'
default: 10
validator: { gte: 0 }
redact: false

View File

@@ -45,6 +45,8 @@ server_parameters:
validator:
gte: 0.0
lte: { expr: 'StorageGlobalParams::kMaxSyncdelaySecs' }
redact: false
# This is an alias for the 'storage.journal.commitIntervalMs' config, and the default is defined in the
# StorageGlobalParams struct to resolve a conflict between config parameter and set parameter evaluation.
journalCommitInterval:
@@ -54,12 +56,16 @@ server_parameters:
validator:
gte: 1
lte: { expr: 'StorageGlobalParams::kMaxJournalCommitIntervalMs' }
redact: false
takeUnstableCheckpointOnShutdown:
description: 'Take unstable checkpoint on shutdown'
cpp_vartype: bool
cpp_varname: gTakeUnstableCheckpointOnShutdown
set_at: startup
default: false
redact: false
operationMemoryPoolBlockInitialSizeKB:
description: 'Initial block size in KB for the per operation temporary object memory pool'
set_at: [ startup, runtime ]
@@ -68,6 +74,8 @@ server_parameters:
default: 1
validator:
gte: 1
redact: false
operationMemoryPoolBlockMaxSizeKB:
description: 'Maximum block size in KB for the per operation temporary object memory pool'
set_at: [ startup, runtime ]
@@ -76,6 +84,7 @@ server_parameters:
default: 2048
validator:
gte: 1
redact: false
indexMaxNumGeneratedKeysPerDocument:
description: 'Maximum number of index keys a single document is allowed to generate'
@@ -85,12 +94,14 @@ server_parameters:
default: 100000
validator:
gte: 200
redact: false
storageGlobalParams.directoryperdb:
description: 'Read-only view of directory per db config parameter'
set_at: 'readonly'
cpp_class:
name: StorageDirectoryPerDbParameter
redact: false
timeseriesValidateCompressedBuckets:
description: 'Validate that there is no data loss before committing compressed timeseries buckets'
@@ -98,6 +109,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: gValidateTimeseriesCompression
default: true
redact: false
maintainValidCursorsAcrossSBEReadCommands:
description: "Enable maintaining valid cursors across SBE read commands (find, agg, getMore)"
@@ -105,6 +117,7 @@ server_parameters:
cpp_varname: gMaintainValidCursorsAcrossReadCommands
cpp_vartype: bool
default: false
redact: false
maintainValidCursorsAcrossSBEYield:
description: "Enable retaining valid cursors across SBE query yield"
@@ -112,6 +125,7 @@ server_parameters:
cpp_varname: gYieldingSupportForSBE
cpp_vartype: bool
default: false
redact: false
internalInsertMaxBatchSize:
description: "Maximum number of documents that we will insert in a single batch."
@@ -123,6 +137,7 @@ server_parameters:
is_constexpr: false
validator:
gt: 0
redact: false
maxNumberOfBatchedOperationsInSingleOplogEntry:
description: >-
@@ -134,6 +149,7 @@ server_parameters:
cpp_varname: gMaxNumberOfBatchedOperationsInSingleOplogEntry
default: 2147483647 # INT_MAX
validator: { gte: 1 }
redact: false
maxSizeOfBatchedOperationsInSingleOplogEntryBytes:
description: >-
@@ -145,6 +161,7 @@ server_parameters:
cpp_varname: gMaxSizeOfBatchedOperationsInSingleOplogEntryBytes
default: 16777216 # 16 MB
validator: { gte: 1 }
redact: false
maxNumberOfInsertsBatchInsertsForRenameAcrossDatabases:
description: >-
@@ -155,6 +172,7 @@ server_parameters:
cpp_varname: gMaxNumberOfInsertsBatchInsertsForRenameAcrossDatabases
default: 500
validator: { gte: 1, lte: 16777216 }
redact: false
maxSizeOfBatchedInsertsForRenameAcrossDatabasesBytes:
description: >-
@@ -166,6 +184,7 @@ server_parameters:
default: 4194304 # 4 MB, an arbitrary but conservative fraction of the 16 MB BSON limit. Similar
# in spirit to batchedDeletesTargetStagedDocBytes.
validator: { gte: 1, lte: 16777216 }
redact: false
collectionSamplingLogIntervalSeconds:
description: 'The approximate interval between log messages indicating collection sampling progress. Once interval seconds have elapsed since the last log message, a progress message will be logged after the current sample is completed. A value of zero will disable this logging.'
@@ -176,6 +195,7 @@ server_parameters:
- oplogSamplingLogIntervalSeconds
default: 10
validator: { gte: 0 }
redact: false
allowUnsafeUntimestampedWrites:
description: >-
@@ -184,6 +204,7 @@ server_parameters:
cpp_varname: gAllowUnsafeUntimestampedWrites
cpp_vartype: bool
default: false
redact: false
skipDroppingHashedShardKeyIndex:
description: >-
@@ -192,6 +213,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: skipDroppingHashedShardKeyIndex
default: false
redact: false
enableAutoCompaction:
description: 'Enable auto compact at startup. Used for testing purposes.'
@@ -199,7 +221,7 @@ server_parameters:
cpp_varname: gEnableAutoCompaction
set_at: startup
default: false
redact: false
feature_flags:
featureFlagLargeBatchedOperations:

View File

@@ -38,6 +38,7 @@ server_parameters:
cpp_varname: "enableIndexBuildCommitQuorum"
default: true
test_only: true
redact: false
maxNumActiveUserIndexBuilds:
description: >
@@ -53,6 +54,7 @@ server_parameters:
default: 3
validator:
gte: 0
redact: false
resumableIndexBuildMajorityOpTimeTimeoutMillis:
description: >
@@ -67,6 +69,7 @@ server_parameters:
cpp_vartype: long long
cpp_varname: gResumableIndexBuildMajorityOpTimeTimeoutMillis
default: 10000
redact: false
indexBuildMinAvailableDiskSpaceMB:
description: Minimum disk space required to build an index
@@ -78,3 +81,4 @@ server_parameters:
gte: 0
# This is equal to std::numeric_limits<int64_t>::max() / (1024 * 1024)
lte: 8796093022207
redact: false

View File

@@ -36,6 +36,8 @@ server_parameters:
cpp_varname: gMaxOplogTruncateMarkersAfterStartup
default: 100
validator: { gt: 0 }
redact: false
maxOplogTruncationPointsDuringStartup:
description: 'Maximum allowable number of oplog truncation points during startup'
set_at: [ startup ]
@@ -43,6 +45,8 @@ server_parameters:
cpp_varname: gMaxOplogTruncateMarkersDuringStartup
default: 100
validator: { gt: 0 }
redact: false
minOplogTruncationPoints:
description: 'Minimum allowable number of oplog truncation points'
set_at: [ startup ]
@@ -50,6 +54,8 @@ server_parameters:
cpp_varname: gMinOplogTruncateMarkers
default: 10
validator: { gt: 0 }
redact: false
oplogTruncationPointSizeMB:
description: 'Oplog truncation point size in MB used to determine the number of oplog truncation points for an oplog of a given size. The size will be rounded up to the maximum size of an internal BSON object.'
set_at: [ startup ]
@@ -57,6 +63,8 @@ server_parameters:
cpp_varname: gOplogTruncateMarkerSizeMB
default: 0
validator: { gte: 0 }
redact: false
oplogTruncationCheckPeriodSeconds:
description: 'The number of seconds the oplog truncation thread wakes up periodically to check and truncate oplog.'
set_at: [ startup ]
@@ -64,3 +72,4 @@ server_parameters:
cpp_varname: gOplogTruncationCheckPeriodSeconds
default: 300
validator: { gt: 300 }
redact: false

View File

@@ -46,6 +46,7 @@ server_parameters:
# Defer the initialization with condition: false
# and allow those places to manually set themselves up.
condition: { expr: false }
redact: false
wiredTigerSessionCloseIdleTimeSecs:
description: 'Close idle wiredtiger sessions in the session cache after this many seconds'
@@ -57,6 +58,7 @@ server_parameters:
expr: 'kDebugBuild ? 5 : 300'
validator:
gte: 0
redact: false
# The "wiredTigerCursorCacheSize" parameter has the following meaning.
#
@@ -89,6 +91,7 @@ server_parameters:
cpp_vartype: 'AtomicWord<std::int32_t>'
cpp_varname: gWiredTigerCursorCacheSize
default: -100
redact: false
wiredTigerMaxCacheOverflowSizeGB:
description: >-
@@ -99,6 +102,7 @@ server_parameters:
cpp_vartype: 'AtomicWord<double>'
cpp_varname: gWiredTigerMaxCacheOverflowSizeGBDeprecated
default: 0
redact: false
wiredTigerEvictionDirtyTargetGB:
description: >-
@@ -113,6 +117,7 @@ server_parameters:
validator:
gte: 0.01
lte: 10000
redact: false
wiredTigerEvictionDirtyMaxGB:
description: >-
@@ -126,6 +131,7 @@ server_parameters:
validator:
gte: 0.01
lte: 10000
redact: false
wiredTigerEvictionDebugMode:
description: >-
@@ -138,6 +144,7 @@ server_parameters:
# This parameter is only allowed in debug builds.
condition:
constexpr: 'kDebugBuild'
redact: false
wiredTigerFileHandleCloseIdleTime:
description: >-
@@ -149,6 +156,7 @@ server_parameters:
default: 600
validator:
gte: 1
redact: false
wiredTigerExtraDiagnostics:
description: >-
@@ -161,6 +169,7 @@ server_parameters:
cpp_varname: "gWiredTigerExtraDiagnostics"
validator:
callback: validateExtraDiagnostics
redact: false
wiredTigerFileHandleCloseMinimum:
description: >-
@@ -171,6 +180,7 @@ server_parameters:
default: 2000
validator:
gte: 1
redact: false
wiredTigerFileHandleCloseScanInterval:
description: >-
@@ -181,12 +191,14 @@ server_parameters:
default: 10
validator:
gte: 1
redact: false
wiredTigerDirectoryForIndexes:
description: 'Read-only view of DirectoryForIndexes config parameter'
set_at: 'readonly'
cpp_class:
name: WiredTigerDirectoryForIndexesParameter
redact: false
wiredTigerSkipTableLoggingChecksOnStartup:
description: >-
@@ -195,6 +207,7 @@ server_parameters:
cpp_vartype: 'bool'
cpp_varname: gWiredTigerSkipTableLoggingChecksOnStartup
default: false
redact: false
wiredTigerStressConfig:
description: >-
@@ -203,6 +216,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gWiredTigerStressConfig
default: false
redact: false
wiredTigerSizeStorerPeriodicSyncHits:
description: >-
@@ -213,6 +227,7 @@ server_parameters:
default: 100000
validator:
gte: 1
redact: false
wiredTigerSizeStorerPeriodicSyncPeriodMillis:
description: >-
@@ -223,3 +238,4 @@ server_parameters:
default: 60000
validator:
gte: 1
redact: false

View File

@@ -42,6 +42,8 @@ server_parameters:
cpp_vartype: "AtomicWord<bool>"
cpp_varname: "gPerformTimeseriesCompressionIntermediateDataIntegrityCheck"
default: true
redact: false
"timeseriesBucketMaxCount":
description: "Maximum number of measurements to store in a single bucket"
set_at: [ startup ]
@@ -49,6 +51,8 @@ server_parameters:
cpp_varname: "gTimeseriesBucketMaxCount"
default: 1000
validator: { gte: 1 }
redact: false
"timeseriesBucketMaxSize":
description: "Maximum size in bytes of measurements to store together in a single bucket"
set_at: [ startup ]
@@ -56,6 +60,8 @@ server_parameters:
cpp_varname: "gTimeseriesBucketMaxSize"
default: 128000 # 125KB
validator: { gte: 1 }
redact: false
"timeseriesIdleBucketExpiryMemoryUsageThreshold":
description: "The threshold in bytes for bucket catalog memory usage above which idle
buckets will be expired. If set to a non-positive number, the threshold will
@@ -63,12 +69,16 @@ server_parameters:
set_at: [ startup, runtime ]
cpp_varname: "gTimeseriesIdleBucketExpiryMemoryUsageThresholdBytes"
default: 0
redact: false
"timeseriesSideBucketCatalogMemoryUsageThreshold":
description: "The threshold in bytes for side bucket catalog memory usage above which idle
buckets will be expired."
set_at: [ startup, runtime ]
cpp_varname: "gTimeseriesSideBucketCatalogMemoryUsageThresholdBytes"
default: 104857600 # 100 MB
redact: false
"timeseriesIdleBucketExpiryMaxCountPerAttempt":
description: "The maximum number of buckets that may be closed due to expiry at each attempt"
set_at: [ startup ]
@@ -76,6 +86,8 @@ server_parameters:
cpp_varname: "gTimeseriesIdleBucketExpiryMaxCountPerAttempt"
default: 3
validator: { gte: 2 }
redact: false
"timeseriesBucketMinCount":
description: "Time-series buckets that need to be closed due to size
(timeseriesBucketMaxSize) but haven't crossed this threshold are considered to
@@ -88,6 +100,8 @@ server_parameters:
cpp_varname: "gTimeseriesBucketMinCount"
default: 10
validator: { gte: 1 }
redact: false
"timeseriesBucketMinSize":
description: "If there is high memory pressure on the system, we will lower the maximum
size (in bytes) of measurements we pack into buckets. This value represents
@@ -97,6 +111,8 @@ server_parameters:
cpp_varname: "gTimeseriesBucketMinSize"
default: 5120 # 5KB
validator: { gte: 1 }
redact: false
"timeseriesInsertMaxRetriesOnDuplicates":
description: "In rare cases due to collision from OID generation, we will retry inserting
those bucket documents automatically for a limited number of times. This value
@@ -106,6 +122,8 @@ server_parameters:
cpp_varname: "gTimeseriesInsertMaxRetriesOnDuplicates"
default: 32
validator: {gte: 1}
redact: false
"timeseriesLargeMeasurementThreshold":
description: "When a measurement larger than the threshold (in bytes) is being inserted into
a bucket, we use the measurements uncompressed size towards the bucket size
@@ -117,6 +135,7 @@ server_parameters:
cpp_varname: "gTimeseriesLargeMeasurementThreshold"
default: 0
validator: {gte: 0}
redact: false
enums:
BucketGranularity:

View File

@@ -89,6 +89,7 @@ server_parameters:
cpp_varname: gTrafficRecordingDirectory
validator:
callback: 'validateTrafficRecordDestination'
redact: false
AlwaysRecordTraffic:
description: 'Start server with traffic recording enabled, and ensure all records are flushed. Test only.'
@@ -96,3 +97,4 @@ server_parameters:
set_at: startup
cpp_vartype: std::string
cpp_varname: gAlwaysRecordTraffic
redact: false

View File

@@ -44,6 +44,7 @@ server_parameters:
# 5 milliseconds will help avoid deadlocks, but will still allow fast-running metadata operations
# to run without aborting transactions.
default: 5
redact: false
transactionLifetimeLimitSeconds:
description: >-
@@ -56,6 +57,7 @@ server_parameters:
gte: 1
on_update: std::ref(TransactionParticipant::observeTransactionLifetimeLimitSeconds)
default: 60
redact: false
maxNumberOfTransactionOperationsInSingleOplogEntry:
description: >-
@@ -66,6 +68,7 @@ server_parameters:
cpp_varname: gMaxNumberOfTransactionOperationsInSingleOplogEntry
default: 2147483647 # INT_MAX
validator: { gte: 1 }
redact: false
transactionSizeLimitBytes:
description: >-
@@ -75,3 +78,4 @@ server_parameters:
cpp_varname: gTransactionSizeLimitBytes
default:
expr: std::numeric_limits<long long>::max()
redact: false

View File

@@ -36,6 +36,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: ttlMonitorEnabled
default: true
redact: false
ttlMonitorSleepSecs:
description: "Period of TTL monitor thread (used for testing)."
@@ -46,6 +47,7 @@ server_parameters:
default: 60
validator:
gt: 0
redact: false
ttlMonitorBatchDeletes:
description:
@@ -56,6 +58,7 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: ttlMonitorBatchDeletes
default: true
redact: false
ttlMonitorSubPassTargetSecs:
description:
@@ -70,6 +73,7 @@ server_parameters:
default: 60
validator:
gte: 0
redact: false
ttlIndexDeleteTargetTimeMS:
description:
@@ -82,6 +86,7 @@ server_parameters:
default: 1000
validator:
gte: 0
redact: false
ttlIndexDeleteTargetDocs:
description:
@@ -94,6 +99,7 @@ server_parameters:
default: 50000
validator:
gte: 0
redact: false
ttlCollLowPrioritySubpassLimit:
description:
@@ -106,4 +112,4 @@ server_parameters:
default: 10
validator:
gt: 0
redact: false

View File

@@ -90,3 +90,4 @@ server_parameters:
expr: (365 * 24 * 60 * 60) # one year
validator:
gt: 0
redact: false

View File

@@ -44,6 +44,8 @@ server_parameters:
set_at: [ startup, runtime ]
cpp_vartype: AtomicWord<bool>
cpp_varname: gOpportunisticSecondaryTargeting
redact: false
slowConnectionThresholdMillis:
description: >-
Log egress connections that take longer than this threshold, in milliseconds, to establish.
@@ -51,3 +53,4 @@ server_parameters:
cpp_vartype: AtomicWord<long long>
cpp_varname: gSlowConnectionThresholdMillis
default: 100
redact: false

View File

@@ -38,4 +38,4 @@ server_parameters:
cpp_vartype: AtomicWord<bool>
cpp_varname: "gPinTaskExecCursorConns"
default: false
redact: false

View File

@@ -40,3 +40,4 @@ server_parameters:
default: 1
condition:
preprocessor: '!defined(__linux__)'
redact: false

View File

@@ -100,6 +100,7 @@ server_parameters:
cpp_vartype: TestIntClusterParameterStorage
cpp_varname: intStorage
test_only: true
redact: false
testStrClusterParameter:
set_at: cluster
@@ -107,6 +108,7 @@ server_parameters:
cpp_vartype: TestStrClusterParameterStorage
cpp_varname: strStorage
test_only: true
redact: false
testBoolClusterParameter:
set_at: cluster
@@ -114,6 +116,7 @@ server_parameters:
cpp_vartype: TestBoolClusterParameterStorage
cpp_varname: boolStorage
test_only: true
redact: false
cwspTestNeedsFeatureFlagClusterWideToaster:
description: "Server Parameter gated on featureFlagClusterWideToaster"
@@ -123,3 +126,4 @@ server_parameters:
test_only: true
condition:
feature_flag: gFeatureFlagClusterWideToaster
redact: false

View File

@@ -46,3 +46,4 @@ server_parameters:
validator:
gte: 1
lte: 86400
redact: false

View File

@@ -57,9 +57,11 @@ server_parameters:
description: "Cluster server parameter OpObserver test param"
cpp_vartype: ClusterServerParameterTest
cpp_varname: cspTestStorage
redact: false
cspTest2:
set_at: cluster
description: "Cluster server parameter OpObserver test param #2"
cpp_vartype: ClusterServerParameterTest
cpp_varname: cspTest2Storage
redact: false

View File

@@ -37,12 +37,16 @@ server_parameters:
description: "Specialized server parameter with dummy value."
set_at: [ startup, runtime ]
cpp_class: SpecializedDummyServerParameter
redact: false
specializedWithCtor:
description: "Provide a custom constructor implementation."
set_at: startup
cpp_class:
name: SpecializedConstructorServerParameter
override_ctor: true
redact: false
specializedWithValue:
description: "Attach a simple value."
set_at: startup
@@ -50,6 +54,8 @@ server_parameters:
name: SpecializedWithValueServerParameter
data: std::int32_t
default: 43
redact: false
specializedWithStringValue:
description: "Attach a string."
set_at: startup
@@ -57,6 +63,8 @@ server_parameters:
name: SpecializedWithStringValueServerParameter
data: std::string
default: 'Hello World'
redact: false
specializedWithAtomicValue:
description: "Attach a thread safe value."
set_at: [ startup, runtime ]
@@ -64,6 +72,8 @@ server_parameters:
name: SpecializedWithAtomicValueServerParameter
data: AtomicWord<std::int32_t>
default: 42
redact: false
specializedWithMultiValue:
description: "Attach a struct."
set_at: startup
@@ -71,6 +81,8 @@ server_parameters:
name: SpecializedMultiValueServerParameter
data: ExtraDataForServerParameter
override_set: true
redact: false
specializedWithCtorAndValue:
description: "Attach a simple value and a constum constructor."
set_at: startup
@@ -79,6 +91,8 @@ server_parameters:
data: std::int32_t
override_ctor: true
default: 44
redact: false
specializedWithOptions:
description: "Use optional attributes."
set_at: startup
@@ -87,10 +101,13 @@ server_parameters:
test_only: false
condition: { expr: true }
deprecated_name: deprecatedWithOptions
specializedRuntimeOnly:
description: "Only settable at runtime."
set_at: runtime
cpp_class: SpecializedRuntimeOnly
redact: false
specializedRedactedSettable:
description: "Redacted and runtime-settable."
set_at: runtime
@@ -99,6 +116,7 @@ server_parameters:
data: std::string
redact: true
test_only: false
specializedWithValidate:
description: "Has custom validation method"
set_at: runtime
@@ -106,6 +124,8 @@ server_parameters:
name: SpecializedWithValidateServerParameter
override_validate: true
data: std::int32_t
redact: false
specializedCluster:
description: "Specialized cluster server parameter"
set_at: cluster
@@ -114,3 +134,4 @@ server_parameters:
override_set: true
override_validate: true
data: SpecializedClusterServerParameterData
redact: false

View File

@@ -45,6 +45,7 @@ server_parameters:
callback: "validateOddSP"
gt: 0
on_update: "onUpdateStdIntPreallocated"
redact: false
stdIntDeclared:
set_at: [ startup, runtime ]
@@ -55,18 +56,21 @@ server_parameters:
validator:
gte: 0
lt: 1000
redact: false
startupString:
set_at: startup
description: "Create a startup-only string, and declare storage"
cpp_vartype: "std::string"
cpp_varname: gStartupString
redact: false
runtimeBoostDouble:
set_at: runtime
description: "Create a runtime-only string, using boost::synchronized_value"
cpp_vartype: "synchronized_value<double>"
cpp_varname: gRuntimeBoostDouble
redact: false
startupStringRedacted:
set_at: startup
@@ -84,6 +88,7 @@ server_parameters:
validator:
gte: { expr: kStartupIntWithExpressionsMinimum, is_constexpr: false }
lte: { expr: kStartupIntWithExpressionsMaximum, is_constexpr: true }
redact: false
'ugly complicated-name.sp':
set_at: startup
@@ -91,6 +96,7 @@ server_parameters:
cpp_vartype: bool
cpp_varname: gUglyComplicatedNameSp
default: true
redact: false
changeStreamOptions:
set_at: cluster
@@ -100,4 +106,4 @@ server_parameters:
validator:
callback: "validateNonNegativeExpireAfterSeconds"
on_update: "onUpdateChangeStreamOptions"
redact: false

View File

@@ -39,3 +39,4 @@ server_parameters:
cpp_class:
name: RedactEncryptedFields
override_set: true
redact: false

View File

@@ -39,4 +39,4 @@ server_parameters:
validator:
gte: { expr: 'BSONDepth::kBSONDepthParameterFloor' }
lte: { expr: 'BSONDepth::kBSONDepthParameterCeiling' }
redact: false

Some files were not shown because too many files have changed in this diff Show More