TiDB 5.1.1 リリースノート

リリース日:2021年7月30日

TiDB バージョン: 5.1.1

互換性の変更

  • TiDB

    • TiDB クラスターを v4.0 から v5.1 にアップグレードする場合、デフォルト値のtidb_multi_statement_modeOFFです。代わりに、クライアント ライブラリのマルチステートメント機能を使用することをお勧めします。詳細はtidb_multi_statement_modeに関するドキュメントを参照してください。 #25751
    • tidb_stmt_summary_max_stmt_count変数のデフォルト値を200から3000 #25874に変更します。
    • table_storage_stats#26352にアクセスするにはSUPER特権が必要です
    • information_schema.user_privilegesテーブルにアクセスして他のユーザーの権限を表示するには、 mysql.userに対するSELECT権限が必要です#26311
    • information_schema.cluster_hardware#26297にアクセスするにはCONFIG特権が必要です
    • information_schema.cluster_info#26297にアクセスするにはPROCESS特権が必要です
    • information_schema.cluster_load#26297にアクセスするにはPROCESS特権が必要です
    • information_schema.cluster_systeminfo#26297にアクセスするにはPROCESS特権が必要です
    • information_schema.cluster_log#26297にアクセスするにはPROCESS特権が必要です
    • information_schema.cluster_config#26150にアクセスするにはCONFIG特権が必要です

機能強化

  • TiDB ダッシュボード

    • OIDC SSO をサポートします。 OIDC 互換の SSO サービス (Okta や Auth0 など) を設定することで、ユーザーは SQL パスワードを入力せずに TiDB ダッシュボードにログインできます。 #3883
  • ティフラッシュ

    • DAG リクエストでHAVING()の機能をサポート

改良点

  • TiDB

    • ステイル読み取り機能の一般提供 (GA) を発表
    • データ挿入を高速化するためにparamMarkerの割り当てを避ける#26076
    • 安定した結果モードをサポートして、クエリ結果をより安定させます#25995
    • 組み込み関数json_unquote()を TiKV #26265にプッシュ ダウンするサポート
    • MPP クエリの再試行をサポート#26480
    • UPDATEの読み取り#26225に対してpoint getまたはbatch point getを使用して、インデックス キーのLOCKレコードをPUTレコードに変更します。
    • 古いクエリからのビューの作成を禁止する#26200
    • COUNT(DISTINCT) MPPモードの集計機能を徹底的に押し下げる#26194
    • MPP クエリを起動する前に、TiFlash の可用性を確認してください#26192
    • 読み取りタイムスタンプを将来の時刻に設定することを許可しない#25763
    • 集計関数をEXPLAINステートメントでプッシュダウンできない場合にログ警告を出力する#25737
    • statements_summary_evictedテーブルを追加して、クラスターの削除されたカウント情報を記録します#25587
    • フォーマット指定子の組み込み関数str_to_dateの MySQL 互換性を向上させる%b/%M/%r/%T #25768
  • TiKV

    • 事前書き込み要求を可能な限り冪等にして、未確定エラーの可能性を減らします#10586
    • 期限切れのコマンドを多数処理する際のスタック オーバーフローのリスクを回避する#10502
    • ステイル読み取りリクエストのstart_tsから update max_ts #10451を使用しないことで、過剰な commit リクエストの再試行を回避します。
    • 読み取り待機レイテンシーを短縮するために、読み取り準備完了と書き込み準備完了を別々に処理する#10592
    • I/O レート制限が有効になっている場合のデータ インポート速度への影響を軽減します#10390
    • Raft gRPC 接続間の負荷バランスを改善する#10495
  • ツール

    • TiCDC

      • 削除file sorter #2327
      • PD エンドポイントで証明書が見つからない場合に返されるエラー メッセージを改善します#1973
    • TiDB Lightning

      • スキーマを復元するための再試行メカニズムを追加する#1294
    • Dumpling

      • アップストリームが TiDB v3.x クラスターである場合は、常に_tidb_rowidを使用してテーブルを分割します。これにより、TiDB のメモリ使用量を削減できます#295
      • Dumpling のパフォーマンスと安定性を向上させるために、データベースのメタデータにアクセスする頻度を減らします#315

バグの修正

  • TiDB

    • 列タイプをtidb_enable_amend_pessimistic_txn=on #26203に変更したときに発生する可能性があるデータ損失の問題を修正します。
    • last_day関数の動作が SQL モード#26001で互換性がない問題を修正
    • LIMITがウィンドウ関数の上にあるときに発生する可能性があるpanicの問題を修正します#25344
    • 悲観的なトランザクションをコミットすると書き込み競合が発生する可能性がある問題を修正します#25964
    • 相関サブクエリのインデックス結合の結果が間違っている問題を修正#25799
    • 正常にコミットされた楽観的トランザクションがコミット エラーを報告する可能性があるバグを修正します#10468
    • SET型の列#25669でマージ結合を使用すると、誤った結果が返される問題を修正します。
    • 悲観的なトランザクションのインデックス キーが繰り返しコミットされる可能性があるバグを修正します#26359
    • オプティマイザがパーティションを検索するときの整数オーバーフローのリスクを修正します#26227
    • タイムスタンプ#26292DATEをキャストすると、無効な値が書き込まれる可能性がある問題を修正します。
    • Coprocessor Cache メトリックが Grafana #26338で表示されない問題を修正します。
    • テレメトリによって発生する迷惑なログの問題を修正する#25760 #25785
    • プレフィックス インデックス#26029のクエリ範囲のバグを修正
    • 同じパーティションを同時に切り捨てると DDL の実行がハングする問題を修正します#26229
    • 重複の問題を修正ENUMアイテム#25955
    • CTE イテレータが正しく閉じられないバグを修正#26112
    • LOAD DATAステートメントが utf8 以外のデータを異常にインポートする可能性がある問題を修正します#25979
    • 符号なし整数列でウィンドウ関数を使用するときに発生する可能性があるpanicの問題を修正します#25956
    • 非同期コミット ロックを解決するときに TiDB がpanicになる可能性がある問題を修正します#25778
    • ステイル読み取りがPREPAREステートメントと完全に互換性がないという問題を修正します#25800
    • ODBC スタイルの定数 (たとえば、 {d '2020-01-01'} ) を式#25531として使用できないという問題を修正します。
    • TiDB単体で実行した際に発生するエラーを修正#25555
  • TiKV

    • 特定のプラットフォームで継続時間の計算がpanicになる問題を修正#10569
    • Load Base Split がbatch_get_command #10542のエンコードされていないキーを誤って使用する問題を修正します。
    • resolved-ts.advance-ts-interval構成をオンラインで変更してもすぐに有効にならない問題を修正します#10426
    • レプリカが#10225つを超えると、まれにフォロワーのメタデータが破損する問題を修正します。
    • 暗号化が有効になっている場合にスナップショットを 2 回作成すると発生するpanicの問題を修正します#9786 #10407
    • 間違ったtikv_raftstore_hibernated_peer_stateメトリクスを修正する#10330
    • コプロセッサ#10176json_unquote()関数の間違った引数タイプを修正します。
    • 悲観的なトランザクションのインデックス キーが繰り返しコミットされる可能性があるバグを修正します#10468
    • リーダーが転送された直後にReadIndexリクエストが古い結果を返す問題を修正#9351
  • PD

    • 複数のスケジューラが同時に実行されているために競合が発生した場合に、期待されるスケジューリングが生成されない問題を修正します#3807 #3778
    • スケジューラーを削除しても再度スケジューラーが表示されることがある問題を修正#2572
  • ティフラッシュ

    • テーブル スキャン タスクの実行時に発生する潜在的なpanicの問題を修正します。
    • TiFlash が DAQ リクエストの処理時にduplicated region程度のエラーを発生させるバグを修正
    • 読み取り負荷が高い場合に発生するpanicの問題を修正
    • DateFormat関数の実行時に発生する潜在的なpanicの問題を修正します。
    • MPP タスクの実行時に発生する潜在的なメモリ リークの問題を修正します。
    • 集計関数COUNTまたはCOUNT DISTINCTを実行したときに予期しない結果が生じる問題を修正
    • 複数のディスクに展開されたときに TiFlash がデータを復元できないという潜在的なバグを修正します
    • TiDB ダッシュボードで TiFlash のディスク情報が正しく表示されない問題を修正
    • 分解時に発生する潜在的なpanicの問題を修正しますSharedQueryBlockInputStream
    • 分解時に発生する潜在的なpanicの問題を修正しますMPPTask
    • スナップショットを介してデータを同期した後にデータの不整合が発生する可能性がある問題を修正
  • ツール

    • TiCDC

      • 新しい照合順序機能のサポートを修正します#2301
      • 実行時に共有マップへの非同期アクセスが原因でpanic#2300が発生する可能性がある問題を修正します。
      • DDL ステートメントの実行中に所有者がクラッシュしたときに発生する潜在的な DDL 損失の問題を修正します#2290
      • TiDB のロックを時期尚早に解決しようとする問題を修正します#2188
      • テーブルの移行直後に TiCDC ノードが強制終了された場合にデータが失われる可能性があるバグを修正します#2033
      • changefeed update on --sort-dir--start-ts #1921の処理ロジックを修正
    • バックアップと復元 (BR)

      • 復元するデータのサイズが正しく計算されない問題を修正します#1270
      • cdclog #870から復元するときに発生する DDL イベントの欠落の問題を修正します。
    • TiDB Lightning

      • TiDB が Parquet ファイルのDECIMAL型データの解析に失敗する問題を修正#1275
      • キー間隔を計算するときの整数オーバーフローの問題を修正します#1291 #1290
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.