Skip to content

cloud: document Essential and Premium transaction limits#22905

Open
ekexium wants to merge 1 commit into
pingcap:release-8.5from
ekexium:doc/cloud-essential-premium-vars-68388
Open

cloud: document Essential and Premium transaction limits#22905
ekexium wants to merge 1 commit into
pingcap:release-8.5from
ekexium:doc/cloud-essential-premium-vars-68388

Conversation

@ekexium
Copy link
Copy Markdown
Member

@ekexium ekexium commented May 18, 2026

What is changed, added or deleted? (Required)

Document TiDB Cloud Essential and TiDB Cloud Premium behavior differences for transaction-related variables and configuration:

  • tidb_dml_type is fixed to "standard", so Pipelined DML cannot be enabled by setting it to "bulk".
  • tidb_replica_read is fixed to leader, and other read modes are not supported.
  • tidb_txn_assertion_level defaults to STRICT.
  • pessimistic-auto-commit defaults to true.
  • Add corresponding notes to the Pipelined DML and Follower Read feature docs.

Which TiDB version(s) do your changes apply to? (Required)

  • master (the latest development version)
  • v8.5 (TiDB 8.5 versions)
  • v8.4 (TiDB 8.4 versions)
  • v8.3 (TiDB 8.3 versions)
  • v8.2 (TiDB 8.2 versions)
  • v8.1 (TiDB 8.1 versions)
  • v7.5 (TiDB 7.5 versions)
  • v7.1 (TiDB 7.1 versions)
  • v6.5 (TiDB 6.5 versions)
  • v6.1 (TiDB 6.1 versions)
  • v5.4 (TiDB 5.4 versions)
  • v5.3 (TiDB 5.3 versions)

What is the related PR or file link(s)?

Do your changes match any of the following descriptions?

  • Delete files
  • Change aliases
  • Need modification after applied to another branch
  • Might cause conflicts after applied to another branch

Copilot AI review requested due to automatic review settings May 18, 2026 10:44
@ti-chi-bot
Copy link
Copy Markdown

ti-chi-bot Bot commented May 18, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign lance6716 for approval. For more information see the Code Review Process.
Please ensure that each of them provides their approval before proceeding.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@ti-chi-bot ti-chi-bot Bot added missing-translation-status This PR does not have translation status info. size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels May 18, 2026
Copy link
Copy Markdown
Contributor

@gemini-code-assist gemini-code-assist Bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request updates the documentation for TiDB Cloud Essential and Premium plans, clarifying that tidb_replica_read is read-only and Pipelined DML is unsupported. It also updates the default values for tidb_enable_assertion and pessimistic-auto-commit for these specific plans. Feedback focuses on improving clarity and consistency by using active voice, addressing users in the second person, and adopting template variables for plan names.

Comment thread follower-read.md Outdated

> **Note:**
>
> For TiDB Cloud Essential and TiDB Cloud Premium, `tidb_replica_read` is read-only and fixed to `leader`. Other read modes are not supported.
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

Use active voice and template variables for plan names to maintain consistency with other documentation files in this repository. This also improves readability and simplifies future updates to plan names.

Suggested change
> For TiDB Cloud Essential and TiDB Cloud Premium, `tidb_replica_read` is read-only and fixed to `leader`. Other read modes are not supported.
> For [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium), `tidb_replica_read` is read-only and fixed to `leader`. These plans do not support other read modes.
References
  1. Use consistent terminology and avoid passive voice overuse. (link)

Comment thread pipelined-dml.md Outdated

> **Note:**
>
> Pipelined DML is not supported for TiDB Cloud Essential and TiDB Cloud Premium. You cannot enable Pipelined DML by setting [`tidb_dml_type`](/system-variables.md#tidb_dml_type-new-in-v800) to `"bulk"` or by using the [`SET_VAR`](/optimizer-hints.md#set_varvar_namevar_value) hint.
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

Use active voice and template variables for plan names to ensure consistency across the documentation set.

Suggested change
> Pipelined DML is not supported for TiDB Cloud Essential and TiDB Cloud Premium. You cannot enable Pipelined DML by setting [`tidb_dml_type`](/system-variables.md#tidb_dml_type-new-in-v800) to `"bulk"` or by using the [`SET_VAR`](/optimizer-hints.md#set_varvar_namevar_value) hint.
> [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium) do not support Pipelined DML. You cannot enable Pipelined DML by setting [`tidb_dml_type`](/system-variables.md#tidb_dml_type-new-in-v800) to `"bulk"` or by using the [`SET_VAR`](/optimizer-hints.md#set_varvar_namevar_value) hint.
References
  1. Use consistent terminology and prefer active voice. (link)

Comment thread system-variables.md

> **Note:**
>
> This variable is read-only for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium). The value is fixed to `"standard"`, so Pipelined DML cannot be enabled by setting this variable to `"bulk"`.
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

Use active voice to address the user directly, which makes the instruction clearer.

Suggested change
> This variable is read-only for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium). The value is fixed to `"standard"`, so Pipelined DML cannot be enabled by setting this variable to `"bulk"`.
> This variable is read-only for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium). The value is fixed to `"standard"`, so you cannot enable Pipelined DML by setting this variable to `"bulk"`.
References
  1. Prefer active voice and address users in the second person. (link)

Comment thread system-variables.md Outdated
> **Note:**
>
> This variable is read-only for [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium).
> This variable is read-only for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium). The value is fixed to `leader`, and other read modes are not supported.
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

Use active voice to improve clarity and follow the general writing principles.

Suggested change
> This variable is read-only for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium). The value is fixed to `leader`, and other read modes are not supported.
> This variable is read-only for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium). The value is fixed to `leader`, and these plans do not support other read modes.
References
  1. Avoid passive voice overuse. (link)

Comment thread tidb-configuration-file.md Outdated
+ For scenarios with no conflicts, if there are many auto-commit transactions (the specific number is determined by the real scenarios. For example, the number of auto-commit transactions accounts for more than half of the total number of applications), and a single transaction operates a large data volume, enabling this configuration causes performance regression. For example, the auto-commit `INSERT INTO SELECT` statement.
+ When the session-level system variable [`tidb_dml_type`](/system-variables.md#tidb_dml_type-new-in-v800) is set to `"bulk"`, the effect of this configuration in the session is equivalent to setting it to `false`.
+ Default value: `false`
+ Default value: `true` for [TiDB Cloud Essential](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [TiDB Cloud Premium](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium); `false` for other deployment options
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

Use template variables for plan names to maintain consistency with other documentation files and facilitate easier updates.

Suggested change
+ Default value: `true` for [TiDB Cloud Essential](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [TiDB Cloud Premium](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium); `false` for other deployment options
+ Default value: `true` for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium); `false` for other deployment options
References
  1. Use consistent terminology. (link)

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR documents TiDB Cloud Essential and Premium limitations/defaults for transaction-related variables and feature behavior.

Changes:

  • Adds Cloud-specific defaults for pessimistic-auto-commit and tidb_txn_assertion_level.
  • Updates tidb_dml_type and tidb_replica_read notes for Starter, Essential, and Premium plans.
  • Adds plan-specific notes to Pipelined DML and Follower Read docs.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.

File Description
tidb-configuration-file.md Documents Cloud-specific default for pessimistic-auto-commit.
system-variables.md Updates Cloud plan notes and defaults for transaction/read-related system variables.
pipelined-dml.md Adds Essential/Premium unsupported note for Pipelined DML.
follower-read.md Adds Essential/Premium fixed tidb_replica_read=leader note.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread system-variables.md
- Applies to hint [SET_VAR](/optimizer-hints.md#set_varvar_namevar_value): No
- Type: Enumeration
- Default value: `FAST`
- Default value: `STRICT` for [{{{ .essential }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [{{{ .premium }}}](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium); `FAST` for other deployment options
Comment thread tidb-configuration-file.md Outdated
+ For scenarios with no conflicts, if there are many auto-commit transactions (the specific number is determined by the real scenarios. For example, the number of auto-commit transactions accounts for more than half of the total number of applications), and a single transaction operates a large data volume, enabling this configuration causes performance regression. For example, the auto-commit `INSERT INTO SELECT` statement.
+ When the session-level system variable [`tidb_dml_type`](/system-variables.md#tidb_dml_type-new-in-v800) is set to `"bulk"`, the effect of this configuration in the session is equivalent to setting it to `false`.
+ Default value: `false`
+ Default value: `true` for [TiDB Cloud Essential](https://docs.pingcap.com/tidbcloud/select-cluster-tier#essential) and [TiDB Cloud Premium](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#premium); `false` for other deployment options
Comment thread follower-read.md Outdated

> **Note:**
>
> For TiDB Cloud Essential and TiDB Cloud Premium, `tidb_replica_read` is read-only and fixed to `leader`. Other read modes are not supported.
Comment thread pipelined-dml.md Outdated

> **Note:**
>
> Pipelined DML is not supported for TiDB Cloud Essential and TiDB Cloud Premium. You cannot enable Pipelined DML by setting [`tidb_dml_type`](/system-variables.md#tidb_dml_type-new-in-v800) to `"bulk"` or by using the [`SET_VAR`](/optimizer-hints.md#set_varvar_namevar_value) hint.
@ekexium ekexium force-pushed the doc/cloud-essential-premium-vars-68388 branch from 638fb6f to cc34403 Compare May 18, 2026 10:50
@ekexium ekexium force-pushed the doc/cloud-essential-premium-vars-68388 branch from cc34403 to af25719 Compare May 18, 2026 10:52
@ekexium ekexium requested review from cfzjywxk and qiancai May 18, 2026 11:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

missing-translation-status This PR does not have translation status info. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants