Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions tikv-configuration-file.md
Original file line number Diff line number Diff line change
Expand Up @@ -2692,6 +2692,68 @@ Specifies the flow control strategy for low-priority tasks. TiKV ensures that hi
+ `conservative`: this policy prioritizes ensuring that system resources are fully utilized, allowing low-priority tasks to fully utilize system available resources as needed, and therefore has a greater performance impact on high-priority tasks.
+ Default value: `moderate`.

### `bg-cpu-throttle-threshold` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the CPU utilization percentage threshold at which background task throttling begins. Background tasks are tasks marked with a background resource group, including `import`, `br`, `ddl`, and `stats` task types (see [Background task types](/tidb-resource-control-background-tasks.md#background-parameters)). When CPU utilization reaches this value, TiKV starts to reduce the resource budget allocated to background tasks. The budget scales linearly from the configured limit down to a minimum floor of 1 CPU core as CPU utilization increases from this threshold toward [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold).
+ Default value: `60.0`
+ Unit: percentage (%)

### `fg-cpu-throttle-threshold` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the CPU utilization percentage threshold above which foreground traffic protection is fully activated. When CPU utilization reaches this value, background tasks are completely throttled to their minimum floor and the background utilization budget is capped at this value. This threshold must be greater than [`bg-cpu-throttle-threshold`](#bg-cpu-throttle-threshold).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

To adhere to the repository style guide, we should avoid passive voice. Let's rewrite this description to use active voice.

Suggested change
+ Specifies the CPU utilization percentage threshold above which foreground traffic protection is fully activated. When CPU utilization reaches this value, background tasks are completely throttled to their minimum floor and the background utilization budget is capped at this value. This threshold must be greater than [`bg-cpu-throttle-threshold`](#bg-cpu-throttle-threshold).
+ Specifies the CPU utilization percentage threshold above which TiKV fully activates foreground traffic protection. When CPU utilization reaches this value, TiKV completely throttles background tasks to their minimum floor and caps the background utilization budget at this value. This threshold must be greater than [`bg-cpu-throttle-threshold`](#bg-cpu-throttle-threshold).
References
  1. Avoid passive voice overuse. (link)

+ Default value: `70.0`
+ Unit: percentage (%)

### `bg-compaction-pressure-threshold` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the threshold, as a percentage of [`storage.flow-control.soft-pending-compaction-bytes-limit`](#soft-pending-compaction-bytes-limit), at which background write I/O throttling begins. Below this threshold, background write I/O increases toward [`bg-write-io-ceiling`](#bg-write-io-ceiling). At or above this threshold, TiKV scales background write I/O linearly down toward [`bg-write-io-floor`](#bg-write-io-floor) as compaction pressure approaches 100%.
+ Default value: `70.0`
+ Unit: percentage (%)

### `bg-write-io-ceiling` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the maximum write I/O rate allowed for background tasks when compaction pressure is below [`bg-compaction-pressure-threshold`](#bg-compaction-pressure-threshold).

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

To adhere to the repository style guide, we should avoid passive voice. Let's rewrite this description to use active voice.

Suggested change
+ Specifies the maximum write I/O rate allowed for background tasks when compaction pressure is below [`bg-compaction-pressure-threshold`](#bg-compaction-pressure-threshold).
+ Specifies the maximum write I/O rate for background tasks when compaction pressure is below [`bg-compaction-pressure-threshold`](#bg-compaction-pressure-threshold).
References
  1. Avoid passive voice overuse. (link)

+ Default value: `"100GB"`
+ Unit: bytes per second

### `bg-write-io-floor` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the minimum write I/O rate guaranteed to background tasks even at maximum compaction pressure. This floor prevents background tasks from being starved completely.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

To adhere to the repository style guide, we should avoid passive voice. Let's rewrite this description to use active voice.

Suggested change
+ Specifies the minimum write I/O rate guaranteed to background tasks even at maximum compaction pressure. This floor prevents background tasks from being starved completely.
+ Specifies the minimum write I/O rate that TiKV guarantees for background tasks even at maximum compaction pressure. This floor prevents background task starvation.
References
  1. Avoid passive voice overuse. (link)

+ Default value: `"10MB"`
+ Unit: bytes per second

### `enable-fair-scheduling` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Controls whether to enable two-phase RU-based fair scheduling for read requests. When enabled, resource groups whose current RU consumption rate exceeds their historical baseline are placed in a lower-priority phase in the unified read pool queue, protecting sustained workloads from traffic spikes without hard-rejecting requests.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

To adhere to the repository style guide, we should avoid passive voice and write in the second person ('you') when addressing users. Let's rewrite this description to use active voice and second person.

Suggested change
+ Controls whether to enable two-phase RU-based fair scheduling for read requests. When enabled, resource groups whose current RU consumption rate exceeds their historical baseline are placed in a lower-priority phase in the unified read pool queue, protecting sustained workloads from traffic spikes without hard-rejecting requests.
+ Controls whether to enable two-phase RU-based fair scheduling for read requests. When you enable this feature, TiKV places resource groups whose current RU consumption rate exceeds their historical baseline in a lower-priority phase in the unified read pool queue. This protects sustained workloads from traffic spikes without hard-rejecting requests.
References
  1. Avoid passive voice and write in second person ('you') when addressing users. (link)

+ Default value: `false`

### `enable-read-admission-control` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Controls whether to enable admission control for read requests. When enabled, read requests from over-baseline resource groups are delayed or rejected with `SchedTooBusy` when CPU utilization exceeds [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold). This configuration takes effect only when [`enable-fair-scheduling`](#enable-fair-scheduling) is also enabled.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

To adhere to the repository style guide, we should avoid passive voice and write in the second person ('you') when addressing users. Let's rewrite this description to use active voice and second person.

Suggested change
+ Controls whether to enable admission control for read requests. When enabled, read requests from over-baseline resource groups are delayed or rejected with `SchedTooBusy` when CPU utilization exceeds [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold). This configuration takes effect only when [`enable-fair-scheduling`](#enable-fair-scheduling) is also enabled.
+ Controls whether to enable admission control for read requests. When you enable this feature, TiKV delays or rejects read requests from over-baseline resource groups with `SchedTooBusy` when CPU utilization exceeds [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold). This configuration takes effect only when you also enable [`enable-fair-scheduling`](#enable-fair-scheduling).
References
  1. Avoid passive voice and write in second person ('you') when addressing users. (link)

+ Default value: `false`

### `enable-write-admission-control` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Controls whether to enable admission control for write requests. When enabled, write requests from over-baseline resource groups are delayed or rejected with `SchedTooBusy` when CPU utilization exceeds [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold). This configuration takes effect only when [`enable-fair-scheduling`](#enable-fair-scheduling) is also enabled.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

low

To adhere to the repository style guide, we should avoid passive voice and write in the second person ('you') when addressing users. Let's rewrite this description to use active voice and second person.

Suggested change
+ Controls whether to enable admission control for write requests. When enabled, write requests from over-baseline resource groups are delayed or rejected with `SchedTooBusy` when CPU utilization exceeds [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold). This configuration takes effect only when [`enable-fair-scheduling`](#enable-fair-scheduling) is also enabled.
+ Controls whether to enable admission control for write requests. When you enable this feature, TiKV delays or rejects write requests from over-baseline resource groups with `SchedTooBusy` when CPU utilization exceeds [`fg-cpu-throttle-threshold`](#fg-cpu-throttle-threshold). This configuration takes effect only when you also enable [`enable-fair-scheduling`](#enable-fair-scheduling).
References
  1. Avoid passive voice and write in second person ('you') when addressing users. (link)

+ Default value: `false`

### `historical-usage-window-mins` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the size of the sliding time window (in minutes) that TiKV uses to compute per-resource-group historical RU baselines. A larger window smooths out short-term bursts, while a smaller window makes the baseline more responsive to recent usage. Valid range: `2-60`. **You must restart TiKV for changes to this configuration to take effect.**
+ Default value: `15`
+ Unit: minutes

### `baseline-burst-pct` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the percentage of headroom above a resource group's historical RU baseline before TiKV considers the group "over baseline." For example, if you set this value to `20.0`, a resource group must exceed 1.2× its historical RU rate before fair scheduling deprioritizes it or admission control limits it.
+ Default value: `20.0`
+ Unit: percentage (%)

### `admission-max-delayed-count` <span class="version-mark">New in v8.5.6 and v9.0.0</span>

+ Specifies the maximum number of concurrent requests (reads and writes combined) that TiKV can hold in the admission control delay. When this limit is reached, TiKV rejects additional over-baseline requests immediately instead of delaying them. Set this value to `0` for unlimited concurrent delays.
+ Default value: `10000`

## split

Configuration items related to [Load Base Split](/configure-load-base-split.md).
Expand Down
Loading