mirror of https://github.com/mongodb/mongo
SERVER-106306 Convert UWE query knob to an IFR flag (#44857)
GitOrigin-RevId: 36ffa983ae95f421d2f385a0a2efaf7d050b7489
This commit is contained in:
parent
63e6747093
commit
b1f3237a1a
|
|
@ -28,3 +28,5 @@
|
||||||
- featureFlagPrimaryDrivenIndexBuilds
|
- featureFlagPrimaryDrivenIndexBuilds
|
||||||
# TODO SERVER-104494 SERVER-104258: Turn this back on once the issues are fixed.
|
# TODO SERVER-104494 SERVER-104258: Turn this back on once the issues are fixed.
|
||||||
- featureFlagReshardingCloneNoRefresh
|
- featureFlagReshardingCloneNoRefresh
|
||||||
|
# TODO: SERVER-91308 Enable unified write executor.
|
||||||
|
- featureFlagUnifiedWriteExecutor
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ executor:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
logComponentVerbosity:
|
logComponentVerbosity:
|
||||||
command: 1
|
command: 1
|
||||||
network:
|
network:
|
||||||
|
|
@ -37,7 +37,7 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
logComponentVerbosity:
|
logComponentVerbosity:
|
||||||
command: 1
|
command: 1
|
||||||
network:
|
network:
|
||||||
|
|
|
||||||
|
|
@ -23,11 +23,11 @@ executor:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckReplDBHash
|
- class: CheckReplDBHash
|
||||||
|
|
|
||||||
|
|
@ -34,11 +34,11 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
coordinateCommitReturnImmediatelyAfterPersistingDecision: true
|
coordinateCommitReturnImmediatelyAfterPersistingDecision: true
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 2
|
num_rs_nodes_per_shard: 2
|
||||||
hooks:
|
hooks:
|
||||||
- class: DropSessionsCollection
|
- class: DropSessionsCollection
|
||||||
|
|
|
||||||
|
|
@ -17,17 +17,17 @@ executor:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
doNotUseRawDataOperations: true
|
doNotUseRawDataOperations: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
fixture:
|
fixture:
|
||||||
class: ShardedClusterFixture
|
class: ShardedClusterFixture
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 1
|
num_rs_nodes_per_shard: 1
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
hooks:
|
hooks:
|
||||||
|
|
|
||||||
|
|
@ -15,9 +15,9 @@ executor:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
doNotUseRawDataOperations: true
|
doNotUseRawDataOperations: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
setParametersMongos:
|
setParametersMongos:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
nodb: ""
|
nodb: ""
|
||||||
matrix_suite: true
|
matrix_suite: true
|
||||||
selector:
|
selector:
|
||||||
|
|
|
||||||
|
|
@ -34,9 +34,9 @@
|
||||||
shell_options:
|
shell_options:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
setParametersMongos:
|
setParametersMongos:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
||||||
- name: unified_write_executor_sharding_jscore_passthrough
|
- name: unified_write_executor_sharding_jscore_passthrough
|
||||||
value:
|
value:
|
||||||
|
|
@ -45,16 +45,16 @@
|
||||||
shell_options:
|
shell_options:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
fixture:
|
fixture:
|
||||||
class: ShardedClusterFixture
|
class: ShardedClusterFixture
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 1
|
num_rs_nodes_per_shard: 1
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ executor:
|
||||||
shell_options:
|
shell_options:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckReplDBHash
|
- class: CheckReplDBHash
|
||||||
- class: CheckMetadataConsistencyInBackground
|
- class: CheckMetadataConsistencyInBackground
|
||||||
|
|
@ -57,9 +57,9 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 1
|
num_rs_nodes_per_shard: 1
|
||||||
|
|
|
||||||
|
|
@ -231,8 +231,8 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
|
||||||
|
|
@ -56,7 +56,7 @@ executor:
|
||||||
runningWithCausalConsistency: true
|
runningWithCausalConsistency: true
|
||||||
runningWithBalancer: false
|
runningWithBalancer: false
|
||||||
implicitlyShardOnCreateCollectionOnly: true
|
implicitlyShardOnCreateCollectionOnly: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckShardFilteringMetadata
|
- class: CheckShardFilteringMetadata
|
||||||
- class: CheckReplDBHashInBackground
|
- class: CheckReplDBHashInBackground
|
||||||
|
|
@ -73,7 +73,7 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
oplogSize: 1024
|
oplogSize: 1024
|
||||||
|
|
@ -83,7 +83,7 @@ executor:
|
||||||
roleGraphInvalidationIsFatal: 1
|
roleGraphInvalidationIsFatal: 1
|
||||||
queryAnalysisWriterIntervalSecs: 1
|
queryAnalysisWriterIntervalSecs: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 3
|
num_rs_nodes_per_shard: 3
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
num_mongos: 2
|
num_mongos: 2
|
||||||
|
|
|
||||||
|
|
@ -67,7 +67,7 @@ executor:
|
||||||
runningWithCausalConsistency: true
|
runningWithCausalConsistency: true
|
||||||
runningWithBalancer: true
|
runningWithBalancer: true
|
||||||
implicitlyShardOnCreateCollectionOnly: true
|
implicitlyShardOnCreateCollectionOnly: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckShardFilteringMetadata
|
- class: CheckShardFilteringMetadata
|
||||||
|
|
@ -84,7 +84,7 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
oplogSize: 1024
|
oplogSize: 1024
|
||||||
|
|
@ -96,7 +96,7 @@ executor:
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
skipDroppingHashedShardKeyIndex: true
|
skipDroppingHashedShardKeyIndex: true
|
||||||
reshardingMinimumOperationDurationMillis: 0
|
reshardingMinimumOperationDurationMillis: 0
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 3
|
num_rs_nodes_per_shard: 3
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
num_mongos: 2
|
num_mongos: 2
|
||||||
|
|
|
||||||
|
|
@ -149,7 +149,7 @@ executor:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
findShardsOnConfigTimeoutMS: 30000 # giving legroom as this suite is doing initial sync
|
findShardsOnConfigTimeoutMS: 30000 # giving legroom as this suite is doing initial sync
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
shard_options:
|
shard_options:
|
||||||
all_nodes_electable: True
|
all_nodes_electable: True
|
||||||
mongod_options:
|
mongod_options:
|
||||||
|
|
@ -177,7 +177,7 @@ executor:
|
||||||
queryAnalysisWriterIntervalSecs: 1
|
queryAnalysisWriterIntervalSecs: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
skipDroppingHashedShardKeyIndex: true
|
skipDroppingHashedShardKeyIndex: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 3
|
num_rs_nodes_per_shard: 3
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
num_mongos: 2
|
num_mongos: 2
|
||||||
|
|
|
||||||
|
|
@ -94,7 +94,7 @@ executor:
|
||||||
runningWithSessions: true
|
runningWithSessions: true
|
||||||
traceExceptions: false
|
traceExceptions: false
|
||||||
implicitlyShardOnCreateCollectionOnly: true
|
implicitlyShardOnCreateCollectionOnly: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckShardFilteringMetadata
|
- class: CheckShardFilteringMetadata
|
||||||
- class: CheckReplDBHashInBackground
|
- class: CheckReplDBHashInBackground
|
||||||
|
|
@ -111,7 +111,7 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
oplogSize: 1024
|
oplogSize: 1024
|
||||||
|
|
@ -121,7 +121,7 @@ executor:
|
||||||
roleGraphInvalidationIsFatal: 1
|
roleGraphInvalidationIsFatal: 1
|
||||||
queryAnalysisWriterIntervalSecs: 1
|
queryAnalysisWriterIntervalSecs: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 3
|
num_rs_nodes_per_shard: 3
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
num_mongos: 2
|
num_mongos: 2
|
||||||
|
|
|
||||||
|
|
@ -99,7 +99,7 @@ executor:
|
||||||
traceExceptions: false
|
traceExceptions: false
|
||||||
runningWithBalancer: true
|
runningWithBalancer: true
|
||||||
implicitlyShardOnCreateCollectionOnly: true
|
implicitlyShardOnCreateCollectionOnly: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckShardFilteringMetadata
|
- class: CheckShardFilteringMetadata
|
||||||
|
|
@ -116,7 +116,7 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
oplogSize: 1024
|
oplogSize: 1024
|
||||||
|
|
@ -128,7 +128,7 @@ executor:
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
skipDroppingHashedShardKeyIndex: true
|
skipDroppingHashedShardKeyIndex: true
|
||||||
reshardingMinimumOperationDurationMillis: 0
|
reshardingMinimumOperationDurationMillis: 0
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 3
|
num_rs_nodes_per_shard: 3
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
num_mongos: 2
|
num_mongos: 2
|
||||||
|
|
|
||||||
|
|
@ -132,7 +132,7 @@ executor:
|
||||||
implicitlyShardOnCreateCollectionOnly: true
|
implicitlyShardOnCreateCollectionOnly: true
|
||||||
useActionPermittedFile: [ContinuousAddRemoveShard]
|
useActionPermittedFile: [ContinuousAddRemoveShard]
|
||||||
shardCollectionProbability: 0.5
|
shardCollectionProbability: 0.5
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
- class: ContinuousAddRemoveShard
|
- class: ContinuousAddRemoveShard
|
||||||
transition_configsvr: true
|
transition_configsvr: true
|
||||||
|
|
@ -159,7 +159,7 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
oplogSize: 1024
|
oplogSize: 1024
|
||||||
|
|
@ -172,7 +172,7 @@ executor:
|
||||||
skipDroppingHashedShardKeyIndex: true
|
skipDroppingHashedShardKeyIndex: true
|
||||||
reshardingMinimumOperationDurationMillis: 0
|
reshardingMinimumOperationDurationMillis: 0
|
||||||
balancerMigrationsThrottlingMs: 250
|
balancerMigrationsThrottlingMs: 250
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
failpoint.movePrimaryFailIfNeedToCloneMovableCollections:
|
failpoint.movePrimaryFailIfNeedToCloneMovableCollections:
|
||||||
data:
|
data:
|
||||||
comment: *movePrimaryComment
|
comment: *movePrimaryComment
|
||||||
|
|
|
||||||
|
|
@ -49,7 +49,7 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
|
|
@ -57,7 +57,7 @@ executor:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
roleGraphInvalidationIsFatal: 1
|
roleGraphInvalidationIsFatal: 1
|
||||||
queryAnalysisWriterIntervalSecs: 1
|
queryAnalysisWriterIntervalSecs: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
shard_options:
|
shard_options:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
|
|
@ -92,7 +92,7 @@ executor:
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
roleGraphInvalidationIsFatal: 1
|
roleGraphInvalidationIsFatal: 1
|
||||||
queryAnalysisWriterIntervalSecs: 1
|
queryAnalysisWriterIntervalSecs: 1
|
||||||
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
queryAnalysisSamplerConfigurationRefreshSecs: 1
|
||||||
|
|
|
||||||
|
|
@ -18,7 +18,7 @@ executor:
|
||||||
shell_options:
|
shell_options:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckReplDBHash
|
- class: CheckReplDBHash
|
||||||
- class: CheckMetadataConsistencyInBackground
|
- class: CheckMetadataConsistencyInBackground
|
||||||
|
|
@ -31,9 +31,9 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 2
|
num_rs_nodes_per_shard: 2
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ executor:
|
||||||
shell_options:
|
shell_options:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
- class: CheckReplDBHash
|
- class: CheckReplDBHash
|
||||||
- class: CheckMetadataConsistencyInBackground
|
- class: CheckMetadataConsistencyInBackground
|
||||||
|
|
@ -33,10 +33,10 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryFLEAlwaysUseEncryptedCollScanMode: 1
|
internalQueryFLEAlwaysUseEncryptedCollScanMode: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryFLEAlwaysUseEncryptedCollScanMode: 1
|
internalQueryFLEAlwaysUseEncryptedCollScanMode: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 2
|
num_rs_nodes_per_shard: 2
|
||||||
|
|
|
||||||
|
|
@ -282,7 +282,7 @@ executor:
|
||||||
defaultTransactionReadConcernLevel: "snapshot"
|
defaultTransactionReadConcernLevel: "snapshot"
|
||||||
defaultTransactionWriteConcernW: "majority"
|
defaultTransactionWriteConcernW: "majority"
|
||||||
defaultWriteConcernW: "majority"
|
defaultWriteConcernW: "majority"
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
networkErrorAndTxnOverrideConfig:
|
networkErrorAndTxnOverrideConfig:
|
||||||
wrapCRUDinTransactions: true
|
wrapCRUDinTransactions: true
|
||||||
sessionOptions:
|
sessionOptions:
|
||||||
|
|
@ -306,7 +306,7 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
logComponentVerbosity:
|
logComponentVerbosity:
|
||||||
|
|
@ -323,6 +323,6 @@ executor:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
numInitialSyncAttempts: 1
|
numInitialSyncAttempts: 1
|
||||||
coordinateCommitReturnImmediatelyAfterPersistingDecision: true
|
coordinateCommitReturnImmediatelyAfterPersistingDecision: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 2
|
num_rs_nodes_per_shard: 2
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
|
|
|
||||||
|
|
@ -328,7 +328,7 @@ executor:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
logRetryAttempts: true
|
logRetryAttempts: true
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
networkErrorAndTxnOverrideConfig:
|
networkErrorAndTxnOverrideConfig:
|
||||||
retryOnNetworkErrors: true
|
retryOnNetworkErrors: true
|
||||||
wrapCRUDinTransactions: true
|
wrapCRUDinTransactions: true
|
||||||
|
|
@ -369,7 +369,7 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
syncdelay: 5
|
syncdelay: 5
|
||||||
oplogSize: 1024
|
oplogSize: 1024
|
||||||
|
|
@ -388,7 +388,7 @@ executor:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
enableElectionHandoff: 0
|
enableElectionHandoff: 0
|
||||||
numInitialSyncAttempts: 1
|
numInitialSyncAttempts: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
num_rs_nodes_per_shard: 3
|
num_rs_nodes_per_shard: 3
|
||||||
configsvr_options:
|
configsvr_options:
|
||||||
|
|
|
||||||
|
|
@ -90,7 +90,7 @@ executor:
|
||||||
network:
|
network:
|
||||||
verbosity: 1
|
verbosity: 1
|
||||||
asio: 2
|
asio: 2
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
|
|
@ -101,5 +101,5 @@ executor:
|
||||||
asio: 2
|
asio: 2
|
||||||
replication:
|
replication:
|
||||||
heartbeats: 2
|
heartbeats: 2
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 2
|
num_rs_nodes_per_shard: 2
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ executor:
|
||||||
await import('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js');
|
await import('jstests/libs/override_methods/enable_causal_consistency_without_read_pref.js');
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
||||||
# node.
|
# node.
|
||||||
|
|
@ -57,8 +57,8 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,7 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
logComponentVerbosity:
|
logComponentVerbosity:
|
||||||
command: 1
|
command: 1
|
||||||
network:
|
network:
|
||||||
|
|
@ -101,7 +101,7 @@ executor:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
minSnapshotHistoryWindowInSeconds: 3600
|
minSnapshotHistoryWindowInSeconds: 3600
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
logComponentVerbosity:
|
logComponentVerbosity:
|
||||||
command: 1
|
command: 1
|
||||||
network:
|
network:
|
||||||
|
|
|
||||||
|
|
@ -81,8 +81,8 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ executor:
|
||||||
eval: "globalThis.testingReplication = true;"
|
eval: "globalThis.testingReplication = true;"
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
||||||
# node.
|
# node.
|
||||||
|
|
@ -50,8 +50,8 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
|
|
|
||||||
|
|
@ -51,7 +51,7 @@ executor:
|
||||||
await import('jstests/libs/override_methods/implicitly_shard_accessed_collections.js');
|
await import('jstests/libs/override_methods/implicitly_shard_accessed_collections.js');
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
hooks:
|
hooks:
|
||||||
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
# We don't execute dbHash or oplog consistency checks since there is only a single replica set
|
||||||
# node.
|
# node.
|
||||||
|
|
@ -65,9 +65,9 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_shards: 2
|
num_shards: 2
|
||||||
|
|
|
||||||
|
|
@ -297,10 +297,10 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
coordinateCommitReturnImmediatelyAfterPersistingDecision: true
|
coordinateCommitReturnImmediatelyAfterPersistingDecision: true
|
||||||
num_rs_nodes_per_shard: 2
|
num_rs_nodes_per_shard: 2
|
||||||
|
|
|
||||||
|
|
@ -103,5 +103,5 @@ executor:
|
||||||
global_vars:
|
global_vars:
|
||||||
TestData:
|
TestData:
|
||||||
setParametersMongos:
|
setParametersMongos:
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
nodb: ""
|
nodb: ""
|
||||||
|
|
|
||||||
|
|
@ -54,9 +54,9 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
num_rs_nodes_per_shard: 1
|
num_rs_nodes_per_shard: 1
|
||||||
|
|
|
||||||
|
|
@ -88,11 +88,11 @@ executor:
|
||||||
mongos_options:
|
mongos_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
mongod_options:
|
mongod_options:
|
||||||
set_parameters:
|
set_parameters:
|
||||||
enableTestCommands: 1
|
enableTestCommands: 1
|
||||||
internalQueryUnifiedWriteExecutor: true
|
featureFlagUnifiedWriteExecutor: true
|
||||||
reshardingMinimumOperationDurationMillis: 0
|
reshardingMinimumOperationDurationMillis: 0
|
||||||
useBatchedDeletesForRangeDeletion: true
|
useBatchedDeletesForRangeDeletion: true
|
||||||
num_rs_nodes_per_shard: 1
|
num_rs_nodes_per_shard: 1
|
||||||
|
|
|
||||||
|
|
@ -567,8 +567,8 @@ buildvariants:
|
||||||
exec_timeout_factor: 1.5
|
exec_timeout_factor: 1.5
|
||||||
test_flags: >-
|
test_flags: >-
|
||||||
--runAllFeatureFlagTests
|
--runAllFeatureFlagTests
|
||||||
--mongodSetParameters="{internalQueryUnifiedWriteExecutor: true}"
|
--mongodSetParameters="{featureFlagUnifiedWriteExecutor: true}"
|
||||||
--mongosSetParameters="{internalQueryUnifiedWriteExecutor: true}"
|
--mongosSetParameters="{featureFlagUnifiedWriteExecutor: true}"
|
||||||
# For now just unified write executor suites but tasks will be added as development continues.
|
# For now just unified write executor suites but tasks will be added as development continues.
|
||||||
tasks:
|
tasks:
|
||||||
- name: compile_integration_and_test_parallel_stream_TG
|
- name: compile_integration_and_test_parallel_stream_TG
|
||||||
|
|
|
||||||
|
|
@ -5,11 +5,11 @@ export function isUweEnabled(db) {
|
||||||
return !!assert.commandWorkedOrFailedWithCode(
|
return !!assert.commandWorkedOrFailedWithCode(
|
||||||
db.adminCommand({
|
db.adminCommand({
|
||||||
getParameter: 1,
|
getParameter: 1,
|
||||||
internalQueryUnifiedWriteExecutor: 1,
|
featureFlagUnifiedWriteExecutor: 1,
|
||||||
}),
|
}),
|
||||||
// Allow the error when the query knob is not present.
|
// Allow the error when the query knob is not present.
|
||||||
ErrorCodes.InvalidOptions,
|
ErrorCodes.InvalidOptions,
|
||||||
).internalQueryUnifiedWriteExecutor;
|
).featureFlagUnifiedWriteExecutor;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -68,7 +68,6 @@ const expectedParamDefaults = {
|
||||||
internalQueryDisablePlanCache: false,
|
internalQueryDisablePlanCache: false,
|
||||||
internalQueryFindCommandBatchSize: 101,
|
internalQueryFindCommandBatchSize: 101,
|
||||||
internalQuerySlotBasedExecutionHashAggIncreasedSpilling: "inDebug",
|
internalQuerySlotBasedExecutionHashAggIncreasedSpilling: "inDebug",
|
||||||
internalQueryUnifiedWriteExecutor: false,
|
|
||||||
};
|
};
|
||||||
|
|
||||||
function assertDefaultParameterValues() {
|
function assertDefaultParameterValues() {
|
||||||
|
|
@ -307,9 +306,6 @@ assertSetParameterSucceeds("internalQuerySlotBasedExecutionHashAggIncreasedSpill
|
||||||
assertSetParameterSucceeds("internalQuerySlotBasedExecutionHashAggIncreasedSpilling", "inDebug");
|
assertSetParameterSucceeds("internalQuerySlotBasedExecutionHashAggIncreasedSpilling", "inDebug");
|
||||||
assertSetParameterFails("internalQuerySlotBasedExecutionHashAggIncreasedSpilling", "random");
|
assertSetParameterFails("internalQuerySlotBasedExecutionHashAggIncreasedSpilling", "random");
|
||||||
|
|
||||||
assertSetParameterSucceeds("internalQueryUnifiedWriteExecutor", true);
|
|
||||||
assertSetParameterSucceeds("internalQueryUnifiedWriteExecutor", false);
|
|
||||||
|
|
||||||
assertSetParameterSucceeds("internalOrStageMaxMemoryBytes", 11);
|
assertSetParameterSucceeds("internalOrStageMaxMemoryBytes", 11);
|
||||||
assertSetParameterFails("internalOrStageMaxMemoryBytes", 0);
|
assertSetParameterFails("internalOrStageMaxMemoryBytes", 0);
|
||||||
assertSetParameterFails("internalOrStageMaxMemoryBytes", -1);
|
assertSetParameterFails("internalOrStageMaxMemoryBytes", -1);
|
||||||
|
|
|
||||||
|
|
@ -88,9 +88,9 @@ TEST_F(SessionsCollectionShardedTest, RefreshOneSessionOKTest) {
|
||||||
// Set up routing table for the logical sessions collection.
|
// Set up routing table for the logical sessions collection.
|
||||||
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
||||||
BSON("_id" << 1));
|
BSON("_id" << 1));
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweFlag : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweFlag);
|
||||||
auto future = launchAsync([&] {
|
auto future = launchAsync([&] {
|
||||||
auto now = Date_t::now();
|
auto now = Date_t::now();
|
||||||
auto thePast = now - Minutes(5);
|
auto thePast = now - Minutes(5);
|
||||||
|
|
@ -100,7 +100,7 @@ TEST_F(SessionsCollectionShardedTest, RefreshOneSessionOKTest) {
|
||||||
});
|
});
|
||||||
|
|
||||||
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(0,
|
BulkWriteCommandResponseCursor(0,
|
||||||
{BulkWriteReplyItem{0, Status::OK()}},
|
{BulkWriteReplyItem{0, Status::OK()}},
|
||||||
|
|
@ -173,9 +173,9 @@ TEST_F(SessionsCollectionShardedTest, RefreshOneSessionWriteErrTest) {
|
||||||
// Set up routing table for the logical sessions collection.
|
// Set up routing table for the logical sessions collection.
|
||||||
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
||||||
BSON("_id" << 1));
|
BSON("_id" << 1));
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweFlag : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweFlag);
|
||||||
|
|
||||||
auto future = launchAsync([&] {
|
auto future = launchAsync([&] {
|
||||||
auto now = Date_t::now();
|
auto now = Date_t::now();
|
||||||
|
|
@ -186,7 +186,7 @@ TEST_F(SessionsCollectionShardedTest, RefreshOneSessionWriteErrTest) {
|
||||||
});
|
});
|
||||||
|
|
||||||
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(
|
BulkWriteCommandResponseCursor(
|
||||||
0,
|
0,
|
||||||
|
|
@ -219,17 +219,16 @@ TEST_F(SessionsCollectionShardedTest, RemoveOneSessionOKTest) {
|
||||||
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
||||||
BSON("_id" << 1));
|
BSON("_id" << 1));
|
||||||
|
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweFlag : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweFlag);
|
||||||
|
|
||||||
auto future = launchAsync([&] {
|
auto future = launchAsync([&] {
|
||||||
_collection.removeRecords(operationContext(), {makeLogicalSessionIdForTest()});
|
_collection.removeRecords(operationContext(), {makeLogicalSessionIdForTest()});
|
||||||
});
|
});
|
||||||
|
|
||||||
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
||||||
// TODO lol
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(0,
|
BulkWriteCommandResponseCursor(0,
|
||||||
{BulkWriteReplyItem{0, Status::OK()}},
|
{BulkWriteReplyItem{0, Status::OK()}},
|
||||||
|
|
@ -273,17 +272,16 @@ TEST_F(SessionsCollectionShardedTest, RemoveOneSessionWriteErrTest) {
|
||||||
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
loadRoutingTableWithTwoChunksAndTwoShardsImpl(NamespaceString::kLogicalSessionsNamespace,
|
||||||
BSON("_id" << 1));
|
BSON("_id" << 1));
|
||||||
|
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweFlag : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweFlag);
|
||||||
|
|
||||||
auto future = launchAsync([&] {
|
auto future = launchAsync([&] {
|
||||||
_collection.removeRecords(operationContext(), {makeLogicalSessionIdForTest()});
|
_collection.removeRecords(operationContext(), {makeLogicalSessionIdForTest()});
|
||||||
});
|
});
|
||||||
|
|
||||||
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const RemoteCommandRequest& request) {
|
||||||
// TODO
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(
|
BulkWriteCommandResponseCursor(
|
||||||
0,
|
0,
|
||||||
|
|
|
||||||
|
|
@ -315,3 +315,10 @@ feature_flags:
|
||||||
cpp_varname: gFeatureFlagPathArrayness
|
cpp_varname: gFeatureFlagPathArrayness
|
||||||
fcv_gated: false
|
fcv_gated: false
|
||||||
default: false
|
default: false
|
||||||
|
|
||||||
|
featureFlagUnifiedWriteExecutor:
|
||||||
|
description: "Feature flag to use the unified write executor."
|
||||||
|
cpp_varname: "gFeatureFlagUnifiedWriteExecutor"
|
||||||
|
default: false
|
||||||
|
fcv_gated: false
|
||||||
|
incremental_rollout_phase: in_development
|
||||||
|
|
|
||||||
|
|
@ -1667,14 +1667,6 @@ server_parameters:
|
||||||
default: false
|
default: false
|
||||||
redact: false
|
redact: false
|
||||||
|
|
||||||
internalQueryUnifiedWriteExecutor:
|
|
||||||
description: "Boolean flag to use the unified write executor."
|
|
||||||
set_at: [startup, runtime]
|
|
||||||
cpp_varname: "internalQueryUnifiedWriteExecutor"
|
|
||||||
cpp_vartype: AtomicWord<bool>
|
|
||||||
default: false
|
|
||||||
redact: false
|
|
||||||
|
|
||||||
internalQueryGetMoreMaxCursorPinRetryAttempts:
|
internalQueryGetMoreMaxCursorPinRetryAttempts:
|
||||||
description: >-
|
description: >-
|
||||||
Max number of attempts to pin cursor by getMore command before failing in cases where
|
Max number of attempts to pin cursor by getMore command before failing in cases where
|
||||||
|
|
|
||||||
|
|
@ -95,14 +95,14 @@ protected:
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteTest, NoErrors) {
|
TEST_F(ClusterBulkWriteTest, NoErrors) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", false);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", false);
|
||||||
|
|
||||||
testNoErrors(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
testNoErrors(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteTest, AttachesAtClusterTimeForSnapshotReadConcern) {
|
TEST_F(ClusterBulkWriteTest, AttachesAtClusterTimeForSnapshotReadConcern) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", false);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", false);
|
||||||
|
|
||||||
testAttachesAtClusterTimeForSnapshotReadConcern(kBulkWriteCmdTargeted,
|
testAttachesAtClusterTimeForSnapshotReadConcern(kBulkWriteCmdTargeted,
|
||||||
kBulkWriteCmdScatterGather);
|
kBulkWriteCmdScatterGather);
|
||||||
|
|
@ -110,14 +110,14 @@ TEST_F(ClusterBulkWriteTest, AttachesAtClusterTimeForSnapshotReadConcern) {
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteTest, SnapshotReadConcernWithAfterClusterTime) {
|
TEST_F(ClusterBulkWriteTest, SnapshotReadConcernWithAfterClusterTime) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", false);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", false);
|
||||||
|
|
||||||
testSnapshotReadConcernWithAfterClusterTime(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
testSnapshotReadConcernWithAfterClusterTime(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteTest, FireAndForgetRequestGetsReplyWithOnlyOkStatus) {
|
TEST_F(ClusterBulkWriteTest, FireAndForgetRequestGetsReplyWithOnlyOkStatus) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", false);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", false);
|
||||||
|
|
||||||
auto asFireAndForgetRequest = [](const BSONObj& cmdObj) {
|
auto asFireAndForgetRequest = [](const BSONObj& cmdObj) {
|
||||||
BSONObjBuilder bob(cmdObj);
|
BSONObjBuilder bob(cmdObj);
|
||||||
|
|
|
||||||
|
|
@ -95,14 +95,14 @@ protected:
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteUWETest, NoErrors) {
|
TEST_F(ClusterBulkWriteUWETest, NoErrors) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", true);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", true);
|
||||||
|
|
||||||
testNoErrors(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
testNoErrors(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteUWETest, AttachesAtClusterTimeForSnapshotReadConcern) {
|
TEST_F(ClusterBulkWriteUWETest, AttachesAtClusterTimeForSnapshotReadConcern) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", true);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", true);
|
||||||
|
|
||||||
testAttachesAtClusterTimeForSnapshotReadConcern(kBulkWriteCmdTargeted,
|
testAttachesAtClusterTimeForSnapshotReadConcern(kBulkWriteCmdTargeted,
|
||||||
kBulkWriteCmdScatterGather);
|
kBulkWriteCmdScatterGather);
|
||||||
|
|
@ -110,14 +110,14 @@ TEST_F(ClusterBulkWriteUWETest, AttachesAtClusterTimeForSnapshotReadConcern) {
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteUWETest, SnapshotReadConcernWithAfterClusterTime) {
|
TEST_F(ClusterBulkWriteUWETest, SnapshotReadConcernWithAfterClusterTime) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", true);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", true);
|
||||||
|
|
||||||
testSnapshotReadConcernWithAfterClusterTime(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
testSnapshotReadConcernWithAfterClusterTime(kBulkWriteCmdTargeted, kBulkWriteCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(ClusterBulkWriteUWETest, FireAndForgetRequestGetsReplyWithOnlyOkStatus) {
|
TEST_F(ClusterBulkWriteUWETest, FireAndForgetRequestGetsReplyWithOnlyOkStatus) {
|
||||||
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
RAIIServerParameterControllerForTest controller("featureFlagBulkWriteCommand", true);
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor", true);
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor", true);
|
||||||
|
|
||||||
auto asFireAndForgetRequest = [](const BSONObj& cmdObj) {
|
auto asFireAndForgetRequest = [](const BSONObj& cmdObj) {
|
||||||
BSONObjBuilder bob(cmdObj);
|
BSONObjBuilder bob(cmdObj);
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ protected:
|
||||||
|
|
||||||
void expectInspectRequest(int shardIndex, InspectionCallback cb) override {
|
void expectInspectRequest(int shardIndex, InspectionCallback cb) override {
|
||||||
onCommandForPoolExecutor([&](const executor::RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const executor::RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
cb(request);
|
cb(request);
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
||||||
|
|
@ -87,7 +87,7 @@ protected:
|
||||||
|
|
||||||
void expectReturnsSuccess(int shardIndex) override {
|
void expectReturnsSuccess(int shardIndex) override {
|
||||||
onCommandForPoolExecutor([this, shardIndex](const executor::RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([this, shardIndex](const executor::RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
||||||
0,
|
0,
|
||||||
|
|
@ -113,7 +113,7 @@ protected:
|
||||||
|
|
||||||
TEST_F(ClusterDeleteTest, NoErrors) {
|
TEST_F(ClusterDeleteTest, NoErrors) {
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testNoErrors(kDeleteCmdTargeted, kDeleteCmdScatterGather);
|
testNoErrors(kDeleteCmdTargeted, kDeleteCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
@ -137,7 +137,7 @@ TEST_F(ClusterDeleteTest, CorrectMetrics) {
|
||||||
b.append("command", 0);
|
b.append("command", 0);
|
||||||
const BSONObj obj = b.obj();
|
const BSONObj obj = b.obj();
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testOpcountersAreCorrect(kDeleteCmdTargeted, /* expectedValue */ obj);
|
testOpcountersAreCorrect(kDeleteCmdTargeted, /* expectedValue */ obj);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -58,7 +58,7 @@ protected:
|
||||||
|
|
||||||
void expectInspectRequest(int shardIndex, InspectionCallback cb) override {
|
void expectInspectRequest(int shardIndex, InspectionCallback cb) override {
|
||||||
onCommandForPoolExecutor([&](const executor::RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const executor::RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
cb(request);
|
cb(request);
|
||||||
BulkWriteReplyItem item(0, Status::OK());
|
BulkWriteReplyItem item(0, Status::OK());
|
||||||
item.setN(1);
|
item.setN(1);
|
||||||
|
|
@ -82,7 +82,7 @@ protected:
|
||||||
|
|
||||||
void expectReturnsSuccess(int shardIndex) override {
|
void expectReturnsSuccess(int shardIndex) override {
|
||||||
onCommandForPoolExecutor([this, shardIndex](const executor::RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([this, shardIndex](const executor::RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
auto cmd = request.cmdObj;
|
auto cmd = request.cmdObj;
|
||||||
auto ops = cmd["ops"].Array();
|
auto ops = cmd["ops"].Array();
|
||||||
auto size = ops.size();
|
auto size = ops.size();
|
||||||
|
|
@ -112,7 +112,7 @@ protected:
|
||||||
|
|
||||||
TEST_F(ClusterInsertTest, NoErrors) {
|
TEST_F(ClusterInsertTest, NoErrors) {
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testNoErrors(kInsertCmdTargeted, kInsertCmdScatterGather);
|
testNoErrors(kInsertCmdTargeted, kInsertCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
@ -138,7 +138,7 @@ TEST_F(ClusterInsertTest, CorrectMetricsSingleInsert) {
|
||||||
const BSONObj obj = b.obj();
|
const BSONObj obj = b.obj();
|
||||||
|
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testOpcountersAreCorrect(kInsertCmdTargeted, /* expectedValue */ obj);
|
testOpcountersAreCorrect(kInsertCmdTargeted, /* expectedValue */ obj);
|
||||||
}
|
}
|
||||||
|
|
@ -158,7 +158,7 @@ TEST_F(ClusterInsertTest, CorrectMetricsBulkInsert) {
|
||||||
const BSONObj obj = b.obj();
|
const BSONObj obj = b.obj();
|
||||||
|
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testOpcountersAreCorrect(bulkInsertCmd, /* expectedValue */ obj);
|
testOpcountersAreCorrect(bulkInsertCmd, /* expectedValue */ obj);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,7 @@ protected:
|
||||||
|
|
||||||
void expectInspectRequest(int shardIndex, InspectionCallback cb) override {
|
void expectInspectRequest(int shardIndex, InspectionCallback cb) override {
|
||||||
onCommandForPoolExecutor([&](const executor::RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([&](const executor::RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
cb(request);
|
cb(request);
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
||||||
|
|
@ -90,7 +90,7 @@ protected:
|
||||||
|
|
||||||
void expectReturnsSuccess(int shardIndex) override {
|
void expectReturnsSuccess(int shardIndex) override {
|
||||||
onCommandForPoolExecutor([this, shardIndex](const executor::RemoteCommandRequest& request) {
|
onCommandForPoolExecutor([this, shardIndex](const executor::RemoteCommandRequest& request) {
|
||||||
if (internalQueryUnifiedWriteExecutor.load()) {
|
if (feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled()) {
|
||||||
BulkWriteCommandReply reply(
|
BulkWriteCommandReply reply(
|
||||||
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
BulkWriteCommandResponseCursor(0, {BulkWriteReplyItem{0, Status::OK()}}, kNss),
|
||||||
0,
|
0,
|
||||||
|
|
@ -120,7 +120,7 @@ protected:
|
||||||
|
|
||||||
TEST_F(ClusterUpdateTest, NoErrors) {
|
TEST_F(ClusterUpdateTest, NoErrors) {
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testNoErrors(kUpdateCmdTargeted, kUpdateCmdScatterGather);
|
testNoErrors(kUpdateCmdTargeted, kUpdateCmdScatterGather);
|
||||||
}
|
}
|
||||||
|
|
@ -145,7 +145,7 @@ TEST_F(ClusterUpdateTest, CorrectMetrics) {
|
||||||
|
|
||||||
const BSONObj obj = b.obj();
|
const BSONObj obj = b.obj();
|
||||||
for (auto uweKnobValue : {false, true}) {
|
for (auto uweKnobValue : {false, true}) {
|
||||||
RAIIServerParameterControllerForTest uweController("internalQueryUnifiedWriteExecutor",
|
RAIIServerParameterControllerForTest uweController("featureFlagUnifiedWriteExecutor",
|
||||||
uweKnobValue);
|
uweKnobValue);
|
||||||
testOpcountersAreCorrect(kUpdateCmdTargeted, /* expectedValue */ obj);
|
testOpcountersAreCorrect(kUpdateCmdTargeted, /* expectedValue */ obj);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -146,9 +146,8 @@ FindAndModifyCommandResponse findAndModify(OperationContext* opCtx,
|
||||||
executeWriteCommand(opCtx, WriteCommandRef{request}, originalCommand));
|
executeWriteCommand(opCtx, WriteCommandRef{request}, originalCommand));
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO SERVER-106306: Convert the knob below to an IFR flag.
|
|
||||||
bool isEnabled(OperationContext* opCtx) {
|
bool isEnabled(OperationContext* opCtx) {
|
||||||
return internalQueryUnifiedWriteExecutor.load();
|
return feature_flags::gFeatureFlagUnifiedWriteExecutor.checkEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
} // namespace unified_write_executor
|
} // namespace unified_write_executor
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue