TiDB 6.5.1 リリースノート
発売日:2023年3月10日
TiDB バージョン: 6.5.1
クイック アクセス: クイックスタート | 本番展開 | インストール パッケージ
互換性の変更
2023 年 2 月 20 日以降、v6.5.1 を含む新しいバージョンの TiDB および TiDB ダッシュボードではテレメトリ機能がデフォルトで無効になり、使用状況に関する情報は収集されず、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
に変更されました。この構成項目を変更して、レイテンシーを短縮し、ステイル読み取りデータの適時性を向上させることができます。詳細はステイル読み取りのレイテンシーを減らすを参照してください。
改良点
TiDB
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 @ ブラックティア23なしのクライアント接続を受け入れます。
TiKV
TiFlash
ツール
バックアップと復元 (BR)
TiCDC
- プルベースのシンクを有効にして、システムのスループットを最適化します#8232 @ ハイラスチン
- GCS 互換または Azure 互換のオブジェクトstorageへの REDO ログの保存をサポート#7987 @ チャールズ・チャン96
- MQ シンクと MySQL シンクを非同期モードで実装して、シンクのスループットを向上させる#5928 @ アミヤンフェイ @ チャールズ・チャン96
バグの修正
TiDB
- ポイント取得クエリ#39928 @ ジグアンで
pessimistic-auto-commit
構成アイテムが有効にならない問題を修正 INSERT
つまたはREPLACE
のステートメントが長いセッション接続でpanicになる可能性がある問題を修正します#40351 @ ウィノロスauto analyze
で正常なシャットダウンに時間がかかる問題を修正#40038 @ しゅいふぁんグリーンアイズ- DDL インジェスト#40970 @ 接線中にデータ競合が発生する可能性がある問題を修正
- インデックスを#40879 @ 接線追加するとデータ競合が発生する可能性がある問題を修正
- テーブル#38436 @ 接線に多数のリージョンがある場合、無効なリージョンキャッシュが原因でインデックスの追加操作が非効率になる問題を修正します。
- TiDB が初期化中にデッドロックする可能性がある問題を修正します#40408 @ 定義済み2014
- キー範囲#40158 @ ティアンカイマオを構築するときに TiDB が
NULL
値を適切に処理しないため、予期しないデータが読み取られる問題を修正します - メモリの再利用#40979 @ ルクァンチャオにより、システム変数の値が誤って変更される場合がある問題を修正します。
- テーブルの主キーに
ENUM
列#40456 @ ルクァンチャオが含まれている場合に TTL タスクが失敗する問題を修正します - 一意のインデックス#40592 @ 接線を追加すると TiDB がパニックになる問題を修正
- 同じテーブルを同時に切り捨てる場合、一部の切り捨て操作が MDL によってブロックされない問題を修正します#40484 @ wjhuang2016
- 動的トリミング モード#40368 @ イサールでパーティション テーブルに対してグローバル バインディングが作成された後、TiDB を再起動できない問題を修正します。
- 「カーソル読み取り」メソッドを使用してデータを読み取ると、GC #39447 @ ジグアンが原因でエラーが返される可能性がある問題を修正します。
SHOW PROCESSLIST
#41156 @ ヤンケアオの結果でEXECUTE
情報が null になる問題を修正globalMemoryControl
がクエリを強制終了している場合、KILL
操作が終了しない可能性があるという問題を修正します#41057 @ wshwsh12indexMerge
エラー#41047 #40877 @ グオシャオゲ @ 風の語り手に遭遇した後、TiDB がpanicになる可能性がある問題を修正します。ANALYZE
ステートメントがKILL
#41825 @ 徐懐玉で終了する可能性がある問題を修正します。indexMerge
#41545 #41605 @ グオシャオゲでゴルーチンリークが発生する可能性がある問題を修正- 符号なしの
TINYINT
/SMALLINT
/INT
値を0
#41736 @ リトルフォールより小さいDECIMAL
/FLOAT
/DOUBLE
値と比較すると、間違った結果になる可能性がある問題を修正 tidb_enable_reuse_chunk
を有効にするとメモリリークが発生する可能性がある問題を修正#40987 @ グオシャオゲ- タイム ゾーンでのデータ競合がデータ インデックスの不整合を引き起こす可能性がある問題を修正します#40710 @ wjhuang2016
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を処理するときに、Plan Cache が FullScan プランをキャッシュする可能性がある問題を修正しますint_col in (decimal...)
条件#40224 @ qw4990を処理するときに、Plan Cache が FullScan プランをキャッシュする可能性がある問題を修正します。INSERT
ステートメント#40079 #39717 @ qw4990に対してignore_plan_cache
ヒントが機能しない可能性がある問題を修正します。- Auto Analyze が TiDB の#40038 @ しゅいふぁんグリーンアイズの終了を妨げる可能性がある問題を修正
- 分割されたテーブル#40309 @ ウィノロスの符号なし主キーに対して、誤ったアクセス間隔が構築される可能性がある問題を修正します。
- Plan Cache が Shuffle 演算子をキャッシュし、誤った結果#38335 @ qw4990を返す可能性がある問題を修正します。
- パーティション化されたテーブルでグローバル バインディングを作成すると、TiDB の起動に失敗する可能性があるという問題を修正します#40368 @ イサール
- 低速ログ#41458 @ 時間と運命でクエリ プラン演算子が欠落している可能性がある問題を修正します
- 仮想列を持つ TopN オペレーターが誤って TiKV またはTiFlash #41355 @ ドゥジール9にプッシュ ダウンすると、誤った結果が返されることがある問題を修正します。
- インデックス#40698 #40730 #41459 #40464 #40217 @ 接線を追加する際のデータの不整合の問題を修正
- インデックス#41515 @ 接線を追加するときに
Pessimistic lock not found
エラーが発生する問題を修正 - 一意のインデックス#41630 @ 接線を追加するときに誤って報告された重複キー エラーの問題を修正します。
- TiDB #40741 @ ソロツグで
paging
を使用するとパフォーマンスが低下する問題を修正
- ポイント取得クエリ#39928 @ ジグアンで
TiKV
- 解決済みの TS が原因でネットワーク トラフィックが高くなる問題を修正します#14092 @ 大静脈
- 悲観的DML #14038 @ みょんけみんたが失敗した後の DML の実行中に、TiDB と TiKV 間のネットワーク障害によって引き起こされたデータの不整合の問題を修正します。
const Enum
型を他の型#14156 @ wshwsh12にキャストするときに発生するエラーを修正- 警官タスクのページングが不正確である問題を修正#14254 @ あなた06
batch_cop
モード#14109 @ あなた06でscan_detail
フィールドが不正確になる問題を修正- TiKV がRaftデータの破損を検出し、 #14338 @ tonyxuqqiの再起動に失敗する可能性があるRaft Engineの潜在的なエラーを修正します。
PD
TiFlash
ツール
バックアップと復元 (BR)
- PD と tidb-server 間の接続障害により、PITR バックアップの進行状況が#41082 @ ユジュンセン進まない問題を修正
- PD と TiKV #14159 @ ユジュンセン間の接続障害により、TiKV が PITR タスクをリッスンできない問題を修正
- PITR が PD クラスター#14165 @ ユジュンセンの構成変更をサポートしていない問題を修正します。
- PITR 機能が CA-bundles #38775 @ 3ポインターをサポートしていない問題を修正
- PITR バックアップ タスクを削除すると、残りのバックアップ データが新しいタスク#40403 @ ジョッカウでデータの不整合を引き起こす問題を修正します。
- BR が
backupmeta
ファイル#40878 @ MoCuishle28を解析するときにpanicを引き起こす問題を修正します。 - リージョンサイズ#36053 @ ユジュンセンの取得に失敗して復元が中断される問題を修正
- TiDBクラスタ#40759 @ ジョッカウでPITRバックアップタスクがない場合に
resolve lock
の頻度が高すぎる問題を修正 - ログ バックアップが実行されているクラスターにデータを復元すると、ログ バックアップ ファイルが復元できなくなる問題を修正します#40797 @ レヴルス
- フル バックアップの失敗後、チェックポイントからバックアップを再開しようとすると発生するpanicの問題を修正します#40704 @ レヴルス
- PITR エラーが#40576 @ レヴルスで上書きされる問題を修正
- 事前所有者と gc 所有者が異なる場合、PITR バックアップ タスクでチェックポイントが進められない問題を修正します#41806 @ ジョッカウ
TiCDC
- TiKV または TiCDC ノード#8174 @ ヒックをスケールインまたはスケールアウトする場合など、特別なシナリオで changefeed が停止する可能性がある問題を修正します
- REDO ログ#6335 @ チャールズ・チャン96のstorageパスで事前チェックが行われない問題を修正
- S3storage障害#8089 @ チャールズ・チャン96に対して REDO ログが許容できる期間が不十分であるという問題を修正します。
transaction_atomicity
とprotocol
構成ファイル#7935 @ チャールズ・チャン96経由で更新できない問題を修正- TiCDC が過度に多数のテーブル#8004 @ 大静脈をレプリケートすると、チェックポイントが進められない問題を修正します
- レプリケーション ラグが過度に大きい場合に REDO ログを適用すると OOM が発生する可能性がある問題を修正します#8085 @ チャールズ・チャン96
- REDO ログを有効にして meta #8074 @ チャールズ・チャン96を書き込むとパフォーマンスが低下する問題を修正
- TiCDC が大規模なトランザクション#7982 @ ハイラスチンを分割せずにデータを複製すると、コンテキストのデッドラインを超過するバグを修正
- PDが異常な状態でチェンジフィードを一時停止すると、ステータスが正しくない#8330 @ スドジになる問題を修正
- TiDB または MySQL シンクにデータをレプリケートするときに、主キー#8420 @ アスドンメンなしで null 以外の一意のインデックスを持つ列に
CHARACTER SET
が指定されたときに発生するデータの不整合を修正します。 - テーブル スケジューリングとブラックホール シンクでのpanicの問題を修正します#8024 #8142 @ ヒック
TiDB データ移行 (DM)
TiDB Lightning
- 以前に失敗したインポート#39477 @ dsdashunによって残されたダーティ データをTiDB Lightningプリチェックが見つけられないという問題を修正します。
- 分割領域フェーズ#40934 @ ランス6716でTiDB Lightning がパニックになる問題を修正
- 競合解決ロジック (
duplicate-resolution
) が不整合なチェックサム#40657 @ ゴズスキーを引き起こす可能性があるという問題を修正します。 - 並列インポート#40923 @ リチュンジュ中に、最後のTiDB Lightningインスタンス以外のすべてのインスタンスがローカルの重複レコードに遭遇した場合、 TiDB Lightning が競合解決を誤ってスキップする可能性があるという問題を修正します。
- ローカル バックエンド モードでデータをインポートするときに、インポートされたターゲット テーブルの複合主キーに
auto_random
列があり、その列の値がソース データで指定されていない場合、ターゲット列が自動的にデータを生成しないという問題を修正します#41454 @ D3ハンター