i18n(ja): fix mistranslations and dropped particles across the best-practices/ directory - #23888
Conversation
…tices - saas-best-practices.md: "Use stale read carefully" mistranslated as "read old things carefully" -- confuses the Stale Read feature name with generic "old things", contradicting the correct term used in the very next paragraph. - tidb-partitioned-tables-best-practices.md: a dropped negation flipped "non-partitioned table" into "partitioned table" directly contradicting the section's own heading right above it; 3 more sites in a comparison list/table/details-summary where "Non- partitioned table" was rendered as bare パーティションテーブル, indistinguishable from its "partitioned" sibling rows; a severely scrambled recommendation sentence with a stray unclosed "(パーティション番号" fragment with no basis in EN. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…s-best-practices.md Found during review: missing を before 定期的に更新する and before サポートしていません. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…ped particles in tidb-best-practices.md - "load balancing" mistranslated as "Raftバランシング" (nonsensical), contradicting the correctly-translated ロードバランシング heading later in the same file. - Table `t` and column `c` swapped in an example, self-contradicting the SQL statement shown in the same sentence. - A false-friend translation of "on 2017-05-26" as "2017-05-26上の" (spatially "on top of" rather than "on that date"). - 2 dropped を particles. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… best-practices-on-public-cloud.md
- "cordoned node" (a Kubernetes term for marked-unschedulable)
mistranslated as 切断された (disconnected); also restored the
dropped "by cordoning it" mechanism from the preceding sentence.
- "watching script" mistranslated as スクリプトを見る (literally
"look at the script") instead of 監視スクリプト, which the same
file already uses correctly a few lines later.
- 3 sites of a recurring MT-duplication artifact ("Raft Raft Engine").
- 文/ステートメント inconsistency for "insert statements" within one
bullet list.
- Several dropped particles (は x3, を x2, が x1) found while fixing
the above, including one creating a run-on sentence.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…aproxy-best-practices.md - "Health Check" mistranslated as 健康チェック (a medical-checkup false friend) instead of the standard ヘルスチェック term. - Literal package name epel-release transliterated into katakana, inconsistent with its correct literal use in the same command a few lines below. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
… particles in massive-regions-best-practices.md - から/に particle used backwards, making "X is configured to 2" read as "configured FROM X TO 2". - Duplicated "RaftstoreRaftstore" MT artifact. - 4 dropped particles (が x3, を x1) found during review. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…n pd-scheduling-best-practices.md - A dropped fallback tier: EN describes 3 tiers (zones -> racks -> hosts) but JA dropped the middle "schedule to racks" step entirely, losing real content. - 3 sites mixing polite ないでください with plain ない across one parallel bullet list of negative constraints. - A stray unmatched opening quote 「 with no closing 」. - 2 dropped は particles. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…nodes-hybrid-deployment.md A scrambled sentence read "the default value is rocksdb.max-background-jobs, but it's set to 8" instead of "the default value of rocksdb.max-background-jobs is 8" (subject and value swapped). Also fixed 3 more dropped particles (の x2, は x1) found while reviewing the surrounding paragraphs. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…n uuid.md - An unclosed parenthesis and dropped structure garbled the explanation of UUID_TO_BIN()'s one-argument vs two-argument forms. - A missing opening backtick before \`BINARY(16)\` in the frontmatter summary. - 2 dropped を particles. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…c-local-read.md summary - A stray leftover untranslated "Stale" sitting directly beside its own correct translation "ステイル読み取り". - A missing opening backtick before \`zone\`. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
EN bolds both **AND** and **OR** condition names, but JA only bolded OR; separately, an object particle を was trapped inside its own bold span with no EN counterpart at all. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…ncy-best-practices.md Duplicated "RaftRaft" (dropped グループ, should be "Raftグループでは") plus 3 dropped particles found during review. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…-management-best-practices.md Restore を/は/が/の particles dropped immediately after backticked identifiers (TIDB_INDEX_USAGE, CLUSTER_TIDB_INDEX_USAGE, schema_unused_indexes, LAST_ACCESS_TIME, PERCENTAGE_ACCESS_100) in two headings and five sentences. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before 例にとる and before a linked 論理DDL文, both missing after the linked/backticked term. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before 追加する, dropped after the linked deploy-a-tidb-cluster-using-tiup reference. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before ご覧ください and before カスタマイズできます, both dropped immediately after a linked term. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before 使用 and が before 解析されない, both dropped right after the backticked `$` label-prefix character. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…d.md Restore は before the RocksDB storage-engine sentence, ことで connecting the Titan/compression-level links to the performance improvement clause, and が before 推奨されます for gp3/Premium SSD v2/pd-extreme, all dropped after a linked term. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before 読みいただく, dropped after the linked TiDB Best Practices blog reference. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before 参考にして (dropped after the linked Load balancing reference), before 大きく調整する (max-store-down-time), and before 加算した (evict-leader-scheduler). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Restore を before ご覧ください, dropped after the linked migration tool overview reference. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…t-practices.md Restore の before 手順に従います, dropped after the linked best-practices reference for non-clustered partitioned tables. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…t-practices.md Restore の before パフォーマンスに関する調査結果 and は before the DROP PARTITION comparison bullet, both dropped after the backticked DROP PARTITION term. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…ices.md Restore を before 提供しています, dropped after the linked schema_unused_indexes reference. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
📝 WalkthroughWalkthroughThe pull request updates Japanese best-practices documentation. It corrects grammar, terminology, formatting, and selected technical descriptions. It does not change code logic or configuration behavior. ChangesJapanese documentation updates
Priority: ⬇️ Low Estimated code review effort: 1 (Trivial) | ~5 minutes Change: Bug fix Suggested reviewers: Merge Risk: 🔵 Low · up to The localized wording may confuse readers about the relationship between deployment and topology configuration, but the impact is limited to documentation. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
🧪 Generate unit tests (beta)
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. Comment |
Restore the Azure disk product name to literal English in the link text, matching its own literal use in the following sentence and the literal treatment of every other disk product name in this file (gp3, io2, pd-ssd, pd-extreme, Ultra Disk). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…st-practices.md "TiKV master" refers to the tikv/tikv repository's master branch (the link points to github.com/tikv/tikv/tree/master), not a "master node". Restore it as a literal branch-name reference, matching the sibling [`master`](.../tree/master) pattern already used in README.md, instead of the misleading マスター rendering that implies a master/slave role. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Kubernetes' own official Japanese documentation keeps "cordon" as literal English (e.g. "cordonされたNode"), never katakanizing it. Match that established convention instead of the katakana コルドン used in the previous fix. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…est-practices.md The JA text said schema_unused_indexes "excludes" (除外する) indexes with zero recorded query activity, inverting the actual meaning: per the docs-cn source (筛选出, "filter/select out") and the sentence immediately after showing SELECT * FROM sys.schema_unused_indexes returning exactly those indexes, the view actually extracts/surfaces them, it does not exclude them. Fixed to 抽出する. Also removed a stray space in クエリ アクティビティ and reworded "0 個" to "0 回" to match "zero query activity" more naturally. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The heading translated "Hibernate Region" as 休止状態リージョン while every other occurrence of this TiKV feature name in the same file (summary, and 2 body sentences) keeps it literal as Hibernateリージョン. Align the heading to match, since EN itself always writes "Hibernate Region" literally, including in this exact heading. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…-best-practices.md The file mixed literal English "Leader" (Region Leader, Raft Group Leader) with katakana リーダー for the same concept, including both forms within a single sentence at one point. EN itself capitalizes this term inconsistently (Region Leader vs. leader election vs. Region leader), so it is not a fixed literal identifier. Unify to リーダー, matching this file's own majority usage and the established corpus-wide convention (PDリーダー, リージョンリーダー). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…gions-best-practices.md - "PD Leader" (literal English, in a heading and its body) contradicted the file's own summary and the corpus-wide convention of katakana PDリーダー. Unified to PDリーダー. - "tick message" was rendered as fully-katakana ティックメッセージ at 2 sites but as mixed "tick メッセージ" at a 3rd, within the same file. Unified to the file's majority form, ティックメッセージ. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…st-practices.md A Note block used bolded literal "Leaderの排除" 3 times, standing out against this file's otherwise near-universal use of katakana リーダー (30+ occurrences). Unified to リーダーの排除 for consistency. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
"仕様" (specification) is not naturally something you "increase" in Japanese; reworded both occurrences to 割り当て (allocation), matching the intended meaning of "increase memory specifications" (i.e. the amount of memory allocated). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 5
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Advanced
Run ID: 3bc92108-2dc8-45cc-a8d1-6a819761983e
📒 Files selected for processing (16)
best-practices/best-practices-on-public-cloud.mdbest-practices/ddl-introduction.mdbest-practices/grafana-monitor-best-practices.mdbest-practices/haproxy-best-practices.mdbest-practices/high-concurrency-best-practices.mdbest-practices/index-management-best-practices.mdbest-practices/massive-regions-best-practices.mdbest-practices/multi-column-index-best-practices.mdbest-practices/pd-scheduling-best-practices.mdbest-practices/readonly-nodes.mdbest-practices/saas-best-practices.mdbest-practices/three-dc-local-read.mdbest-practices/three-nodes-hybrid-deployment.mdbest-practices/tidb-best-practices.mdbest-practices/tidb-partitioned-tables-best-practices.mdbest-practices/uuid.md
Included review availability: Your plan provides up to 4 included reviews per hour; 3 remain after this review.
| ### `schema_unused_indexes`の仕組み {#how-schema-unused-indexes-works} | ||
|
|
||
| `schema_unused_indexes`ビューは`TIDB_INDEX_USAGE`から派生しており、最後の TiDB 再起動以降にクエリ アクティビティが 0 個記録されたインデックスを自動的に除外することを意味します。 | ||
| `schema_unused_indexes`ビューは`TIDB_INDEX_USAGE`から派生しており、最後の TiDB 再起動以降にクエリアクティビティが 0 回記録されたインデックスを自動的に抽出することを意味します。 |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
sed -n '145,190p' best-practices/index-management-best-practices.md
rg -n -C 3 'schema_unused_indexes|CLUSTER_TIDB_INDEX_USAGE|TIDB_INDEX_USAGE' . --glob '*.md' --glob '*.sql' --glob '*.go' 2>/dev/null | head -240Repository: pingcap/docs
Length of output: 28833
🏁 Script executed:
#!/bin/bash
set -eu
file=$(fd -t f 'sys-schema-unused-indexes\.md$' . | head -1)
printf 'FILE=%s\n' "$file"
sed -n '1,240p' "$file"
printf '\n--- version references ---\n'
rg -n -C 4 'schema_unused_indexes|CLUSTER_TIDB_INDEX_USAGE|TIDB_INDEX_USAGE|restart|再起動|起動|8\.5' "$file" best-practices/index-management-best-practices.md releases --glob '*.md' | head -260Repository: pingcap/docs
Length of output: 26546
🏁 Script executed:
#!/bin/bash
set -eu
file=$(fd -t f 'information-schema-tidb-index-usage\.md$' . | head -1)
printf 'FILE=%s\n' "$file"
rg -n -C 6 'CLUSTER_TIDB_INDEX_USAGE|restart|再起動|起動|memory|メモリ|version|v8\.|last' "$file" | head -260
printf '\n--- matching schema pages and branches ---\n'
fd -t f . | rg '(^|/)(v8\.5|8\.5|information-schema-tidb-index-usage|sys-schema-unused-indexes)'Repository: pingcap/docs
Length of output: 1856
Describe the cluster-wide source and restart scope of schema_unused_indexes.
The view definition reads from information_schema.cluster_tidb_index_usage, which aggregates usage from all TiDB instances. Usage data is cleared when each instance restarts, so describe each instance's restart boundary rather than implying one cluster-wide restart.
Suggested replacement
| `schema_unused_indexes`ビューは`TIDB_INDEX_USAGE`から派生しており、最後の TiDB 再起動以降にクエリアクティビティが 0 回記録されたインデックスを自動的に抽出することを意味します。 | |
| `schema_unused_indexes`ビューは`CLUSTER_TIDB_INDEX_USAGE`から派生しており、各 TiDB インスタンスの最後の起動以降、いずれの TiDB インスタンスでもアクセスが記録されていないインデックスを自動的に抽出します。 |
There was a problem hiding this comment.
Thanks — the underlying technical point is correct (verified against sys-schema/sys-schema-unused-indexes.md's actual view definition, which does SELECT ... FROM information_schema.cluster_tidb_index_usage ... GROUP BY ... HAVING sum(last_access_time) is null, so it aggregates per-instance restart data across the whole cluster, not a single "last TiDB restart").
However, this JA line is a faithful translation of the current EN source, which itself says the same thing:
The
schema_unused_indexesview is derived fromTIDB_INDEX_USAGE, meaning it automatically filters out indexes that have recorded zero query activity since the last TiDB restart.
Since this is an EN-side factual inaccuracy rather than a JA translation defect, I'll file a separate PR against the English release-8.5 source to fix it there, and let the fix propagate to this JA branch through the normal sync process rather than diverging JA from the current EN text in this PR. Declining the suggested JA-only edit here; not resolving this thread so it stays visible until the EN fix lands.
There was a problem hiding this comment.
@yahonda, understood. The finding remains valid, but the correction belongs in the English release-8.5 source. Keeping this thread open until the English source update lands is appropriate.
✏️ Learnings added
Learnt from: yahonda
Repo: pingcap/docs PR: 23888
File: best-practices/index-management-best-practices.md:182-182
Timestamp: 2026-09-16T06:07:46.368Z
Learning: In `pingcap/docs`, `sys.schema_unused_indexes` derives its results from `information_schema.cluster_tidb_index_usage`. It aggregates index-usage data across TiDB instances, and each instance clears its usage data when that instance restarts. Japanese documentation that faithfully translates an inaccurate English source should normally be corrected through the English source and the standard translation-sync process rather than by a Japanese-only divergence.
Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.
You are interacting with an AI system.
| ``` | ||
|
|
||
| - パーティションキーを使用しないクエリのスキャンオーバーヘッドを削減するには、グローバルインデックスを作成する必要があります。グローバルインデックスは`DROP PARTITION`操作を遅くする可能性がありますが、ハッシュおよびキーパーティションテーブルは`DROP PARTITION`サポートしていません。したがって、これらのパーティションはほとんど切り捨てられないため、グローバルインデックスは実用的なソリューションです。例: | ||
| - パーティションキーを使用しないクエリのスキャンオーバーヘッドを削減するには、グローバルインデックスを作成する必要があります。グローバルインデックスは`DROP PARTITION`操作を遅くする可能性がありますが、ハッシュおよびキーパーティションテーブルは`DROP PARTITION`をサポートしていません。したがって、これらのパーティションはほとんど切り捨てられないため、グローバルインデックスは実用的なソリューションです。例: |
There was a problem hiding this comment.
🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
🔎 Supported by static analysis
🏁 Script executed:
sed -n '415,440p' best-practices/tidb-partitioned-tables-best-practices.md
rg -n -C 3 'HASH.*DROP PARTITION|KEY.*DROP PARTITION|DROP PARTITION.*HASH|DROP PARTITION.*KEY|ハッシュ.*DROP PARTITION|キーパーティション' . --glob '*.md' 2>/dev/null | head -240Repository: pingcap/docs
Length of output: 11844
Describe the unsupported operation directly.
DROP PARTITION is not supported for HASH and KEY partitioned tables. The current wording says that these partitions are “rarely truncated,” which incorrectly describes frequency and can obscure the actual limitation.
| - パーティションキーを使用しないクエリのスキャンオーバーヘッドを削減するには、グローバルインデックスを作成する必要があります。グローバルインデックスは`DROP PARTITION`操作を遅くする可能性がありますが、ハッシュおよびキーパーティションテーブルは`DROP PARTITION`をサポートしていません。したがって、これらのパーティションはほとんど切り捨てられないため、グローバルインデックスは実用的なソリューションです。例: | |
| - パーティションキーを使用しないクエリのスキャンオーバーヘッドを削減するには、グローバルインデックスを作成する必要があります。グローバルインデックスは`DROP PARTITION`操作を遅くする可能性がありますが、ハッシュおよびキーパーティションテーブルは`DROP PARTITION`をサポートしていません。したがって、これらのテーブルでは`DROP PARTITION`によるパーティション削除を行えないため、グローバルインデックスは実用的なソリューションです。例: |
There was a problem hiding this comment.
This is a faithful translation of the current EN source, which contains the same "rarely truncated" framing:
Although global indexes can slow down
DROP PARTITIONoperations, Hash and Key partitioned tables do not supportDROP PARTITION. Therefore, global indexes are a practical solution because these partitions are rarely truncated.
Agreed this reads as a logical inconsistency (not supporting an operation at all isn't the same as rarely performing it) — but since the JA text mirrors this EN wording exactly, I'll raise the wording fix against the English release-8.5 source separately rather than diverging JA from current EN in this PR. Declining the suggested JA-only edit here; leaving this thread open until the EN fix lands.
There was a problem hiding this comment.
@yahonda, understood. The Japanese text should remain aligned with the current English source in this PR.
The wording issue remains in the English release-8.5 source. Keep this thread open until the source correction is available.
✏️ Learnings added
Learnt from: yahonda
Repo: pingcap/docs PR: 23888
File: best-practices/tidb-partitioned-tables-best-practices.md:431-431
Timestamp: 2026-09-16T06:06:42.360Z
Learning: In `best-practices/tidb-partitioned-tables-best-practices.md`, the Japanese statement that Hash and Key partitioned tables are “rarely truncated” is a faithful translation of the current English `release-8.5` source. Correct the English source first to avoid a Japanese-only wording divergence.
Note: Learnings are effective only in the context of similar code segments. To apply general coding guidelines, please configure review instructions. You can manage existing learnings in the app.
You are interacting with an AI system.
…plete predicates - grafana-monitor-best-practices.md: separate the topology-update clause (add Grafana and Prometheus) from the TiUP-deploy link, which had been left as the object of 追加する after an earlier partial fix. - high-concurrency-best-practices.md: add the honorific お prefix (お読みいただく, not 読みいただく) and complete the follower-read parenthetical (サポートしています, not the bare stem サポート). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Actionable comments posted: 1
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: ASSERTIVE
Plan: Advanced
Run ID: b8dbdf6c-49ed-485b-a7d3-4ba1459b590c
📒 Files selected for processing (2)
best-practices/grafana-monitor-best-practices.mdbest-practices/high-concurrency-best-practices.md
Included review availability: Your plan provides up to 4 included reviews per hour; 0 remain after this review.
[LGTM Timeline notifier]Timeline:
|
What is changed, added or deleted? (Required)
Fixes a range of Japanese translation defects across all 16 files in
best-practices/(excluding_index.md, which was already clean), found during a full read-through review of the directory:saas-best-practices.md), "load balancing" mistranslated asRaftバランシング(tidb-best-practices.md),cordonedmistranslated as切断された(best-practices-on-public-cloud.md),watching scriptmistranslated as "look at the script" (best-practices-on-public-cloud.md),Health Checkmistranslated as a medical checkup (haproxy-best-practices.md), a literal package nameepel-releasetransliterated into katakana (haproxy-best-practices.md).tidb-partitioned-tables-best-practices.md).tidb-best-practices.md).massive-regions-best-practices.md).pd-scheduling-best-practices.md).three-nodes-hybrid-deployment.md).uuid.md).best-practices-on-public-cloud.md,high-concurrency-best-practices.md,massive-regions-best-practices.md).AND/ORwere bolded asymmetrically (multi-column-index-best-practices.md).pd-scheduling-best-practices.md).summaryfields (three-dc-local-read.md,uuid.md).Which TiDB version(s) do your changes apply to? (Required)
What is the related PR or file link(s)?
AI agent involvement
Do your changes match any of the following descriptions?
🤖 Generated with Claude Code
Summary by CodeRabbit