diff options
author | Daniel Gottlieb <daniel.gottlieb@mongodb.com> | 2019-05-02 20:55:55 -0400 |
---|---|---|
committer | Daniel Gottlieb <daniel.gottlieb@mongodb.com> | 2019-05-03 09:38:17 -0400 |
commit | cd3f10254f5b7fd93c2e4065a996dad74d5b1fd2 (patch) | |
tree | 9f47c6f169001c3e485d2487684c344111c1b147 /src/mongo/db/storage/flow_control_parameters.idl | |
parent | edcf522c5436f6b564afd18b7d184764741a03a5 (diff) | |
download | mongo-cd3f10254f5b7fd93c2e4065a996dad74d5b1fd2.tar.gz |
SERVER-39867: Temper ticket penalties when commit lag is close to the threshold.
Diffstat (limited to 'src/mongo/db/storage/flow_control_parameters.idl')
-rw-r--r-- | src/mongo/db/storage/flow_control_parameters.idl | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/mongo/db/storage/flow_control_parameters.idl b/src/mongo/db/storage/flow_control_parameters.idl index e76df69be53..135ffa23b7b 100644 --- a/src/mongo/db/storage/flow_control_parameters.idl +++ b/src/mongo/db/storage/flow_control_parameters.idl @@ -70,3 +70,31 @@ server_parameters: cpp_varname: 'gFlowControlMinTicketsPerSecond' default: 100 validator: { gte: 0 } + flowControlDecayConstant: + description: 'The rate at which flow control will throttle based on how lagged the commit point is in time relative to the flow control threshold.' + set_at: [ startup, runtime ] + cpp_vartype: 'AtomicWord<double>' + cpp_varname: 'gFlowControlDecayConstant' + default: 0.5 + validator: { gt: 0.0, lt: 1.0 } + flowControlFudgeFactor: + description: 'When commit point lag is close to the threshold lag, the primary should track the sustainer rate, with some small penalty. This value represents that penalty. A value of 1.0 represents no penalty, a value close to 0.0 represents a large penalty. Reducing oscillations should keep this value close to 1.0.' + set_at: [ startup, runtime ] + cpp_vartype: 'AtomicWord<double>' + cpp_varname: 'gFlowControlFudgeFactor' + default: 0.95 + validator: { gt: 0.0, lte: 1.0 } + flowControlTicketAdderConstant: + description: 'When the commit point lag is small, flow control will add at least this many tickets per second. This provides meaningful ticket increase when immediately recovering from stalling events.' + set_at: [ startup, runtime ] + cpp_vartype: 'AtomicWord<int>' + cpp_varname: 'gFlowControlTicketAdderConstant' + default: 1000 + validator: { gt: 0 } + flowControlTicketMultiplierConstant: + description: 'When the commit point lag is small, flow control will increase its ticket allocation by this factor. This provides meaningful ticket increase in more general recovery scenarios.' + set_at: [ startup, runtime ] + cpp_vartype: 'AtomicWord<double>' + cpp_varname: 'gFlowControlTicketMultiplierConstant' + default: 1.05 + validator: { gt: 1.0 } |