Skip to content

Conversation

@qiancai
Copy link
Owner

@qiancai qiancai commented Sep 29, 2025

First-time contributors' checklist

What is changed, added or deleted? (Required)

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

Tips for choosing the affected version(s):

By default, CHOOSE MASTER ONLY so your changes will be applied to the next TiDB major or minor releases. If your PR involves a product feature behavior change or a compatibility change, CHOOSE THE AFFECTED RELEASE BRANCH(ES) AND MASTER.

For details, see tips for choosing the affected versions (in Chinese).

  • master (the latest development version)
  • v9.0 (TiDB 9.0 versions)
  • v8.5 (TiDB 8.5 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)

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

  • This PR is translated from:
  • Other reference 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

Summary by CodeRabbit

  • New Features

    • Added several public system variables to tune optimizer and PD interactions (selectivity default, PD metadata error-rate threshold, DDL-embedded analyze toggle, fast-create-table toggle, and new optimizer hint controls); changed default for an MPP store TTL to 0 and clarified distributed-task node behavior with service scope.
  • Documentation

    • New DDL-embedded Analyze guide; many docs updated (follower-read, stats SHOW output, compatibility, dashboards, hardware requirements, restore behavior, and various SQL grammar and examples).

@coderabbitai
Copy link

coderabbitai bot commented Sep 29, 2025

Walkthrough

Adds and updates many documentation pages: new system variables and defaults, embedded ANALYZE during DDL, ownership aliasing changes, multiple doc content updates (follower read, hardware OS matrix, TiFlash/TiKV configs, SQL grammar/default-value rules), and various examples and TOC entries. No executable code changes.

Changes

Cohort / File(s) Summary of Changes
System variables
system-variables.md
Added tidb_opt_selectivity_factor, tidb_cb_pd_metadata_error_rate_threshold_ratio, tidb_stats_update_during_ddl, tidb_enable_fast_create_table, tidb_opt_enable_no_decorrelate_in_select, tidb_opt_enable_semi_join_rewrite; updated tidb_mpp_store_fail_ttl default to 0s (deprecated), clarified tidb_max_dist_task_nodes interaction with tidb_service_scope, and adjusted optimizer-control notes.
DDL-embedded Analyze + TOC
ddl_embedded_analyze.md, TOC.md
New doc ddl_embedded_analyze.md describing embedded ANALYZE during DDL (scenarios, timeouts, visibility, examples); TOC updated to include the new entry.
Ownership and aliases
OWNERS, OWNERS_ALIASES
Replaced explicit approver/reviewer lists with a filters block in OWNERS; added sig-community-reviewers and sig-community-approvers groups in OWNERS_ALIASES with member lists.
BR docs (restore behavior)
br/br-pitr-guide.md, br/br-snapshot-guide.md
Documented that target tables enter restore Table Mode (read/write blocked) during restore and automatically switch back to normal after completion; inserted in restore flow descriptions.
Follower Read & Grafana
follower-read.md, grafana-tidb-dashboard.md
Expanded Follower Read doc (mechanism, strategies, scenarios, monitoring, performance cost); added "Read Req Traffic" metric group and four new read-request metrics in dashboard doc.
Hardware/OS requirements
hardware-and-software-requirements.md
Updated supported OS/version matrix (RHEL, openEuler, macOS, CentOS Stream, Debian, Fedora, etc.), clarified 64-bit CPU requirement, added TiProxy resource mention, and table formatting/alignment edits.
Resources cleanup
resources/cdnfresh.txt
Removed multiple historical TiDB PDF manual URLs (older versions).
SQL grammar / DEFAULT value changes
sql-statements/sql-statement-add-column.md, .../change-column.md, .../create-table.md, .../modify-column.md
Introduced a new nonterminal DefaultValueExpr (NowSymOptionFractionParentheses
SHOW STATS_META output
sql-statements/sql-statement-show-stats-meta.md
Output schema changed from 6 to 7 columns: added Last_analyze_time, updated headers/examples and sample timestamps.
TiCDC Kafka sink
ticdc/ticdc-sink-to-kafka.md
Updated max-message-bytes description to show 100MB maximum and adjusted inline code formatting; ensured final code fence ends with newline.
TiFlash configuration
tiflash/tiflash-configuration.md
Added graceful_wait_shutdown_timeout (default 600s) describing shutdown wait semantics for ongoing MPP tasks and task acceptance during the period.
TiKV config
tikv-configuration-file.md
Changed unit/default interpretation for raft-log-gc-count-limit from 1 MiB to 1 KiB per log (affects residual Raft log count calculation).
DM compatibility
dm/dm-compatibility-catalog.md
Added compatibility rows for MySQL 8.1–8.3 (untested), 8.4 (incompatible), and 9.x (untested).
Troubleshooting examples
troubleshoot-hot-spot-issues.md, troubleshoot-write-conflicts.md
Capitalized placeholder identifiers in examples (TableID, IndexID, RowID); updated curl example placeholder to {TableID}.
BR snapshot & guide edits
br/*snapshot-guide.md (also above)
Inserted restore-mode behavior notes in two restore process locations.

Sequence Diagram(s)

sequenceDiagram
    autonumber
    participant User
    participant TiDB as TiDB (DDL Job)
    participant Reorg as Reorg Phase
    participant Analyzer as Embedded ANALYZE
    note right of Reorg `#dff7df`: Reorg executes DDL reorganize (index build)
    User->>TiDB: CREATE INDEX / MODIFY COLUMN (with tidb_stats_update_during_ddl=ON)
    TiDB->>Reorg: start reorg phase
    Reorg->>Analyzer: trigger embedded ANALYZE (sync, with timeout)
    alt ANALYZE completes before timeout
        Analyzer-->>Reorg: stats collected
        Reorg-->>TiDB: index becomes visible (with stats)
    else ANALYZE times out / long-running
        Analyzer-->>Reorg: timeout -> continue
        Reorg-->>TiDB: index becomes visible (stats loaded asynchronously later)
    end
    note left of Analyzer `#fff2cc`: Progress observable via SHOW STATS_HISTOGRAMS / ADMIN SHOW DDL JOBS
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Areas needing extra attention:
    • system-variables.md — verify consistency across duplicate entries and deprecation/default notes.
    • ddl_embedded_analyze.md and interaction with tidb_stats_update_during_ddl — ensure timeout and async behavior descriptions are precise.
    • SQL grammar changes (DefaultValueExpr) — confirm grammar consistency across all affected SQL docs and examples.
    • tikv-configuration-file.md raft-log-gc-count-limit unit change — validate the communicated unit and its implications.

Poem

A rabbit prances through the docs at night,
Adding knobs and stats to make plans right.
A DDL now pauses, sniffs the fresh terrain,
Collects its numbers, or carries on again.
Hooray for changes—hop, update, and bite! 🥕🫧

Pre-merge checks and finishing touches

❌ Failed checks (1 warning, 1 inconclusive)
Check name Status Explanation Resolution
Description check ⚠️ Warning The pull request description is entirely unfilled; all required sections (what is changed, which versions apply to, related links) remain as template placeholders with no actual content or selections provided. Fill in all required sections: describe the specific changes made, select affected TiDB version(s), provide related PR/file links, and indicate whether changes match any listed categories.
Title check ❓ Inconclusive The title 'Update system-variables.md' is vague and generic; it describes the file being modified but not the main changes or their purpose. Replace with a specific title that highlights the primary change, e.g., 'Add new TiDB system variables for optimizer selectivity and DDL analysis' or similar.
✅ Passed checks (1 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch test-add-a-variable

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@CLAassistant
Copy link

CLAassistant commented Sep 29, 2025

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.
0 out of 10 committers have signed the CLA.

❌ hfxsd
❌ qiancai
❌ gengliqi
❌ wk989898
❌ you06
❌ CbcWestwolf
❌ AilinKid
❌ Leavrth
❌ Oreoxmt
❌ ti-chi-bot
You have signed the CLA already but the status is still pending? Let us recheck it.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1566e06 and ba2a185.

📒 Files selected for processing (1)
  • system-variables.md (1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: pull

github-actions bot added a commit to qiancai/docs that referenced this pull request Sep 29, 2025
  Synced from: qiancai/docs-cn#15
  Target PR: #45
  AI Provider: gemini

  Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
github-actions bot added a commit to qiancai/docs that referenced this pull request Sep 29, 2025
  Synced from: qiancai/docs-cn#15
  Target PR: #47
  AI Provider: gemini

  Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
github-actions bot added a commit to qiancai/docs that referenced this pull request Sep 29, 2025
  Synced from: qiancai/docs-cn#15
  Target PR: #49
  AI Provider: gemini

  Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
github-actions bot added a commit to qiancai/docs that referenced this pull request Oct 21, 2025
  Synced from: qiancai/docs-cn#15
  Target PR: #50
  AI Provider: gemini

  Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
github-actions bot added a commit to qiancai/docs that referenced this pull request Nov 12, 2025
Synced from: qiancai/docs-cn#15
Target PR: #3
AI Provider: gemini

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
github-actions bot added a commit to qiancai/docs that referenced this pull request Nov 12, 2025
Synced from: qiancai/docs-cn#15
Target PR: #31
AI Provider: gemini

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
@github-actions github-actions bot mentioned this pull request Nov 12, 2025
16 tasks
github-actions bot added a commit to qiancai/docs that referenced this pull request Nov 12, 2025
Synced from: qiancai/docs-cn#15
Target PR: #31
AI Provider: gemini

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (2)
hardware-and-software-requirements.md (2)

165-166: Use “TiCDC” consistently in ports table.

Change component name from “CDC” to “TiCDC” to match the rest of the docs and product naming. Also keep “NgMonitoring” casing consistent across the doc (see storage table).

- | CDC | 8300 | CDC 通信接口 |
+ | TiCDC | 8300 | TiCDC 通信接口 |

And align “NgMonitoring/Ngmonitoring” casing to a single form (“NgMonitoring”) in both tables.


182-182: Fix “Ngmonitoring” casing for consistency.

Use “NgMonitoring” (capital M) to match the component’s standard name used elsewhere (line 166, other pages).

-| Ngmonitoring | <ul><li>Conprof:3 x 1 GB x 组件数量(表示每个组件每天占用约 1 GB,总共 3 天) + 20 GB 预留空间 </li><li> Top SQL:30 x 50 MB x 组件数量(每个组件每天占用约 50 MB,总共 30 天) </li><li> Top SQL 和 Conprof 共享预留空间</li></ul> | 不涉及 |
+| NgMonitoring | <ul><li>Conprof:3 x 1 GB x 组件数量(表示每个组件每天占用约 1 GB,总共 3 天) + 20 GB 预留空间 </li><li> Top SQL:30 x 50 MB x 组件数量(每个组件每天占用约 50 MB,总共 30 天) </li><li> Top SQL 和 Conprof 共享预留空间</li></ul> | 不涉及 |
♻️ Duplicate comments (1)
system-variables.md (1)

1617-1626: Verify and remove any duplicate tidb_opt_selectivity_factor blocks.

A previous review noted duplication. If another copy still exists later, delete it to keep a single authoritative entry.

#!/bin/bash
# Check for duplicates of the heading
rg -n '### `tidb_opt_selectivity_factor`' system-variables.md
🧹 Nitpick comments (10)
hardware-and-software-requirements.md (2)

94-101: Add capacity for TiProxy to match table format.

Other rows specify “SAS/SSD, N GB+”. TiProxy row lists only “SAS”. Add a capacity recommendation for consistency (e.g., “SAS, 100 GB+”) or state “N/A” explicitly.


118-121: Localize unit phrasing in production table.

Avoid mixed CN/EN in “1 or more SSDs”. Use consistent Chinese wording, e.g., “1 块或更多 SSD”。Also consider aligning the “监控” row header to “Monitoring”/“监控组件” to match the ports table naming.

ddl_embedded_analyze.md (2)

110-110: Tighten passive phrasing for clarity.

Prefer “统计信息已自动收集并加载到内存” to reduce ambiguity.

- 相关索引 `idx` 的统计信息已经被自动收集并加载到内存中
+ 相关索引 `idx` 的统计信息已自动收集并加载到内存

Also applies to: 177-177


6-6: Clarify dual-version introduction.

“从 v8.5.4 和 v9.0.0 开始引入” could add a brief note that v8.5.4 is a backport and v9.0.0 is the GA stream, to preempt confusion.

sql-statements/sql-statement-show-stats-meta.md (2)

11-22: Document NULL behavior for Last_analyze_time.

Add a note that Last_analyze_time is NULL when a table/partition has never been analyzed, and that it reflects the latest successful analyze (manual or auto).


44-55: Keep example timestamps realistic and varied.

Consider showing a non-zero Row_count example and one entry with Last_analyze_time as NULL to demonstrate behavior.

Also applies to: 61-68

follower-read.md (2)

11-17: Define AZ on first use and align label wording.

Add “(可用区,AZ)” at the first mention. Keep “zone label” wording consistent with the linked topology labels page.

- TiDB 使用 `zone` label 判断...
+ TiDB 使用 `zone` label 判断...;本文将“可用区 (Availability Zone)”简称为 “AZ”。

61-62: Tighten phrasing.

Use “更精确地” rather than “更精确的”作状语。

- 如果希望使用更精确的读副本选择策略
+ 如果希望使用更精确地选择读副本的策略
system-variables.md (2)

3536-3545: Deprecation block reads well. Consider cross-linking release notes.

Optional: add a short “参见发行说明” link for v9.0.0 deprecation to aid readers.


419-423: Minor punctuation consistency in list of auth plugins.

Use “、” consistently and avoid trailing “或” repetition.

- 可选值:`mysql_native_password`,`caching_sha2_password`,`tidb_sm3_password`,`authentication_ldap_sasl` 或 `authentication_ldap_simple`。
+ 可选值:`mysql_native_password`、`caching_sha2_password`、`tidb_sm3_password`、`authentication_ldap_sasl`、`authentication_ldap_simple`。
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between ba2a185 and f1223fc.

⛔ Files ignored due to path filters (1)
  • media/follower-read/read-index.png is excluded by !**/*.png
📒 Files selected for processing (22)
  • OWNERS (1 hunks)
  • OWNERS_ALIASES (2 hunks)
  • TOC.md (1 hunks)
  • br/br-pitr-guide.md (1 hunks)
  • br/br-snapshot-guide.md (1 hunks)
  • ddl_embedded_analyze.md (1 hunks)
  • dm/dm-compatibility-catalog.md (1 hunks)
  • follower-read.md (3 hunks)
  • grafana-tidb-dashboard.md (1 hunks)
  • hardware-and-software-requirements.md (3 hunks)
  • resources/cdnfresh.txt (0 hunks)
  • sql-statements/sql-statement-add-column.md (2 hunks)
  • sql-statements/sql-statement-change-column.md (2 hunks)
  • sql-statements/sql-statement-create-table.md (1 hunks)
  • sql-statements/sql-statement-modify-column.md (2 hunks)
  • sql-statements/sql-statement-show-stats-meta.md (3 hunks)
  • system-variables.md (9 hunks)
  • ticdc/ticdc-sink-to-kafka.md (2 hunks)
  • tiflash/tiflash-configuration.md (1 hunks)
  • tikv-configuration-file.md (1 hunks)
  • troubleshoot-hot-spot-issues.md (2 hunks)
  • troubleshoot-write-conflicts.md (1 hunks)
💤 Files with no reviewable changes (1)
  • resources/cdnfresh.txt
✅ Files skipped from review due to trivial changes (1)
  • troubleshoot-write-conflicts.md
🧰 Additional context used
🪛 LanguageTool
follower-read.md

[uncategorized] ~61-~61: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:精确"地"读
Context: ...arner|closest-replicas| 如果希望使用更精确的读副本选择策略,请参考完整的可选配置列表: - 当设置为默认值leader...

(wb4)

ddl_embedded_analyze.md

[uncategorized] ~42-~42: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:稳定"地"现有
Context: ...发式规则。除非索引访问路径无需回表且代价显著更低,否则优化器倾向于选择估算更稳定的现有路径,因此上述示例中使用了全表扫描。然而,从数据分布角度来看,`t.a > ...

(wb4)


[uncategorized] ~50-~50: 动词的修饰一般为‘形容词(副词)+地+动词’。您的意思是否是:一定"地"耗时
Context: ...行 ADD INDEX 的剩余阶段。 考虑到 Analyze 可能会有一定的耗时,TiDB 会以首次 Reorg 的执行时间为参考设置超时阈值。若 Anal...

(wb4)


[uncategorized] ~110-~110: 能愿动词不能成为‘把’字句、‘被’字句的谓语动词。应该是:"可被……自动"。
Context: ...到其之后运行的 EXPLAIN 查询中,相关索引 idx 的统计信息已经被自动收集并加载到内存中(可通过 SHOW STATS_HISTOGRAMS 语句的输出结果得到验证)。...

(wa3)


[uncategorized] ~177-~177: 能愿动词不能成为‘把’字句、‘被’字句的谓语动词。应该是:"可被……自动"。
Context: ...到其之后运行的 EXPLAIN 查询中,相关索引 idx 的统计信息已经被自动收集并加载到内存中(可通过 SHOW STATS_HISTOGRAMS 语句的输出结果得到验证),...

(wa3)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: pull
🔇 Additional comments (22)
ticdc/ticdc-sink-to-kafka.md (2)

80-80: Documentation clarification on max-message-bytes parameter.

The update clarifies that the maximum allowed value is now 100MB and explicitly documents the historical default transitions (64MB256MB10MB across versions). The inline code formatting for 64MB and 256MB improves readability and consistency.


572-572: EOF formatting cleaned up.

Ensuring the file ends with a newline is a standard practice for source files and helps prevent merge conflicts.

grafana-tidb-dashboard.md (1)

128-132: Documentation addition looks good.

The new "Read Req Traffic" metric group is well-structured, consistent with the existing documentation style, and clearly distinguishes the four metric variants (leader/follower × local/cross-zone). The placement immediately following the "Stale Read Req Traffic" section is logical and improves readability by grouping related metrics together.

troubleshoot-hot-spot-issues.md (3)

24-24: Capitalization consistency improves clarity.

The placeholder names are now consistently capitalized (TableID, RowID) across code blocks and narrative text, aligning with TiDB documentation conventions and making it clear these are system identifiers.


33-33: Index encoding template capitalization is consistent.

The placeholder capitalization (TableID, IndexID) is now uniform with the record encoding template and narrative description.


40-40: Non-Unique Index encoding template capitalization is now consistent.

The placeholder names (TableID, IndexID, rowID) now follow the same capitalization convention established in the record and index encoding templates above.

OWNERS_ALIASES (2)

18-51: LGTM! Confirm automated sync process.

The structure and formatting of the new sig-community-reviewers and sig-community-approvers groups look correct. The groups are well-organized with clear member lists.

Please confirm whether:

  1. This is an initial manual addition that will be followed by automated synchronization from the source repository
  2. The sync process is already in place and this PR represents the current state

1-2: Remove or correct misleading sync comment — groups do not appear to be synced from pingcap/community.

Investigation of the pingcap/community repository found no "sig-community" references or groups. While the repository contains team OWNERS files, the member lists in sig-community-reviewers and sig-community-approvers do not correspond to any synced source. The file comment claiming these members are "synced from memberships defined in repository: https://github.com/pingcap/community" appears to be inaccurate. Either correct the comment to reflect the actual maintenance approach, or implement the sync mechanism if that was the intent.

Likely an incorrect or invalid review comment.

OWNERS (1)

3-8: LGTM! Confirm wildcard filter scope is intentional.

The filters-based structure correctly references the groups defined in OWNERS_ALIASES. The migration from individual approvers/reviewers to group-based governance follows Kubernetes OWNERS conventions.

Please confirm that the wildcard filter .* is intentional, as it will apply sig-community-approvers and sig-community-reviewers to all files in the repository. If more granular ownership is desired (e.g., different groups for different documentation sections), consider adding additional filter entries.

dm/dm-compatibility-catalog.md (1)

23-25: Compatibility matrix additions are well-documented. The three new MySQL version entries (8.1~8.3, 8.4, 9.x) follow the established format. The incompatibility note for MySQL 8.4 includes a reference to the tracking issue, which is helpful for users.

br/br-snapshot-guide.md (1)

106-106: Important Table Mode behavior documented during snapshot restore. Line 106 adds crucial information about automatic Table Mode transition during and after restore operations. This helps users understand the temporary read/write blocking behavior during restoration.

br/br-pitr-guide.md (1)

120-120: Consistent Table Mode documentation across BR guides. The Table Mode explanation at line 120 mirrors the corresponding content in br-snapshot-guide.md line 106, ensuring users receive consistent information whether using snapshot or PITR restore methods.

tiflash/tiflash-configuration.md (1)

272-278: New TiFlash graceful shutdown configuration is comprehensive. The parameter documentation clearly describes the timeout behavior, defaults, unit, and interaction with TiDB, providing operators with necessary context for tuning shutdown behavior during routine maintenance.

tikv-configuration-file.md (1)

763-767: Verify unit change for raft-log-gc-count-limit aligns with code implementation. Line 766 changes the documentation from 1 MiB to 1 KiB per log, which is a 1000x difference in calculation. This requires verification that:

  1. The corresponding TiKV code change exists
  2. Upgrade guidance is provided for operators
  3. Release notes clearly document this behavioral change

Please confirm this unit change reflects an actual code modification and provide context on whether this is a bug fix or optimization requiring operator awareness.

TOC.md (1)

1092-1092: New TOC entry added for DDL-embedded Analyze documentation. Line 1092 adds a navigation link to embedded Analyze feature documentation. Placement in the reference guide section is appropriate.

Please confirm that the referenced file /ddl_embedded_analyze.md exists in the repository. This is referenced by multiple other files in the PR but the file itself is not provided for review.

sql-statements/sql-statement-create-table.md (1)

130-135: Grammar documentation correctly adds parenthesized literal support. Line 135 extends DefaultValueExpr to allow '(' SignedLiteral ')', making the grammar consistent with other alternatives like NowSymOptionFractionParentheses and NextValueForSequenceParentheses that also support parenthesization.

sql-statements/sql-statement-add-column.md (1)

34-51: Grammar refactor introduces reusable DefaultValueExpr nonterminal. Lines 34 and 46-51 replace inline DEFAULT alternatives with a centralized DefaultValueExpr definition. This improves grammar consistency and maintainability across DDL statements.

Please verify that the DefaultValueExpr definition at lines 46-51 is consistent across all SQL statement files (CREATE TABLE, ADD COLUMN, CHANGE COLUMN, MODIFY COLUMN). Ensure no grammar conflicts are introduced by this refactoring.

sql-statements/sql-statement-change-column.md (1)

37-58: No action required—DefaultValueExpr is consistent across all related grammar pages.

Verification confirms the DefaultValueExpr definition in sql-statement-change-column.md matches identically across sql-statement-create-table.md, sql-statement-add-column.md, and sql-statement-modify-column.md. All files define the same five alternatives with identical syntax.

sql-statements/sql-statement-modify-column.md (1)

37-58: No action required—DefaultValueExpr is already consistent across all pages.

Verification confirms the DefaultValueExpr block in the MODIFY COLUMN page is identical to the definitions in CHANGE COLUMN, ADD COLUMN, and CREATE TABLE pages. All four files use the same production rule without drift.

ddl_embedded_analyze.md (1)

44-45: Anchor, default value, and scope verified as correct.

The section tidb_stats_update_during_ddl exists in system-variables.md with version mark "从 v8.5.4 和 v9.0.0 版本开始引入". The default value is OFF and scope is SESSION | GLOBAL, matching the link and description in the document.

system-variables.md (1)

4866-4869: Wording is consistent and correctly mirrored across both files.

The version scope ("从 v8.5.4 和 v9.0.0 开始,该变量仅对只读 SQL 语句生效") is identically stated in both system-variables.md and follower-read.md. No changes needed.

follower-read.md (1)

84-87: Verify Grafana panel version information in follower-read.md line 86.

The panel title "Read Req Traffic" and anchor path /grafana-tidb-dashboard.md#kv-request are correct. However, the version claim "从 v8.5.4 和 v9.0.0 开始引入" could not be verified in the codebase documentation. Confirm whether these version tags are accurate or should be updated/removed.

Comment on lines +88 to +95
+---------+------------+----------------+-------------+----------+---------------------+----------------+------------+--------------+-------------+-------------+-----------------+----------------+----------------+---------------+
| Db_name | Table_name | Partition_name | Column_name | Is_index | Update_time | Distinct_count | Null_count | Avg_col_size | Correlation | Load_status | Total_mem_usage | Hist_mem_usage | Topn_mem_usage | Cms_mem_usage |
+---------+------------+----------------+-------------+----------+---------------------+----------------+------------+--------------+-------------+-------------+-----------------+----------------+----------------+---------------+
| test | t | | a | 0 | 2025-10-30 20:17:57 | 3 | 0 | 0.5 | 1 | allLoaded | 155 | 0 | 155 | 0 |
| test | t | | idx | 1 | 2025-10-30 20:17:57 | 3 | 0 | 0 | 0 | allLoaded | 182 | 0 | 182 | 0 |
+---------+------------+----------------+-------------+----------+---------------------+----------------+------------+--------------+-------------+-------------+-----------------+----------------+----------------+---------------+
2 rows in set (0.013 sec)
```
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Fix duplicated histogram rows in examples.

SHOW STATS_HISTOGRAMS outputs list a/idx twice for table s. This looks like an accidental duplication; keep a single row per column/index.

- | test    | s ... | a | 0 | ... |
- | test    | s ... | a | 0 | ... |
+ | test    | s ... | a | 0 | ... |
...
- | test    | s ... | idx | 1 | ... |
- | test    | s ... | idx | 1 | ... |
+ | test    | s ... | idx | 1 | ... |

Also applies to: 153-161

🤖 Prompt for AI Agents
In ddl_embedded_analyze.md around lines 88 to 95 (and similarly at 153-161), the
example output for SHOW STATS_HISTOGRAMS contains duplicated rows for
columns/indexes (a and idx appear twice); edit the example output to keep a
single row per column/index by removing the accidental duplicate entries so each
Db_name/Table_name/Column_name combination appears only once and adjust the row
count line accordingly.

Comment on lines +23 to 38
| Red Hat Enterprise Linux 8.6 及以上的 8.x 版本 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| Amazon Linux 2 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| Amazon Linux 2023 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| Rocky Linux 9.1 及以上的版本 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| 银河麒麟 V10 SP1/SP2/SP3(从 v7.5.5 开始支持 SP3) | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| 统信操作系统 (UOS) V20 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| openEuler 22.03 LTS SP1/SP3 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| macOS 13 (Ventura) 及以上的版本 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| openEuler 24.03 LTS SP4 及以上的版本 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| macOS 14 (Sonoma) 及以上的版本 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| Oracle Enterprise Linux 8 及以上的版本 | x86_64 |
| Ubuntu LTS 22.04 及以上的版本 | x86_64 |
| CentOS 9 Stream | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| Debian 11 (Bullseye) 及以上的版本 | x86_64 |
| Fedora 40 及以上的版本 | x86_64 |
| CentOS Stream 9 | <ul><li>x86_64</li><li>ARM 64</li></ul> |
| Debian 12 (Bookworm) 及以上的版本 | x86_64 |
| Fedora 42 及以上的版本 | x86_64 |
| openSUSE Leap 15.6 以上的版本(不包含 Tumbleweed) | x86_64 |
| SUSE Linux Enterprise Server 15.6 | x86_64 |
| SUSE Linux Enterprise Server 15.6 及以上的版本 | x86_64 |

Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

Request validation of new OS entries and architectures.

Please confirm ARM64 support matrix for Ubuntu/Debian/Fedora lines and the minimum supported versions (RHEL 8.6+, CentOS Stream 9, Debian 12, Fedora 42) against current release policy. If ARM64 is supported on these distros, list it explicitly for consistency.

Also applies to: 33-35


🏁 Script executed:

#!/bin/bash
# Check for ARM64 mentions consistency in OS table across docs
rg -nC2 -e 'Ubuntu LTS|Debian 12|Fedora 42|CentOS Stream 9' hardware-and-software-requirements.md

# If policy doc exists, surface it
fd -t f 'release-policy' -a || true

Length of output: 504





---

🌐 Web query:

```web
Ubuntu 22.04 LTS ARM 64 aarch64 support

💡 Result:

Yes — Ubuntu 22.04 LTS (Jammy Jellyfish) has official 64‑bit ARM (ARMv8 / AArch64 / arm64) images (server and preinstalled/desktop variants) and is fully supported on aarch64 hardware. [1][2]

Support timeline:

  • Standard (free) security support ends April 2027.
  • Extended Ubuntu Pro support (paid/ESM) extends security updates to April 2032. [2]

References:

  • Official 22.04 release/download images (includes 64‑bit ARM/AArch64). [1]
  • Ubuntu security/ESM schedule showing 22.04 LTS support dates. [2]

🌐 Web query:

Debian 12 Bookworm ARM 64 aarch64 architecture support

💡 Result:

Short answer: Yes — Debian 12 "Bookworm" officially supports 64-bit ARM (aarch64 / arm64). Official arm64 release notes, installation images and cloud images are provided (including re‑introduced Secure Boot support on UEFI‑capable ARM64), and arm64 packages/tools (e.g. crossbuild-essential-arm64) are available in the archive. [1][2][3]


🌐 Web query:

Fedora 42 ARM 64 aarch64 architecture support

💡 Result:

Yes — Fedora 42 officially supports ARM 64 (aarch64). Official aarch64 images (Workstation, Server, Silverblue, Container/Everything, Labs, etc.) were published with the Fedora 42 release (RELEASE DATE: April 15, 2025) — you can download raw/qcow2/OCI images for aarch64 from Fedora mirrors. [1][2][3]

Sources:

  • Fedora Everything download page (lists network install ISO for aarch64; release date). [1]
  • Fedora 42 Workstation aarch64 images on official mirrors (raw image files). [2]
  • Fedora 42 Server / Silverblue / Container aarch64 image directories on official mirrors (qcow2, ociarchive, container base images). [3]

Add ARM 64 architecture support to Ubuntu 22.04 LTS, Debian 12, and Fedora 42 rows.

Ubuntu 22.04 LTS has official 64-bit ARM (aarch64) support, Debian 12 officially supports 64-bit ARM (aarch64), and Fedora 42 officially supports ARM 64 (aarch64). These should list both x86_64 and ARM 64 for consistency with CentOS Stream 9's entry.

Lines 32, 34, 35: Change architecture column from x86_64 to <ul><li>x86_64</li><li>ARM 64</li></ul> for Ubuntu LTS 22.04, Debian 12, and Fedora 42 respectively.

🤖 Prompt for AI Agents
In hardware-and-software-requirements.md around lines 23 to 38, the Ubuntu 22.04
LTS, Debian 12, and Fedora 42 rows list only x86_64 but should include ARM 64 as
well; update the architecture column for those three rows (lines ~32, ~34, ~35)
from "x86_64" to an HTML list containing both x86_64 and ARM 64 (i.e., replace
the single architecture cell with <ul><li>x86_64</li><li>ARM 64</li></ul>) so
they match the format used for other multi-arch rows.

Comment on lines +1 to +8
# See the OWNERS docs at https://www.kubernetes.dev/docs/guide/owners/#owners
# The members of 'sig-community-*' are synced from memberships defined in repository: https://github.com/pingcap/community.
filters:
.*:
approvers:
- sig-community-approvers
reviewers:
- sig-community-reviewers
Copy link

Choose a reason for hiding this comment

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

⚠️ Potential issue | 🟡 Minor

Note: PR title doesn't match actual changes.

The PR title mentions "Update system-variables.md", but the actual changes are to the OWNERS and OWNERS_ALIASES files. Consider updating the PR title and description to accurately reflect the ownership structure changes being made.

🤖 Prompt for AI Agents
OWNERS lines 1-8: The PR title/description are inaccurate (they say "Update
system-variables.md" while the changes modify OWNERS/OWNERS_ALIASES); update the
PR title and description to correctly reflect that this change updates
repository ownership metadata (OWNERS and OWNERS_ALIASES). Edit the PR title to
mention "Update OWNERS and OWNERS_ALIASES" and update the PR description body to
summarize the ownership/approver/reviewer updates and link to the ownership docs
or rationale.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.