TiDB 4.0.2 リリースノート

発売日: 2020年7月1日

TiDB バージョン: 4.0.2

互換性の変更

  • ティビ

    • スロークエリログとステートメントサマリーテーブル#18130の機密情報を削除します。
    • シーケンスキャッシュ#18103負の値を禁止する
    • CLUSTER_INFOテーブル#17953から、Tombstone TiKV およびTiFlashストアを削除します。
    • 診断ルールをcurrent-loadからnode-checkに変更する#17660
  • PD

    • store-limit持続し、 store-balance-rate #2557を削除

新しい変更

  • デフォルトでは、TiDB と TiDB ダッシュボードは、製品の改善方法を理解するために、使用状況の詳細を PingCAP と共有します#18180 。共有される内容と共有を無効にする方法の詳細については、 テレメトリーを参照してください。

新機能

  • ティビ

    • INSERTステートメントのMEMORY_QUOTA()ヒントをサポートする#18101
    • TLS証明書#17698SANフィールドに基づく認証をサポート
    • REGEXP()関数#17581の照合順序をサポート
    • sql_select_limitセッションとグローバル変数#17604をサポート
    • 新しく追加されたパーティションのリージョン分割をデフォルトでサポート#17665
    • IF() / BITXOR() / BITNEG() / JSON_LENGTH()関数をTiFlashコプロセッサー#17651 #17592にプッシュするサポート
    • COUNT(DISTINCT) #18120のおおよその結果を計算するための新しい集計関数APPROX_COUNT_DISTINCT()をサポートします。
    • TiFlashでの照合順序をサポートし、照合関連の関数をTiFlash #17705にプッシュします。
    • INFORMATION_SCHEMA.INSPECTION_RESULT表にSTATUS_ADDRESS列を追加して、サーバ#17695のステータス アドレスを示します。
    • MYSQL.BIND_INFO表にSOURCE列を追加して、バインディングの作成方法を示します#17587
    • PERFORMANCE_SCHEMA.EVENTS_STATEMENTS_SUMMARY_BY_DIGESTテーブルにPLAN_IN_CACHE列目とPLAN_CACHE_HITS列目を追加して、SQL ステートメント#17493のプラン キャッシュの使用状況を示します。
    • enable-collect-execution-info構成項目とtidb_enable_collect_execution_infoセッション変数を追加して、各演算子の実行情報を収集し、その情報をスロークエリログ#18073 #18072に記録するかどうかを制御します。
    • スロークエリログ#17694のクエリを鈍感化するかどうかを制御するグローバル変数tidb_slow_log_maskingを追加します。
    • storage.block-cache.capacity TiKV構成項目#17671INFORMATION_SCHEMA.INSPECTION_RESULTテーブルに診断ルールを追加します。
    • データのバックアップと復元を行うSQL文BACKUPRESTOREを追加する#15274
  • ティクヴ

    • TiKV Control #8103encryption-metaコマンドをサポート
    • RocksDB::WriteImpl #7991の perf コンテキスト メトリックを追加します。
  • PD

    • リーダーピア#2551を削除しようとしたときにオペレータが直ちに失敗するようにサポートします。
    • TiFlashストア#2559に適切なデフォルトのストア制限を設定する
  • TiFlash

    • コプロセッサーで新しい集計関数APPROX_COUNT_DISTINCTサポート
    • rough set filter機能をデフォルトで有効にする
    • TiFlashをARMアーキテクチャ上で実行できるようにする
    • コプロセッサーのJSON_LENGTH関数のプッシュダウンをサポート
  • ツール

    • ティCDC

      • サブタスクを新しいcapture s #665に移行できるようにサポート
      • TiCDC GC TTL #652を削除するコマンドcli追加
      • MQシンク#649でキャナルプロトコルをサポート

改善点

  • ティビ

    • CM-Sketch がメモリを大量に消費した場合に、 Golang のメモリ割り当てによって発生するクエリのレイテンシーを削減する#17545
    • TiKVサーバーが障害回復プロセスにあるときにクラスターのQPS回復時間を短縮する#17681
    • パーティションテーブル#17655上の TiKV/ TiFlashコプロセッサーへの集計関数のプッシュをサポート
    • インデックスの等価条件の行数推定の精度を向上#17611
  • ティクヴ

    • PDクライアントのpanicログ#8093改善
    • process_cpu_seconds_totalprocess_start_time_seconds監視指標#8029を再度追加します
  • TiFlash

    • 旧バージョン#786からのアップグレード時の下位互換性の向上
    • デルタインデックス#787のメモリ消費量を削減
    • デルタインデックス#794のより効率的な更新アルゴリズムを使用する
  • ツール

    • バックアップと復元 (BR)

      • 復元プロセスをパイプライン化してパフォーマンスを向上させる#266

バグの修正

  • ティビ

    • tidb_isolation_read_enginesが変更された後にプランキャッシュから取得される実行プランが正しくない問題を修正#17570
    • EXPLAIN FOR CONNECTION#18124を実行するときに時々発生するランタイムエラーを修正
    • いくつかのケースでlast_plan_from_cacheセッション変数の誤った結果を修正#18111
    • プランキャッシュ#18002 #17673からUNIX_TIMESTAMP()関数を実行するときに発生するランタイムエラーを修正
    • HashJoin Executor の子がNULL列目#17937を返す場合のランタイム エラーを修正しました。
    • 同じデータベース#17659DROP DATABASEステートメントと他の DDL ステートメントを同時に実行することによって発生するランタイム エラーを修正します。
    • ユーザー変数#17890COERCIBILITY()関数の誤った結果を修正
    • IndexMergeJoin Executorが時々スタックする問題を修正#18091
    • メモリクォータ不足とクエリキャンセルがトリガーされたときにIndexMergeJoinエグゼキュータがハングする問題を修正#17654
    • InsertおよびReplaceエグゼキュータ#18062の過剰なカウントメモリ使用量を修正
    • DROP DATABASEDROP TABLE同じデータベース#17901で同時に実行するとTiFlashstorageへのデータレプリケーションが停止する問題を修正
    • TiDBとオブジェクトstorageサービス#17844間のBACKUP RESTORE障害を修正
    • アクセスが拒否されたときの権限チェック失敗の誤ったエラーメッセージを修正#17724
    • DELETEステートメント#17843から生成されたクエリフィードバックUPDATE破棄します
    • AUTO_RANDOMプロパティ#17828のないテーブルではAUTO_RANDOM_BASE変更を禁止します
    • テーブルがALTER TABLE ... RENAME #18243でデータベース間で移動されたときにAUTO_RANDOM列目が間違った結果に割り当てられる問題を修正
    • tidb #17719なしでtidb_isolation_read_enginesの値を設定すると、一部のシステム テーブルにアクセスできない問題を修正しました。
    • 大きな整数と浮動小数点値に対する JSON 比較の不正確な結果を修正#17717
    • COUNT()関数#17704の結果の小数点プロパティが正しくない問題を修正
    • 入力の型がバイナリ文字列#17620の場合のHEX()関数の誤った結果を修正
    • フィルタ条件#17697なしでINFORMATION_SCHEMA.INSPECTION_SUMMARYテーブルをクエリすると空の結果が返される問題を修正
    • ALTER USERステートメントでユーザー情報を更新するために使用されたハッシュ化されたパスワードが予期しないものである問題を修正#17646
    • ENUMSET値の照合順序をサポート#17701
    • テーブル#17619の作成時にリージョンを事前分割するためのタイムアウト メカニズムが機能しない問題を修正しました。
    • DDL ジョブが再試行されたときにスキーマが予期せず更新され、DDL ジョブのアトミック性が損なわれる可能性がある問題を修正しました#17608
    • 引数に列#17562が含まれている場合のFIELD()関数の誤った結果を修正しました。
    • max_execution_timeヒントが時々機能しない問題を修正#17536
    • EXPLAIN ANALYZE #17350の結果に同時実行情報が重複して出力される問題を修正
    • STR_TO_DATE関数#17498%hの互換性のない動作を修正
    • tidb_replica_readfollowerに設定され、リーダーとフォロワー/学習者#17443の間にネットワーク パーティションがある場合にフォロワー/学習者が再試行を続ける問題を修正しました。
    • TiDB が PD フォロワーに ping を過剰に送信する場合がある問題を修正#17947
    • TiDB v4.0 #17983で古いバージョンの範囲パーティションテーブルをロードできない問題を修正
    • 複数のリージョン要求が同時に失敗した場合のSQL文のタイムアウトの問題を修正するために、リージョンごとに異なるBackoffer割り当てます#17585
    • DateTime区切り文字#17501を解析する際の MySQL 非互換の動作を修正
    • TiKVリクエストがTiFlashサーバーに時々送信される問題を修正#18105
    • あるトランザクションで書き込まれ削除された主キーのロックが別のトランザクションによって解決されたために発生したデータの不整合の問題を修正しました#18250
  • ティクヴ

    • ステータスサーバー#8101のメモリ安全性の問題を修正
    • JSON 数値比較で精度が失われる問題を修正#8087
    • 間違ったクエリのスローログ#8050修正
    • 複数のマージプロセス中にストアが分離されている場合にピアを削除できない問題を修正#8048
    • tikv-ctl recover-mvcc無効な悲観的ロックが削除されない問題を修正#8047
    • Titan ヒストグラムのメトリックの一部が欠落している問題を修正#7997
    • TiKVがTiCDC #7887duplicated errorを返す問題を修正
  • PD

    • pd-server.dashboard-address構成項目#2517の正確性を確認する
    • store-limit-modeからauto #2544に設定するとPDがpanic問題を修正
    • ホットスポットを識別できないことがある問題を修正#2463
    • 配置ルールにより、ストアがtombstoneに変更できない場合がある問題を修正しました#2546
    • 以前のバージョンからアップグレードする際に発生するPDのpanic問題を修正#2564
  • TiFlash

    • region not foundエラーが発生したときにプロキシがpanicになる可能性がある問題を修正しました
    • drop tableでスローされた I/O 例外によりTiFlashスキーマの同期が失敗する可能性がある問題を修正しました。

このページは役に立ちましたか?