TiDB 6.5.1 リリースノート
発売日: 2023年3月10日
TiDB バージョン: 6.5.1
クイックアクセス: クイックスタート | 実稼働環境への導入
互換性の変更
2023 年 2 月 20 日以降、v6.5.1 を含む TiDB および TiDB Dashboard の新しいバージョンではテレメトリ機能がデフォルトで無効になっており、使用状況情報は収集されず、PingCAP と共有されません。これらのバージョンにアップグレードする前に、クラスターがデフォルトのテレメトリ構成を使用している場合、アップグレード後にテレメトリ機能が無効になります。特定のバージョンについてはTiDB リリース タイムライン参照してください。
tidb_enable_telemetry
システム変数のデフォルト値がON
からOFF
に変更されます。- TiDB
enable-telemetry
構成項目のデフォルト値がtrue
からfalse
に変更されます。 - PD
enable-telemetry
構成項目のデフォルト値がtrue
からfalse
に変更されます。
v1.11.3 以降、新しく導入されたTiUPではテレメトリ機能がデフォルトで無効になっており、使用状況情報は収集されません。v1.11.3 より前のバージョンのTiUPから v1.11.3 以降のバージョンにアップグレードした場合、テレメトリ機能はアップグレード前と同じ状態を維持します。
潜在的な正確性の問題のため、パーティション化されたテーブルでの列タイプの変更はサポートされなくなりました#40620 @ ミョンス
TiKV
advance-ts-interval
構成項目のデフォルト値が1s
から20s
に変更されました。この構成項目を変更して、レイテンシーを減らし、ステイル読み取りデータの適時性を向上させることができます。詳細については、 ステイル読み取りのレイテンシーを削減参照してください。ネットワーク トラフィックを削減するために、TiKV
cdc.min-ts-interval
構成項目の既定値が"200ms"
から"1s"
に変更されました。
改善点
ティビ
v6.5.1 以降、 TiDB Operator v1.4.3 以降でデプロイされた TiDB クラスターは IPv6 アドレスをサポートします。つまり、TiDB はより大きなアドレス空間をサポートし、セキュリティとネットワーク パフォーマンスを向上させることができます。
- IPv6 アドレス指定の完全サポート: TiDB は、クライアント接続、ノード間の内部通信、外部システムとの通信など、すべてのネットワーク接続で IPv6 アドレスの使用をサポートします。
- デュアル スタック サポート: IPv6 に完全に切り替える準備ができていない場合、TiDB はデュアル スタック ネットワークもサポートします。つまり、同じ TiDB クラスターで IPv4 アドレスと IPv6 アドレスの両方を使用し、構成によって IPv6 を優先するネットワーク展開モードを選択できます。
IPv6 導入の詳細については、 Kubernetes 上の TiDB ドキュメント参照してください。
TiDB クラスタの初期化時に実行される SQL スクリプトの指定をサポート#35624 @ モルゴ
TiDB v6.5.1 では、新しい構成項目
initialize-sql-file
が追加されました。TiDB クラスターを初めて起動するときに、コマンドライン パラメータ--initialize-sql-file
を構成することで、実行する SQL スクリプトを指定できます。この機能は、システム変数の値の変更、ユーザーの作成、権限の付与などの操作を実行する必要がある場合に使用できます。詳細については、 ドキュメント参照してください。メモリリークやパフォーマンスの低下を防ぐために、期限切れの領域キャッシュを定期的にクリアします#40461 @ スティクナーフ
PROXYプロトコルフォールバックモードを有効にするかどうかを制御するための新しい構成項目
--proxy-protocol-fallbackable
を追加します。このパラメータがtrue
に設定されている場合、TiDBはPROXYクライアント接続とPROXYプロトコルヘッダー#41409 @ えりのないクライアント接続を受け入れます。
ティクヴ
TiFlash
ツール
バックアップと復元 (BR)
ティCDC
- プルベースのシンクを有効にしてシステムスループットを最適化#8232 @ ハイラスティン
- GCS 互換または Azure 互換のオブジェクトstorageへの REDO ログの保存をサポート#7987 @ チャールズ・チュン96
- シンクのスループットを向上させるために、非同期モードでMQシンクとMySQLシンクを実装する#5928 @ アミヤンフェイ @ チャールズ・チュン96
バグ修正
ティビ
pessimistic-auto-commit
構成項目がポイント取得クエリ#39928 @ ジグアンで有効にならない問題を修正しました- 長いセッション接続#40351 @ ウィノロスで
INSERT
またはREPLACE
ステートメントがpanicになる可能性がある問題を修正しました auto analyze
により正常なシャットダウンに長い時間がかかる問題を修正#40038 @ 翻訳者- DDL取り込み#40970 @ タンジェンタ中にデータ競合が発生する可能性がある問題を修正
- インデックスを#40879 @ タンジェンタで追加するとデータ競合が発生する可能性がある問題を修正しました
- テーブル#38436 @ タンジェンタに多くのリージョンがある場合、無効なリージョンキャッシュが原因でインデックス追加操作が非効率になる問題を修正しました。
- 初期化中に TiDB がデッドロックする可能性がある問題を修正#40408 @ 定義2014
- TiDB がキー範囲#40158 @ 天菜まおを構築するときに
NULL
値を不適切に処理するため、予期しないデータが読み取られる問題を修正しました。 - メモリの再利用により、システム変数の値が誤って変更される場合がある問題を修正#40979 @ lcwangchao
- テーブルの主キーに
ENUM
列#40456 @ lcwangchaoが含まれている場合にTTLタスクが失敗する問題を修正 - ユニークインデックス#40592 @ タンジェンタを追加するときに TiDB がパニックになる問題を修正
- 同じテーブルを同時に切り捨てるときに、一部の切り捨て操作が MDL によってブロックできない問題を修正#40484 @ 翻訳:
- 動的トリミングモード#40368 @ イサールでパーティションテーブルにグローバルバインディングが作成された後に TiDB が再起動できない問題を修正しました。
- 「カーソル読み取り」メソッドを使用してデータを読み取ると、GC #39447 @ ジグアン原因でエラーが返される可能性がある問題を修正しました。
SHOW PROCESSLIST
#41156 @ ヤンケオの結果でEXECUTE
情報が null になる問題を修正しましたglobalMemoryControl
クエリを強制終了しているときに、KILL
操作が#41057 @ うわーで終了しない可能性がある問題を修正しました。indexMerge
エラーが発生した後に TiDB がpanicになる可能性がある問題を修正#41047 #40877 @ グオシャオゲ @ 風の話し手ANALYZE
文がKILL
#41825 @ 徐懐玉で終了する可能性がある問題を修正しましたindexMerge
#41545 #41605 @ グオシャオゲで goroutine リークが発生する可能性がある問題を修正- 符号なし
TINYINT
/SMALLINT
/INT
値を0
#41736 @ リトルフォールより小さいDECIMAL
/FLOAT
/DOUBLE
の値と比較するときに誤った結果になる可能性がある問題を修正しました。 tidb_enable_reuse_chunk
有効にするとメモリリーク#40987 @ グオシャオゲが発生する可能性がある問題を修正- タイムゾーンでのデータ競合によりデータインデックスの不整合が発生する可能性がある問題を修正#40710 @ 翻訳:
batch cop
実行中のスキャン詳細情報が不正確になる可能性がある問題を修正#41582 @ あなた06cop
の上限同時実行数が#41134 @ あなた06に制限されない問題を修正cursor read
のstatement context
が誤って#39998 @ ジグアンキャッシュされる問題を修正- メモリリークとパフォーマンスの低下を防ぐために、古くなったリージョンキャッシュを定期的にクリーンアップします#40355 @ スティクナーフ
year <cmp> const
含むクエリでプラン キャッシュを使用すると間違った結果#41626 @ qw4990返される可能性がある問題を修正しました。- 大きな範囲と大量のデータ変更を伴うクエリを実行すると、推定誤差が大きくなる問題を修正#39593 @ 時間と運命
- Plan Cache #40093 #38205 @ qw4990使用時に、一部の条件が Join 演算子を通じてプッシュダウンできない問題を修正しました。
- IndexMerge プランが SET 型列#41273 #41293 @ 時間と運命に誤った範囲を生成する可能性がある問題を修正しました
int_col <cmp> decimal
条件#40679 #41032 @ qw4990処理するときにプラン キャッシュが FullScan プランをキャッシュする可能性がある問題を修正しましたint_col in (decimal...)
条件#40224 @ qw4990を処理するときにプラン キャッシュが FullScan プランをキャッシュする可能性がある問題を修正しましたignore_plan_cache
ヒントがINSERT
ステートメント#40079 #39717 @ qw4990で機能しない可能性がある問題を修正しました- 自動分析により TiDB が#40038 @ 翻訳者で終了できなくなる問題を修正
- パーティションテーブル#40309 @ ウィノロスの符号なし主キーに不正なアクセス間隔が構築される可能性がある問題を修正しました。
- プラン キャッシュがシャッフル演算子をキャッシュし、誤った結果を返す可能性がある問題を修正#38335 @ qw4990
- パーティション化されたテーブルにグローバルバインディングを作成すると、TiDB が#40368 @ イサールで起動に失敗する可能性がある問題を修正しました。
- スローログ#41458 @ 時間と運命でクエリプラン演算子が欠落する可能性がある問題を修正しました
- 仮想列を持つ TopN 演算子が誤って TiKV またはTiFlash #41355 @ ドゥージール9にプッシュダウンすると、誤った結果が返される可能性がある問題を修正しました。
- インデックス#40698 #40730 #41459 #40464 #40217 @ タンジェンタを追加するときにデータの不整合が発生する問題を修正
- インデックス#41515 @ タンジェンタを追加するときに
Pessimistic lock not found
エラーが発生する問題を修正しました - 一意のインデックス#41630 @ タンジェンタを追加するときに誤って報告される重複キー エラーの問題を修正しました
- TiDB #40741 @ ソロッツで
paging
使用するとパフォーマンスが低下する問題を修正
ティクヴ
- 解決されたTSによりネットワークトラフィックが増加する問題を修正#14092 @ 金星の上
- 悲観的DML #14038 @ ミョンケミンタが失敗した後の DML 実行中に TiDB と TiKV 間のネットワーク障害によって発生するデータの不整合の問題を修正しました。
const Enum
型を他の型#14156 @ うわーにキャストするときに発生するエラーを修正- 警官タスクのページングが不正確になる問題を修正#14254 @ あなた06
batch_cop
モード#14109 @ あなた06でscan_detail
フィールドが不正確になる問題を修正- TiKV がRaftデータの破損を検出し、 #14338 @ トニーの再起動に失敗する可能性があるRaft Engineの潜在的なエラーを修正しました。
PD
TiFlash
ツール
バックアップと復元 (BR)
- PD と tidb-server 間の接続障害により PITR バックアップの進行が#41082 @ ユジュンセンに進まない問題を修正しました。
- PDとTiKV #14159 @ ユジュンセン間の接続障害によりTiKVがPITRタスクをリッスンできない問題を修正
- PITRがPDクラスタ#14165 @ ユジュンセンの構成変更をサポートしない問題を修正
- PITR機能がCAバンドル#38775 @ 3ポインターをサポートしない問題を修正
- PITR バックアップ タスクを削除すると、残りのバックアップ データによって新しいタスク#40403 @ ジョッカウでデータの不整合が発生する問題を修正しました。
- BRが
backupmeta
ファイル#40878 @ モクイシュル28を解析するときにpanicを引き起こす問題を修正 - リージョンサイズ#36053 @ ユジュンセンの取得に失敗したために復元が中断される問題を修正しました
- TiDB クラスター#40759 @ ジョッカウに PITR バックアップ タスクがない場合に
resolve lock
の頻度が高すぎる問題を修正 - ログバックアップが実行されているクラスターにデータを復元すると、ログバックアップファイルを復元できなくなる問題を修正#40797 @ リーヴルス
- 完全バックアップの失敗後にチェックポイントからバックアップを再開しようとしたときに発生するpanic問題を修正#40704 @ リーヴルス
- PITRエラーが#40576 @ リーヴルスで上書きされる問題を修正
- PITR バックアップ タスクで、先行所有者と gc 所有者が異なる場合にチェックポイントが進まない問題を修正#41806 @ ジョッカウ
ティCDC
- TiKV または TiCDC ノード#8174 @ ヒックスケールインまたはスケールアウトなどの特殊なシナリオで、changefeed がスタックする可能性がある問題を修正しました。
- REDOログ#6335 @ チャールズ・チュン96のstorageパスで事前チェックが実行されない問題を修正
- S3storage障害#8089 @ チャールズ・チュン96に対して REDO ログが許容できる期間が不十分である問題を修正
transaction-atomicity
とprotocol
構成ファイル#7935 @ チャールズ・チュン96経由で更新できない問題を修正- TiCDC が過度に多くのテーブル#8004 @ 金星の上を複製するとチェックポイントが進まない問題を修正しました。
- レプリケーション遅延が過度に大きい場合に、REDO ログを適用すると OOM が発生する可能性がある問題を修正#8085 @ チャールズ・チュン96
- メタ#8074 @ チャールズ・チュン96への書き込みに REDO ログが有効になっている場合にパフォーマンスが低下する問題を修正しました。
- TiCDC が大きなトランザクションを分割せずにデータを複製するとコンテキスト期限が超過するバグを修正#7982 @ ハイラスティン
- PD が異常なときにチェンジフィードを一時停止すると、誤ったステータス#8330 @ スドジになる問題を修正しました。
- TiDB または MySQL シンクにデータを複製するときに、主キー#8420 @ アズドンメンのない非 NULL ユニーク インデックスを持つ列に
CHARACTER SET
が指定されている場合に発生するデータの不整合を修正しました。 - テーブル スケジューリングとブラックホール シンクのpanic問題を修正#8024 #8142 @ ヒック
TiDB データ移行 (DM)
TiDB Lightning
- TiDB Lightning の事前チェックで、以前に失敗したインポートによって残されたダーティ データを見つけられない問題を修正#39477 @ ダシュン
- TiDB Lightningが分割領域フェーズ#40934 @ ランス6716でパニックになる問題を修正
- 競合解決ロジック(
duplicate-resolution
)によりチェックサム#40657 @ 眠いモグラの不一致が発生する可能性がある問題を修正 - 並列インポート中に最後のTiDB Lightningインスタンスを除くすべてのインスタンスでローカル重複レコードが検出された場合、 TiDB Lightning が競合解決を誤ってスキップする可能性がある問題を修正#40923 @ リチュンジュ
- ローカル バックエンド モードでデータをインポートするときに、インポートされたターゲット テーブルの複合プライマリ キーに
auto_random
列があり、ソース データ#41454 @ D3ハンターでその列の値が指定されていない場合、ターゲット列が自動的にデータを生成しない問題を修正しました。