mirror of
https://github.com/mongodb/mongo.git
synced 2024-11-30 00:56:44 +01:00
SERVER-46161 Increase number of PlanExecutor iterations before yielding to 1000.
The new behavior is for queries to yield every 10ms or 1000 iterations, whichever comes first. This change improves performance on many of our workloads, since yielding is expensive and happens more frequently than needed on those workloads.
This commit is contained in:
parent
b2d5432fdc
commit
460acb8364
@ -28,7 +28,7 @@ const expectedParamDefaults = {
|
||||
internalQueryPlanOrChildrenIndependently: true,
|
||||
internalQueryMaxScansToExplode: 200,
|
||||
internalQueryMaxBlockingSortMemoryUsageBytes: 100 * 1024 * 1024,
|
||||
internalQueryExecYieldIterations: 128,
|
||||
internalQueryExecYieldIterations: 1000,
|
||||
internalQueryExecYieldPeriodMS: 10,
|
||||
internalQueryFacetBufferSizeBytes: 100 * 1024 * 1024,
|
||||
internalDocumentSourceCursorBatchSizeBytes: 4 * 1024 * 1024,
|
||||
@ -39,7 +39,7 @@ const expectedParamDefaults = {
|
||||
internalQueryMaxPushBytes: 100 * 1024 * 1024,
|
||||
internalQueryMaxAddToSetBytes: 100 * 1024 * 1024,
|
||||
// Should be half the value of 'internalQueryExecYieldIterations' parameter.
|
||||
internalInsertMaxBatchSize: 64,
|
||||
internalInsertMaxBatchSize: 500,
|
||||
internalQueryPlannerGenerateCoveredWholeIndexScans: false,
|
||||
internalQueryIgnoreUnknownJSONSchemaKeywords: false,
|
||||
internalQueryProhibitBlockingMergeOnMongoS: false,
|
||||
|
@ -212,7 +212,7 @@ server_parameters:
|
||||
set_at: [ startup, runtime ]
|
||||
cpp_varname: "internalQueryExecYieldIterations"
|
||||
cpp_vartype: AtomicWord<int>
|
||||
default: 128
|
||||
default: 1000
|
||||
|
||||
internalQueryExecYieldPeriodMS:
|
||||
description: "Yield if it's been at least this many milliseconds since we last yielded."
|
||||
|
Loading…
Reference in New Issue
Block a user