From 72cfa7b9d51f2f461ecadd93aa119b8d48c23311 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 09:14:00 +0900 Subject: [PATCH 1/8] i18n(ja): keep SQL transaction isolation level names in English MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Repeatable Read and Read Committed (and their literal SQL keyword forms REPEATABLE READ / READ COMMITTED) are SQL-92 standard isolation-level names, not descriptive phrases. Unifies 3 competing literal-kanji/katakana translations of Repeatable Read (繰り返し読み取り/反復可能読み取り/リピータブルリード) to the literal English term, mirroring each site's own exact EN casing (title case in prose, lowercase in the SQL-92 four-level list, all-caps for literal SQL syntax, which was already correct and untouched). Also converts the 2 sibling entries in that same four-level bullet list (read uncommitted, serializable) that were left translated while the other two entries in the identical list were being fixed, producing an inconsistent list; the trailing full stop after "serializable" mirrors EN's own list, which ends the last item with a period. Also fixes 3 directly-adjacent Read Committed occurrences that were the same defect on the same line/heading/file as a Repeatable Read fix: transaction-isolation-levels.md's "## Read Committed isolation level" heading, which the rest of that file already used consistently in body text; one shared table cell in tidb-performance-tuning-config.md; and a literal "コミット済みを読む" link text in pessimistic-transaction.md that should read "Read Committed" like its sibling "Repeatable Read" link two lines above. Other Read Committed occurrences elsewhere in the corpus are out of scope for this PR. Also removes 2 stray "SI" text fragments left before two links in transaction-isolation-levels.md, an unrelated pre-existing MT artifact on the same sentence with no counterpart in EN. --- develop/dev-guide-transaction-overview.md | 10 +++++----- pessimistic-transaction.md | 6 +++--- tidb-cloud/transaction-concepts.md | 2 +- tidb-performance-tuning-config.md | 2 +- transaction-isolation-levels.md | 14 +++++++------- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/develop/dev-guide-transaction-overview.md b/develop/dev-guide-transaction-overview.md index 65355daad5a0d..914bf09d62f47 100644 --- a/develop/dev-guide-transaction-overview.md +++ b/develop/dev-guide-transaction-overview.md @@ -130,10 +130,10 @@ SELECT * FROM `users`; SQL-92 標準では、次の4つの分離レベルが定義されています。 -- コミットされていない読み取り ( `READ UNCOMMITTED` ) -- コミットされた読み取り ( `READ COMMITTED` ) -- 繰り返し読み取り ( `REPEATABLE READ` ) -- シリアル化可能( `SERIALIZABLE` )。 +- read uncommitted ( `READ UNCOMMITTED` ) +- read committed ( `READ COMMITTED` ) +- repeatable read ( `REPEATABLE READ` ) +- serializable ( `SERIALIZABLE` )。 詳細については、以下の表を参照してください。 @@ -159,7 +159,7 @@ mysql> SET TRANSACTION ISOLATION LEVEL SERIALIZABLE; ERROR 8048 (HY000): The isolation level 'SERIALIZABLE' is not supported. Set tidb_skip_isolation_level_check=1 to skip this error ``` -TiDBは、MySQLとの整合性を確保するために、スナップショット分離(SI)レベルの整合性(「繰り返し読み取り」とも呼ばれます)を実装しています。この分離レベルは[ANSI繰り返し読み取り分離レベル](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)および[MySQL 繰り返し読み取り分離レベル](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。詳細については、 [TiDBトランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 +TiDBは、MySQLとの整合性を確保するために、スナップショット分離(SI)レベルの整合性(「repeatable read」とも呼ばれます)を実装しています。この分離レベルは[ANSI Repeatable Read Isolation Level](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)および[MySQL Repeatable Read Isolation Level](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。詳細については、 [TiDBトランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 ## ヘルプが必要ですか? {#need-help} diff --git a/pessimistic-transaction.md b/pessimistic-transaction.md index e4757a5c2d035..347cd7fa41ed7 100644 --- a/pessimistic-transaction.md +++ b/pessimistic-transaction.md @@ -132,13 +132,13 @@ TiDB の悲観的なトランザクションは、MySQL のトランザクショ TiDBは、悲観的トランザクションモードにおいて、以下の2つの分離レベルをサポートしています。 -- デフォルトでは[繰り返し読み取り可能](/transaction-isolation-levels.md#repeatable-read-isolation-level)、これは MySQL と同じです。 +- デフォルトでは[Repeatable Read](/transaction-isolation-levels.md#repeatable-read-isolation-level)、これは MySQL と同じです。 > **Note:** > - > この分離レベルでは、最新のコミットされたデータに基づいて DML 操作が実行されます。動作は MySQL と同じですが、TiDB の楽観的トランザクションモードとは異なります。 [TiDBとMySQLのリピータブルリードの違い](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)を参照してください。 + > この分離レベルでは、最新のコミットされたデータに基づいて DML 操作が実行されます。動作は MySQL と同じですが、TiDB の楽観的トランザクションモードとは異なります。 [TiDBとMySQLのRepeatable Readの違い](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)を参照してください。 -- [コミット済みを読む](/transaction-isolation-levels.md#read-committed-isolation-level)。この分離レベルは[`SET TRANSACTION`](/sql-statements/sql-statement-set-transaction.md)ステートメントを使用して設定できます。 +- [Read Committed](/transaction-isolation-levels.md#read-committed-isolation-level)。この分離レベルは[`SET TRANSACTION`](/sql-statements/sql-statement-set-transaction.md)ステートメントを使用して設定できます。 ## 悲観的なトランザクションコミットプロセス {#pessimistic-transaction-commit-process} diff --git a/tidb-cloud/transaction-concepts.md b/tidb-cloud/transaction-concepts.md index 2483ea196ab78..2209066c33801 100644 --- a/tidb-cloud/transaction-concepts.md +++ b/tidb-cloud/transaction-concepts.md @@ -27,7 +27,7 @@ TiDBでは、悲観的トランザクションモードはMySQLとほぼ同じ トランザクション分離は、データベーストランザクション処理の基盤の一つです。分離は、トランザクションの4つの主要な特性(一般的に[ACID](/tidb-cloud/tidb-cloud-glossary.md#acid)と呼ばれます)の一つです。 -TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として宣伝されています。これは[ANSI繰り返し読み取り分離レベル](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)や[MySQL 繰り返し読み取りレベル](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 +TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として宣伝されています。これは[ANSI Repeatable Read isolation level](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 詳細については[TiDBトランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 diff --git a/tidb-performance-tuning-config.md b/tidb-performance-tuning-config.md index 207cac83fcd9d..e90c9185cdff7 100644 --- a/tidb-performance-tuning-config.md +++ b/tidb-performance-tuning-config.md @@ -67,7 +67,7 @@ SET GLOBAL tidb_opt_fix_control = '44262:ON,44389:ON,44823:10000,44830:ON,44855: | [`tidb_opt_derive_topn`](/system-variables.md#tidb_opt_derive_topn-new-in-v700) | 最適化ルール[ウィンドウ関数からTopNまたはLimitを導出する](/derive-topn-from-window.md)を有効にします。 | これは`ROW_NUMBER()`ウィンドウ機能に限定されます。 | | [`tidb_runtime_filter_mode`](/system-variables.md#tidb_runtime_filter_mode-new-in-v720) | ハッシュ結合の効率を向上させるには、ローカルモードで[ランタイムフィルタ](/runtime-filter.md#runtime-filter-mode)を有効にしてください。 | この変数はバージョン7.2.0で導入され、安全上の理由からデフォルトでは無効になっています。 | | [`tidb_opt_enable_mpp_shared_cte_execution`](/system-variables.md#tidb_opt_enable_mpp_shared_cte_execution-new-in-v720) | TiFlashへの非再帰的な[共通テーブル式(CTE)](/sql-statements/sql-statement-with.md)プッシュダウンを有効にします。 | これは実験的機能です。 | -| [`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600) | 読み取りコミット分離レベルの場合、この変数を有効にすると、グローバルタイムスタンプを取得する際のレイテンシーとコストが回避され、トランザクションレベルの読み取りレイテンシーが最適化されます。 | この機能は、リピータブルリード分離レベルとは互換性がありません。 | +| [`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600) | Read Committed分離レベルの場合、この変数を有効にすると、グローバルタイムスタンプを取得する際のレイテンシーとコストが回避され、トランザクションレベルの読み取りレイテンシーが最適化されます。 | この機能は、Repeatable Read分離レベルとは互換性がありません。 | | [`tidb_guarantee_linearizability`](/system-variables.md#tidb_guarantee_linearizability-new-in-v50) | PDサーバーからのコミットタイムスタンプの取得をスキップすることでパフォーマンスを向上させます。 | これは、線形化可能性を犠牲にしてパフォーマンスを優先するものです。因果的一貫性のみが保証されます。厳密な線形化可能性が求められるシナリオには適していません。 | | [`pd_enable_follower_handle_region`](/system-variables.md#pd_enable_follower_handle_region-new-in-v760) | PDFollower機能を有効にすると、PDフォロワーがリージョン要求を処理できるようになります。これにより、すべてのPDサーバーに負荷が均等に分散され、PDリーダーのCPU負荷が軽減されます。 | 該当なし | | [`tidb_opt_fix_control`](/system-variables.md#tidb_opt_fix_control-new-in-v653-and-v710) | 高度なクエリ最適化戦略を有効にすることで、追加の最適化ルールとヒューリスティックを通じてパフォーマンスを向上させることができます。 | ワークロードによってパフォーマンスの向上度合いが異なるため、ご使用の環境で十分にテストを行ってください。 | diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index a49d0146c2343..ce0a36e6364bd 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -26,7 +26,7 @@ SQL-92標準では、トランザクション分離レベルとして、Read Unc | REPEATABLE READ | 不可能 | 不可能 | 不可能 | 可能 | | SERIALIZABLE | 不可能 | 不可能 | 不可能 | 不可能 | -TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として宣伝されています。これはSI [ANSI繰り返し読み取り分離レベル](#difference-between-tidb-and-ansi-repeatable-read)やSI [MySQL 繰り返し読み取りレベル](#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 +TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として宣伝されています。これは[ANSI Repeatable Read isolation level](#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 > **Note:** > @@ -34,13 +34,13 @@ TiDBはスナップショット分離(SI)一貫性を実装しており、My > > TiDB v3.0.8以降、新規に作成されたTiDBクラスタはデフォルトで[悲観的トランザクションモード](/pessimistic-transaction.md)を使用します。現在の読み取り( `for update`読み取り)**は繰り返し不可能な読み取り**です。詳細は[悲観的トランザクションモード](/pessimistic-transaction.md)を参照してください。 -## 繰り返し読み取り分離レベル {#repeatable-read-isolation-level} +## Repeatable Read isolation level {#repeatable-read-isolation-level} -リピータブルリード分離レベルでは、トランザクション開始前にコミットされたデータのみが参照され、コミットされていないデータや、トランザクション実行中に同時実行トランザクションによってコミットされた変更は参照されません。ただし、トランザクション文は、自身のトランザクション内で実行された以前の更新の影響を参照します。これらの更新は、まだコミットされていない場合でも参照されます。 +Repeatable Read分離レベルでは、トランザクション開始前にコミットされたデータのみが参照され、コミットされていないデータや、トランザクション実行中に同時実行トランザクションによってコミットされた変更は参照されません。ただし、トランザクション文は、自身のトランザクション内で実行された以前の更新の影響を参照します。これらの更新は、まだコミットされていない場合でも参照されます。 異なるノードで実行されているトランザクションの場合、開始順序とコミット順序は、PD からタイムスタンプが取得される順序によって異なります。 -反復可能読み取り分離レベルのトランザクションは、同じ行を同時に更新できません。コミット時に、トランザクション開始後に別のトランザクションによってその行が更新されたことがわかった場合、トランザクションはロールバックされます。例: +Repeatable Read分離レベルのトランザクションは、同じ行を同時に更新できません。コミット時に、トランザクション開始後に別のトランザクションによってその行が更新されたことがわかった場合、トランザクションはロールバックされます。例: ```sql create table t1(id int); @@ -53,15 +53,15 @@ commit; | | commit; -- The transaction commit fails and rolls back. Pessimistic transactions can commit successfully. ``` -### TiDBとANSI繰り返し読み取りの違い {#difference-between-tidb-and-ansi-repeatable-read} +### TiDBとANSI Repeatable Readの違い {#difference-between-tidb-and-ansi-repeatable-read} TiDBのRepeatable Read分離レベルは、ANSIのRepeatable Read分離レベルとは同じ名前ですが、異なります。1番目の[ANSI SQL分離レベルの批評](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-95-51.pdf)に記載されている標準によると、TiDBはスナップショット分離レベルを実装しています。この分離レベルでは、厳密なファントム(A3)は許可されませんが、広範囲のファントム(P3)とライトスキューは許可されます。一方、ANSIのRepeatable Read分離レベルでは、ファントムリードは許可されますが、ライトスキューは許可されません。 -### TiDBとMySQLの繰り返し読み取りの違い {#difference-between-tidb-and-mysql-repeatable-read} +### TiDBとMySQLのRepeatable Readの違い {#difference-between-tidb-and-mysql-repeatable-read} TiDBのRepeatable Read分離レベルは、MySQLのそれとは異なります。MySQLのRepeatable Read分離レベルでは、更新時に現在のバージョンが可視かどうかがチェックされないため、トランザクション開始後に行が更新された場合でも更新を続行できます。一方、TiDBの楽観的トランザクションでは、トランザクション開始後に行が更新された場合、ロールバックされて再試行されます。TiDBの楽観的同時実行制御ではトランザクションの再試行が失敗し、最終的にトランザクションが失敗する可能性がありますが、TiDBの悲観的同時実行制御とMySQLでは、更新トランザクションが成功する可能性があります。 -## コミット読み取り分離レベル {#read-committed-isolation-level} +## Read Committed isolation level {#read-committed-isolation-level} TiDB v4.0.0-beta 以降、TiDB は Read Committed 分離レベルをサポートします。 From 5b0a672972de29e79089e3ad7456767de863c8b8 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 09:47:49 +0900 Subject: [PATCH 2/8] i18n(ja): fix particle/punctuation trapped inside bold spans MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two bold spans in the "Note" block had a leading 、 or は trapped just inside the opening/closing ** markers, where EN's own bold boundary excludes them (e.g. "it might **break the transaction isolation level**" — bold starts at "break", not at the preceding comma). --- transaction-isolation-levels.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index ce0a36e6364bd..015f1fc0dab85 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -30,9 +30,9 @@ TiDBはスナップショット分離(SI)一貫性を実装しており、My > **Note:** > -> TiDB v3.0以降、トランザクションの自動再試行はデフォルトで無効になっています。自動再試行を有効にすると**、トランザクション分離レベルが損なわれる**可能性があるため、有効にすることは推奨されません。詳細は[トランザクションの再試行](/optimistic-transaction.md#automatic-retry)を参照してください。 +> TiDB v3.0以降、トランザクションの自動再試行はデフォルトで無効になっています。自動再試行を有効にすると、**トランザクション分離レベルが損なわれる**可能性があるため、有効にすることは推奨されません。詳細は[トランザクションの再試行](/optimistic-transaction.md#automatic-retry)を参照してください。 > -> TiDB v3.0.8以降、新規に作成されたTiDBクラスタはデフォルトで[悲観的トランザクションモード](/pessimistic-transaction.md)を使用します。現在の読み取り( `for update`読み取り)**は繰り返し不可能な読み取り**です。詳細は[悲観的トランザクションモード](/pessimistic-transaction.md)を参照してください。 +> TiDB v3.0.8以降、新規に作成されたTiDBクラスタはデフォルトで[悲観的トランザクションモード](/pessimistic-transaction.md)を使用します。現在の読み取り( `for update`読み取り)は**繰り返し不可能な読み取り**です。詳細は[悲観的トランザクションモード](/pessimistic-transaction.md)を参照してください。 ## Repeatable Read isolation level {#repeatable-read-isolation-level} From 28ec94f9a3007531e8757bd512a8365b1cafad2e Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 10:42:34 +0900 Subject: [PATCH 3/8] =?UTF-8?q?i18n(ja):=20reword=20=E5=AE=A3=E4=BC=9D=20(?= =?UTF-8?q?advertise)=20for=20tone=20and=20consistency?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 宣伝 literally means "advertise/promote" and reads as if TiDB is exaggerating a marketing claim, which isn't the intended meaning of EN "advertises as X for compatibility with MySQL" (i.e. TiDB reports/ labels its isolation level as REPEATABLE-READ for MySQL clients). Reworded to 表示されます (a neutral "is displayed/shown as") in the 3 sites using this exact sentence (transaction-isolation-levels.md, tidb-cloud/transaction-concepts.md, system-variables.md). Also fixes the one remaining 宣伝 in the corpus, in a different but related sense (announcing a network address, not claiming a label): tikv-configuration-file.md's `advertise-addr` description used 宣伝 instead of the established アドバタイズ katakana term already used consistently across DM/PD/Kafka-related config docs for this exact networking sense of "advertise". --- system-variables.md | 2 +- tidb-cloud/transaction-concepts.md | 2 +- tikv-configuration-file.md | 2 +- transaction-isolation-levels.md | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/system-variables.md b/system-variables.md index 5c1eb02e9172b..62d6b6d2e57da 100644 --- a/system-variables.md +++ b/system-variables.md @@ -6971,7 +6971,7 @@ Query OK, 0 rows affected, 1 warning (0.00 sec) - 型: Enumeration - デフォルト値: `REPEATABLE-READ` - 指定可能な値: `READ-UNCOMMITTED` 、 `READ-COMMITTED` 、 `REPEATABLE-READ` 、 `SERIALIZABLE` -- この変数はトランザクションの分離を設定します。 TiDB は MySQL との互換性のために`REPEATABLE-READ`を宣伝していますが、実際の分離レベルはスナップショット分離です。詳細については、[トランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 +- この変数はトランザクションの分離を設定します。 TiDB は MySQL との互換性のために`REPEATABLE-READ`として表示されますが、実際の分離レベルはスナップショット分離です。詳細については、[トランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 ### tx_isolation diff --git a/tidb-cloud/transaction-concepts.md b/tidb-cloud/transaction-concepts.md index 2209066c33801..383ec81b60e82 100644 --- a/tidb-cloud/transaction-concepts.md +++ b/tidb-cloud/transaction-concepts.md @@ -27,7 +27,7 @@ TiDBでは、悲観的トランザクションモードはMySQLとほぼ同じ トランザクション分離は、データベーストランザクション処理の基盤の一つです。分離は、トランザクションの4つの主要な特性(一般的に[ACID](/tidb-cloud/tidb-cloud-glossary.md#acid)と呼ばれます)の一つです。 -TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として宣伝されています。これは[ANSI Repeatable Read isolation level](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 +TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として表示されます。これは[ANSI Repeatable Read isolation level](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 詳細については[TiDBトランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 diff --git a/tikv-configuration-file.md b/tikv-configuration-file.md index b942953770cda..1f430f17c1d1f 100644 --- a/tikv-configuration-file.md +++ b/tikv-configuration-file.md @@ -115,7 +115,7 @@ TiKV の設定ファイルは、コマンドラインパラメータよりも多 ### `advertise-addr` {#advertise-addr} -- クライアント通信のためのリスニングアドレスを宣伝する +- クライアント通信のためのリスニングアドレスをアドバタイズする - この設定項目が設定されていない場合、 `addr`の値が使用されます。 - デフォルト値: `""` diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index 015f1fc0dab85..d1b182ea03fbd 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -26,7 +26,7 @@ SQL-92標準では、トランザクション分離レベルとして、Read Unc | REPEATABLE READ | 不可能 | 不可能 | 不可能 | 可能 | | SERIALIZABLE | 不可能 | 不可能 | 不可能 | 不可能 | -TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として宣伝されています。これは[ANSI Repeatable Read isolation level](#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 +TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として表示されます。これは[ANSI Repeatable Read isolation level](#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 > **Note:** > From bee41ec4100c7c88b87d690b4e2565b5cf32be8d Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 10:59:01 +0900 Subject: [PATCH 4/8] i18n(ja): unify isolation-level headings with body text convention MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Both section headings ("Repeatable Read isolation level" and "Read Committed isolation level") had been fully mirrored in English, while every body occurrence of the same terms in this file uses the established mixed pattern (English term + 分離レベル, e.g. "Repeatable Read分離レベルでは..."). Unifies the 2 headings to match. --- transaction-isolation-levels.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index d1b182ea03fbd..4921958aebab3 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -34,7 +34,7 @@ TiDBはスナップショット分離(SI)一貫性を実装しており、My > > TiDB v3.0.8以降、新規に作成されたTiDBクラスタはデフォルトで[悲観的トランザクションモード](/pessimistic-transaction.md)を使用します。現在の読み取り( `for update`読み取り)は**繰り返し不可能な読み取り**です。詳細は[悲観的トランザクションモード](/pessimistic-transaction.md)を参照してください。 -## Repeatable Read isolation level {#repeatable-read-isolation-level} +## Repeatable Read分離レベル {#repeatable-read-isolation-level} Repeatable Read分離レベルでは、トランザクション開始前にコミットされたデータのみが参照され、コミットされていないデータや、トランザクション実行中に同時実行トランザクションによってコミットされた変更は参照されません。ただし、トランザクション文は、自身のトランザクション内で実行された以前の更新の影響を参照します。これらの更新は、まだコミットされていない場合でも参照されます。 @@ -61,7 +61,7 @@ TiDBのRepeatable Read分離レベルは、ANSIのRepeatable Read分離レベル TiDBのRepeatable Read分離レベルは、MySQLのそれとは異なります。MySQLのRepeatable Read分離レベルでは、更新時に現在のバージョンが可視かどうかがチェックされないため、トランザクション開始後に行が更新された場合でも更新を続行できます。一方、TiDBの楽観的トランザクションでは、トランザクション開始後に行が更新された場合、ロールバックされて再試行されます。TiDBの楽観的同時実行制御ではトランザクションの再試行が失敗し、最終的にトランザクションが失敗する可能性がありますが、TiDBの悲観的同時実行制御とMySQLでは、更新トランザクションが成功する可能性があります。 -## Read Committed isolation level {#read-committed-isolation-level} +## Read Committed分離レベル {#read-committed-isolation-level} TiDB v4.0.0-beta 以降、TiDB は Read Committed 分離レベルをサポートします。 From 94a093e02563c96a577c0355f7d4f605ca1da7e8 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 10:59:46 +0900 Subject: [PATCH 5/8] =?UTF-8?q?i18n(ja):=20remove=20inconsistent=20spacing?= =?UTF-8?q?=20before=20=E5=88=86=E9=9B=A2=E3=83=AC=E3=83=99=E3=83=AB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 2 sites had a space between the English term and 分離レベル (Read Committed 分離レベル / Repeatable Read 分離レベル), while every other occurrence in the same file joins them directly with no space. Removed for consistency. --- transaction-isolation-levels.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index 4921958aebab3..14328bf4fa106 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -63,13 +63,13 @@ TiDBのRepeatable Read分離レベルは、MySQLのそれとは異なります ## Read Committed分離レベル {#read-committed-isolation-level} -TiDB v4.0.0-beta 以降、TiDB は Read Committed 分離レベルをサポートします。 +TiDB v4.0.0-beta 以降、TiDB は Read Committed分離レベルをサポートします。 歴史的な理由により、現在主流のデータベースのRead Committed分離レベルは基本的に[Oracleが定義する一貫性読み取り分離レベル](https://docs.oracle.com/cd/B19306_01/server.102/b14220/consist.htm)です。この状況に対応するため、TiDBの悲観的トランザクションにおけるRead Committed分離レベルも、本質的には一貫性のある読み取り動作となっています。 > **Note:** > -> Read Committed 分離レベルは[悲観的トランザクションモード](/pessimistic-transaction.md)でのみ有効になります。 [楽観的トランザクションモード](/optimistic-transaction.md)では、トランザクション分離レベルを`Read Committed`に設定しても有効にならず、トランザクションは引き続き Repeatable Read 分離レベルを使用します。 +> Read Committed分離レベルは[悲観的トランザクションモード](/pessimistic-transaction.md)でのみ有効になります。 [楽観的トランザクションモード](/optimistic-transaction.md)では、トランザクション分離レベルを`Read Committed`に設定しても有効にならず、トランザクションは引き続き Repeatable Read分離レベルを使用します。 v6.0.0以降、TiDBは、読み取り/書き込み競合が稀なシナリオにおいて、タイムスタンプ取得を最適化するためにシステム変数[`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600)使用をサポートします。この変数を有効にすると、TiDBは`SELECT`実行時に、前回の有効なタイムスタンプを使用してデータを読み取ろうとします。この変数の初期値は、トランザクションの`start_ts`です。 From 08b3bd606537e6de9eccabd06108608a66167db0 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 11:01:59 +0900 Subject: [PATCH 6/8] i18n(ja): remove another stray text fragment before a link MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Found on independent review: "1番目の" before the [A Critique of ANSI SQL Isolation Levels] link has no counterpart in EN ("According to the standard described in the [...] paper"), the same defect class fixed corpus-wide in #23640/#23641. --- transaction-isolation-levels.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index 14328bf4fa106..62dcb8fce7c42 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -55,7 +55,7 @@ commit; | ### TiDBとANSI Repeatable Readの違い {#difference-between-tidb-and-ansi-repeatable-read} -TiDBのRepeatable Read分離レベルは、ANSIのRepeatable Read分離レベルとは同じ名前ですが、異なります。1番目の[ANSI SQL分離レベルの批評](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-95-51.pdf)に記載されている標準によると、TiDBはスナップショット分離レベルを実装しています。この分離レベルでは、厳密なファントム(A3)は許可されませんが、広範囲のファントム(P3)とライトスキューは許可されます。一方、ANSIのRepeatable Read分離レベルでは、ファントムリードは許可されますが、ライトスキューは許可されません。 +TiDBのRepeatable Read分離レベルは、ANSIのRepeatable Read分離レベルとは同じ名前ですが、異なります。[ANSI SQL分離レベルの批評](https://www.microsoft.com/en-us/research/wp-content/uploads/2016/02/tr-95-51.pdf)に記載されている標準によると、TiDBはスナップショット分離レベルを実装しています。この分離レベルでは、厳密なファントム(A3)は許可されませんが、広範囲のファントム(P3)とライトスキューは許可されます。一方、ANSIのRepeatable Read分離レベルでは、ファントムリードは許可されますが、ライトスキューは許可されません。 ### TiDBとMySQLのRepeatable Readの違い {#difference-between-tidb-and-mysql-repeatable-read} From 29a1246e9a2edd9f03db39f2000fd5c7e153070a Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 11:09:27 +0900 Subject: [PATCH 7/8] i18n(ja): fix 2 more dropped particles MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - システム変数[`tidb_rc_read_check_ts`](...)使用をサポートします → の使用をサポートします (missing の) - システム変数[`tidb_rc_write_check_ts`](...)有効にすることで → を有効にすることで (missing を) --- transaction-isolation-levels.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index 62dcb8fce7c42..dfc2ec91500e4 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -71,7 +71,7 @@ TiDB v4.0.0-beta 以降、TiDB は Read Committed分離レベルをサポート > > Read Committed分離レベルは[悲観的トランザクションモード](/pessimistic-transaction.md)でのみ有効になります。 [楽観的トランザクションモード](/optimistic-transaction.md)では、トランザクション分離レベルを`Read Committed`に設定しても有効にならず、トランザクションは引き続き Repeatable Read分離レベルを使用します。 -v6.0.0以降、TiDBは、読み取り/書き込み競合が稀なシナリオにおいて、タイムスタンプ取得を最適化するためにシステム変数[`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600)使用をサポートします。この変数を有効にすると、TiDBは`SELECT`実行時に、前回の有効なタイムスタンプを使用してデータを読み取ろうとします。この変数の初期値は、トランザクションの`start_ts`です。 +v6.0.0以降、TiDBは、読み取り/書き込み競合が稀なシナリオにおいて、タイムスタンプ取得を最適化するためにシステム変数[`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600)の使用をサポートします。この変数を有効にすると、TiDBは`SELECT`実行時に、前回の有効なタイムスタンプを使用してデータを読み取ろうとします。この変数の初期値は、トランザクションの`start_ts`です。 - TiDB は読み取りプロセス中にデータ更新が発生しなかった場合、結果をクライアントに返し、 `SELECT`ステートメントが正常に実行されます。 - TiDB が読み取りプロセス中にデータ更新を検出した場合: @@ -80,7 +80,7 @@ v6.0.0以降、TiDBは、読み取り/書き込み競合が稀なシナリオに 分離レベル`READ-COMMITTED`が使用され、ステートメントが`SELECT`多く、読み取り/書き込みの競合がまれなシナリオでは、この変数を有効にすると、グローバル タイムスタンプを取得する際のレイテンシーとコストを回避できます。 -v6.3.0以降、TiDBはポイント書き込みの競合が少ないシナリオにおいて、システム変数[`tidb_rc_write_check_ts`](/system-variables.md#tidb_rc_write_check_ts-new-in-v630)有効にすることでタイムスタンプ取得の最適化をサポートします。この変数を有効にすると、ポイント書き込みステートメントの実行中に、TiDBは現在のトランザクションの有効なタイムスタンプを使用してデータの読み取りとロックを試みます。[`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600)が有効になっている場合も、TiDBは同様にデータを読み取ります。 +v6.3.0以降、TiDBはポイント書き込みの競合が少ないシナリオにおいて、システム変数[`tidb_rc_write_check_ts`](/system-variables.md#tidb_rc_write_check_ts-new-in-v630)を有効にすることでタイムスタンプ取得の最適化をサポートします。この変数を有効にすると、ポイント書き込みステートメントの実行中に、TiDBは現在のトランザクションの有効なタイムスタンプを使用してデータの読み取りとロックを試みます。[`tidb_rc_read_check_ts`](/system-variables.md#tidb_rc_read_check_ts-new-in-v600)が有効になっている場合も、TiDBは同様にデータを読み取ります。 現在、適用可能なポイント書き込みステートメントの種類は`UPDATE` 、 `DELETE` 、 `SELECT ...... FOR UPDATE`です。ポイント書き込みステートメントとは、主キーまたは一意キーをフィルター条件として使用し、最終実行演算子に`POINT-GET`含まれる書き込みステートメントを指します。現在、3種類のポイント書き込みステートメントに共通するのは、まずキー値に基づいてポイントクエリを実行することです。キーが存在する場合は、キーをロックします。キーが存在しない場合は、空のセットを返します。 From 201f9127970717317342b8ad4dfd337fe86b9587 Mon Sep 17 00:00:00 2001 From: Yasuo Honda Date: Fri, 28 Aug 2026 11:11:23 +0900 Subject: [PATCH 8/8] i18n(ja): disambiguate the subject of REPEATABLE-READ display wording MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The earlier 宣伝→表示 rewording (passive "is displayed as") reads as if TiDB itself, not its reported isolation-level value, is being displayed as REPEATABLE-READ. EN's own sentence has this same implicit-object structure ("TiDB advertises REPEATABLE-READ") but the active verb "advertises" carries the intended meaning more naturally than the JA passive construction did. Made the actual subject of the display explicit: この変数の値 (this variable's value) in system-variables.md, and この一貫性レベル (this consistency level, referring back to Snapshot Isolation consistency) in the two files sharing the "TiDB implements SI consistency, which it advertises as REPEATABLE-READ" sentence. --- system-variables.md | 2 +- tidb-cloud/transaction-concepts.md | 2 +- transaction-isolation-levels.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/system-variables.md b/system-variables.md index 62d6b6d2e57da..b635aa73a0cc4 100644 --- a/system-variables.md +++ b/system-variables.md @@ -6971,7 +6971,7 @@ Query OK, 0 rows affected, 1 warning (0.00 sec) - 型: Enumeration - デフォルト値: `REPEATABLE-READ` - 指定可能な値: `READ-UNCOMMITTED` 、 `READ-COMMITTED` 、 `REPEATABLE-READ` 、 `SERIALIZABLE` -- この変数はトランザクションの分離を設定します。 TiDB は MySQL との互換性のために`REPEATABLE-READ`として表示されますが、実際の分離レベルはスナップショット分離です。詳細については、[トランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 +- この変数はトランザクションの分離レベルを設定します。MySQLとの互換性のため、この変数の値は`REPEATABLE-READ`と表示されますが、実際の分離レベルはスナップショット分離です。詳細については、[トランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 ### tx_isolation diff --git a/tidb-cloud/transaction-concepts.md b/tidb-cloud/transaction-concepts.md index 383ec81b60e82..bba4f5a993a2c 100644 --- a/tidb-cloud/transaction-concepts.md +++ b/tidb-cloud/transaction-concepts.md @@ -27,7 +27,7 @@ TiDBでは、悲観的トランザクションモードはMySQLとほぼ同じ トランザクション分離は、データベーストランザクション処理の基盤の一つです。分離は、トランザクションの4つの主要な特性(一般的に[ACID](/tidb-cloud/tidb-cloud-glossary.md#acid)と呼ばれます)の一つです。 -TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として表示されます。これは[ANSI Repeatable Read isolation level](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 +TiDBはスナップショット分離(SI)一貫性を実装しており、この一貫性レベルはMySQLとの互換性のために`REPEATABLE-READ`として表示されます。これは[ANSI Repeatable Read isolation level](/transaction-isolation-levels.md#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](/transaction-isolation-levels.md#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 詳細については[TiDBトランザクション分離レベル](/transaction-isolation-levels.md)を参照してください。 diff --git a/transaction-isolation-levels.md b/transaction-isolation-levels.md index dfc2ec91500e4..1499ddd66f99d 100644 --- a/transaction-isolation-levels.md +++ b/transaction-isolation-levels.md @@ -26,7 +26,7 @@ SQL-92標準では、トランザクション分離レベルとして、Read Unc | REPEATABLE READ | 不可能 | 不可能 | 不可能 | 可能 | | SERIALIZABLE | 不可能 | 不可能 | 不可能 | 不可能 | -TiDBはスナップショット分離(SI)一貫性を実装しており、MySQLとの互換性のために`REPEATABLE-READ`として表示されます。これは[ANSI Repeatable Read isolation level](#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 +TiDBはスナップショット分離(SI)一貫性を実装しており、この一貫性レベルはMySQLとの互換性のために`REPEATABLE-READ`として表示されます。これは[ANSI Repeatable Read isolation level](#difference-between-tidb-and-ansi-repeatable-read)や[MySQL Repeatable Read level](#difference-between-tidb-and-mysql-repeatable-read)とは異なります。 > **Note:** >