TiDB 4.0 GA リリースノート

発売日:2020年5月28日

TiDB バージョン: 4.0.0

互換性の変更

  • TiDB

    • トラブルシューティングを容易にするために、大規模なトランザクションのエラー メッセージを最適化する#17219
  • TiCDC

    • Changefeed構成ファイルの構造を最適化して使いやすさを改善する#588
    • 設定項目をignore-txn-start-ts追加し、トランザクションフィルタリング時の条件をcommit_tsからstart_tsに変更#589

重要なバグ修正

  • TiKV

    • Backup & Restore (BR) #7937を使用してバックアップするときに発生するDefaultNotFoundのエラーを修正します。
    • 順不同によるシステムパニックの修正ReadIndexパッケージ#7930
    • TiKV の再起動後にスナップショット ファイルを誤って削除することによって引き起こされるシステム パニックを修正します#7927
  • ティフラッシュ

    • Raft Admin Commandの処理ロジックが正しくないためにシステムがパニックになったときに発生する可能性のあるデータ損失の問題を修正します。

新機能

  • TiDB

    • retry-commit フェーズ#16849goroutinesの数を制御するcommitter-concurrency構成項目を追加します。
    • show table partition regions構文#17294をサポート
    • tmp-storage-quotaの構成項目を追加して、TiDBサーバーが使用する一時ディスク領域を制限します#15700
    • テーブルの作成および変更時に、パーティション テーブルが一意のプレフィックス インデックスを使用するかどうかのチェックをサポートします#17213
    • insert/replace into tbl_name partition ( partition_name_list ) ステートメント#17313をサポート
    • Distinct関数#17240使用時のcollationsの値のチェックをサポート
    • ハッシュパーティションプルーニング中のis nullのフィルター条件をサポート#17310
    • 分割されたテーブルでadmin check indexadmin cleanup index 、およびadmin recover indexをサポート#17392 #17405 #17317
    • in#17320のレンジ パーティション プルーニングをサポート
  • ティフラッシュ

    • 学習者がデータを読み取るときに、 Lock CFの値のTSOからmin commit tsまでの修飾された 1 に対応するデータのフィルタリングをサポートします。
    • TIMESTAMPの型の値が1970-01-01 00:00:00未満の場合に誤った計算結果を回避するために、システムが明示的にエラーを報告する機能を追加します
    • ログ検索時の正規表現でのフラグの使用をサポート
  • TiKV

    • ascii_binおよびlatin1_binエンコーディング#7919の照合順序ルールをサポート
  • PD

    • 組み込み TiDB ダッシュボード#2457のリバース プロキシ リソース プレフィックスの指定をサポート
    • PD クライアントリージョン#2443のインターフェイスでpending peerdown peerの情報を返すサポート
    • Direction of hotspot move leaderDirection of hotspot move peerHot cache read entry number #2448などの監視項目を追加
  • ツール

    • バックアップと復元 (BR)
      • SequenceView #242のバックアップと復元をサポート
    • TiCDC
      • Changefeed #561の作成時にSink URIの有効性をチェックするサポート
      • システムの起動時に PD と TiKV のバージョンがシステム要件を満たしているかどうかの確認をサポート#570
      • 同じスケジューリング タスク生成サイクルで複数のテーブルのスケジューリングをサポート#572
      • HTTP API #591にノード ロールに関する情報を追加する

バグの修正

  • TiDB

    • TiDB を無効にしてバッチ コマンドを TiFlash #17307に送信することにより、メッセージの送受信時に予期しないタイムアウトが発生する問題を修正します。
    • パーティションのプルーニング中に符号付き整数と符号なし整数を誤って区別する問題を修正し、パフォーマンスを向上させます#17230
    • 互換性がないため v3.1.1 から v4.0 へのアップグレードが失敗する問題を修正しますmysql.user#17300
    • updateステートメント#17305のパーティションの選択が正しくない問題を修正します。
    • TiKV #17380から不明なエラー メッセージを受信したときのシステム パニックを修正
    • keyパーティション分割されたテーブルを作成するときに、不適切な処理ロジックによって引き起こされるシステム パニックを修正します#17242
    • オプティマイザーの処理ロジックが正しくないため、間違ったIndex Merge Joinプランが選択される問題を修正#17365
    • Grafana #16561SELECTステートメントの不正確なdurationモニタリング メトリックの問題を修正します。
    • システム エラーが発生したときに GC ワーカーがブロックされる問題を修正します#16915
    • ブール列のUNIQUE制約により、比較#17306で誤った結果が生じる問題を修正します
    • tidb_opt_agg_push_downが有効で、集計関数が分割されたテーブルをプッシュ ダウンするときに、不適切な処理ロジックによって引き起こされるシステム パニックを修正します#17328
    • 場合によっては失敗した TiKV ノードにアクセスする問題を修正します#17342
    • tidb.tomlisolation-readの設定項目が有効にならない問題を修正#17322
    • hintを使用してストリーム アグリゲーション#17347を適用すると、処理ロジックが正しくないために出力結果の順序が正しくない問題を修正します。
    • insertが異なるSQL_MODE #17314の下で DIV を処理する動作を修正します
  • ティフラッシュ

    • 検索ログ機能での正規表現のマッチング動作が他のコンポーネントと矛盾する問題を修正
    • デフォルトでRaft Compact Log Commandの遅延処理の最適化を無効にすることで、ノードが大量のデータを書き込む際に過剰な再起動時間が発生する問題を修正します。
    • 一部のシナリオで TiDB がDROP DATABASEステートメントを正しく処理しないために、システムが起動に失敗する問題を修正します。
    • Server_infoのCPU情報の収集方法が他のコンポーネントと異なる問題を修正
    • batch coprocessorが有効な場合にQueryステートメントを実行すると、エラーToo Many Pingsが報告される問題を修正します。
    • TiFlash が関連情報をレポートしないため、Dashboard が正しいdeploy path情報を表示できない問題を修正します。
  • TiKV

    • BR #7937を使用してバックアップするときに発生するDefaultNotFoundのエラーを修正します。
    • 順不同によるシステムパニックの修正ReadIndexパケット#7930
    • 読み取り要求のコールバック関数が呼び出されないため、予期しないエラーが返される問題を修正#7921
    • TiKV の再起動時にスナップショット ファイルを誤って削除することによって発生するシステム パニックを修正します#7927
    • ストレージ暗号化#7898の処理ロジックが正しくないため、 master keyをローテーションできない問題を修正
    • ストレージの暗号化を有効にすると、受信したスナップショットのlock cfファイルが暗号化されない問題を修正#7922
  • PD

    • pd-ctl #2446を使用してevict-leader-schedulerまたはgrant-leader-schedulerを削除するときの 404 エラーを修正します。
    • TiFlash レプリカが存在する場合、 presplit機能が正しく動作しない場合がある問題を修正#2447
  • ツール

    • バックアップと復元 (BR)
      • BR がクラウド ストレージ#298からデータを復元するときに、ネットワークの問題によりデータの復元が失敗する問題を修正します。
    • TiCDC
      • データ競合によるシステムパニックの修正#565 #566
      • 不適切な処理ロジックによるリソース リークまたはシステムのブロックを修正する#574 #586
      • CLI が PD #579に接続できないためにコマンド ラインがスタックする問題を修正します。
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.