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