TiDB 4.0.14 リリースノート

発売日:2021年7月27日

TiDB バージョン: 4.0.14

互換性の変更

  • TiDB

    • v4.0 では、デフォルト値のtidb_multi_statement_modeWARNからOFFに変更されました。代わりに、クライアント ライブラリのマルチステートメント機能を使用することをお勧めします。詳細はtidb_multi_statement_modeに関するドキュメントを参照してください。 #25749
    • Grafana ダッシュボードを v6.1.16 から v7.5.7 にアップグレードして、2 つのセキュリティ脆弱性を解決します。詳細はGrafana ブログ投稿を参照してください。
    • tidb_stmt_summary_max_stmt_count変数のデフォルト値を200から3000 #25872に変更します。
  • TiKV

    • デフォルト値のmerge-check-tick-interval10から2に変更して、リージョンのマージ プロセスを高速化します#9676

機能強化

  • TiKV

    • メトリクスpendingを追加して、保留中の PD ハートビートの数を監視します。これは、遅い PD スレッドの問題を特定するのに役立ちます#10008
    • 仮想ホスト アドレッシング モードを使用して、BR が S3 互換ストレージをサポートするようにするサポート#10242
  • TiDB ダッシュボード

    • OIDC SSO をサポートします。 OIDC 互換の SSO サービス (Okta や Auth0 など) を設定することで、ユーザーは SQL パスワードを入力せずに TiDB ダッシュボードにログインできます。 #960
    • デバッグ API UI を追加します。これは、高度なデバッグのためにいくつかの一般的な TiDB および PD 内部 API を呼び出すためのコマンド ラインの代替方法です#927

改良点

  • TiDB

    • UPDATEの読み取り#26223に対してpoint getまたはbatch point getを使用して、インデックス キーのLOCKレコードをPUTレコードに変更します。
    • MySQL システム変数init_connectとそれに関連する機能#26031のサポート
    • 安定した結果モードをサポートして、クエリ結果をより安定させます#26003
    • 組み込み関数json_unquote()を TiKV #25721にプッシュ ダウンするサポート
    • SQL Plan Management (SPM) が文字セットの影響を受けないようにする#23295
  • TiKV

    • 最初にステータスサーバーをシャットダウンして、クライアントがシャットダウン ステータスを正しく確認できることを確認します#10504
    • 古いピアに常に応答して、これらのピアがより迅速にクリアされるようにします#10400
    • TiCDC シンクのメモリ消費を制限する#10147
    • リージョンが大きすぎる場合は、偶数分割を使用して分割プロセスを高速化します#10275
  • PD

    • 同時に実行される複数のスケジューラ間の競合を減らす#3858 #3854
  • TiDB ダッシュボード

    • TiDB ダッシュボードを v2021.07.17.1 に更新する#3882
    • それ以上の変更を避けるために、現在のセッションを読み取り専用セッションとして共有することをサポートします#960
  • ツール

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

      • 小さなバックアップ ファイルをマージして復元を高速化する#655
    • Dumpling

      • アップストリームが TiDB v3.x クラスターである場合は、常に_tidb_rowidを使用してテーブルを分割します。これにより、TiDB のメモリ使用量を削減できます#306
    • TiCDC

      • PD エンドポイントで証明書が見つからない場合に返されるエラー メッセージを改善します#1973
      • ソーターの I/O エラーをより使いやすくする#1976
      • KV クライアントのリージョン増分スキャンに同時実行制限を追加して、TiKV #1926のプレッシャーを軽減します
      • テーブル メモリ消費量のメトリックを追加します#1884
      • TiCDCサーバー構成にcapture-session-ttlを追加します#2169

バグの修正

  • TiDB

    • false #24865に評価されるWHERE句でサブクエリを結合すると、 SELECTの結果が MySQL と互換性がない問題を修正します
    • 引数がENUMまたはSET#24944の場合に発生するifnull関数の計算エラーを修正
    • 場合によっては間違った集計プルーニングを修正する#25202
    • 列がSETタイプ#25669の場合に発生する可能性のあるマージ結合操作の誤った結果を修正します。
    • TiDB がデカルト結合#25591に対して間違った結果を返す問題を修正
    • 結合操作でSELECT ... FOR UPDATEが機能し、結合で分割されたテーブルが使用されている場合に発生するpanicの問題を修正します#20028
    • キャッシュされたpreparedプランがpoint get #24741に誤って使用される問題を修正
    • LOAD DATAステートメントが非 utf8 データを異常にインポートできる問題を修正#25979
    • HTTP API #24650経由で統計にアクセスするときに発生する潜在的なメモリ リークの問題を修正します。
    • ALTER USERステートメント#25225の実行時に発生するセキュリティの問題を修正します。
    • TIKV_REGION_PEERSテーブルがDOWNステータス#24879を正しく処理できないバグを修正
    • DateTime #22231の解析時に無効な文字列が切り捨てられない問題を修正
    • 列タイプがYEAR #22159の場合、 select into outfileステートメントが結果を返さない場合がある問題を修正します。
    • UNIONサブクエリ#26532NULLがあるとクエリ結果がおかしくなることがある問題を修正
    • 実行中の射影演算子が場合によってはpanicを引き起こす可能性がある問題を修正します#26534
  • TiKV

    • 特定のプラットフォームで継続時間の計算がpanicになる問題を修正#関連する問題
    • DOUBLEDOUBLE #25200にキャストする間違った関数を修正
    • 非同期ロガー使用時にpanicログが失われることがある問題を修正#8998
    • 暗号化が有効になっている場合にスナップショットを 2 回作成すると発生するpanicの問題を修正します#9786 #10407
    • コプロセッサ#10176json_unquote()関数の間違った引数タイプを修正します。
    • シャットダウン中の疑わしい警告と、Raftstore からの非決定論的な応答の問題を修正します#10353 #10307
    • バックアップ スレッド リークの問題を修正します#10287
    • 分割プロセスが遅すぎてリージョンのマージが進行中の場合、リージョンの分割がpanicになり、メタデータが破損する可能性がある問題を修正します#8456 #8783
    • 一部の状況で、リージョンのハートビートによって TiKV が大きなリージョンを分割できないという問題を修正します#10111
    • TiKV と TiDB #25638の間の CM Sketch のフォーマットの不一致によって引き起こされる誤った統計を修正します。
    • apply wait durationメトリクス#9893の誤った統計を修正する
    • Titan #10232delete_files_in_rangeを使用した後の「Missing Blob」エラーを修正
  • PD

    • 削除操作を実行した後にスケジューラーが再表示される可能性があるバグを修正します#2572
    • 一時構成がロードされる前にスケジューラーが開始されたときに発生する可能性があるデータ競合の問題を修正します#3771
    • リージョン分散操作中に発生する可能性のある PDpanicの問題を修正します#3761
    • 一部のオペレーターの優先度が正しく設定されていない問題を修正#3703
    • 存在しないストアからevict-leaderスケジューラーを削除するときに発生する可能性のある PDpanicの問題を修正します#3660
    • 店舗数が多い場合、PDリーダーの再選が遅い問題を修正#3697
  • TiDB ダッシュボード

    • プロファイリングUI がすべての TiDB インスタンスをプロファイリングできないという問題を修正します#944
    • ステートメントUI に「計画数」が表示されない問題を修正します#939
    • クラスターのアップグレード後にスロー クエリUI に「不明なフィールド」エラーが表示されることがある問題を修正します#902
  • ティフラッシュ

    • DAG リクエストのコンパイル時に発生する潜在的なpanicの問題を修正
    • 読み取り負荷が高い場合に発生するpanicの問題を修正
    • 列ストレージの分割失敗により TiFlash が再起動し続ける問題を修正
    • TiFlash が差分データを削除できない潜在的なバグを修正
    • 共有デルタ インデックスを同時に複製するときに発生する誤った結果を修正します。
    • データが不完全な場合、TiFlash が再起動に失敗するバグを修正
    • 古い dm ファイルが自動的に削除されない問題を修正
    • 特定の引数でSUBSTRING関数を実行すると発生するpanicの問題を修正します。
    • INTEGER型をTIME型にキャストしたときの結果が正しくない問題を修正
  • ツール

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

      • mysqlスキーマからのデータ復元が失敗する可能性がある問題を修正します#1142
    • TiDB Lightning

      • TiDB Lightningが Parquet ファイルのDECIMAL型データの解析に失敗する問題を修正#1276
      • TiDB Lightningがインポートされた大きな CSV ファイルを分割するときに報告される EOF エラーを修正します#1133
      • TiDB LightningがFLOATまたはDOUBLEタイプ#1185auto_increment列を持つテーブルをインポートすると、非常に大きなベース値が生成されるバグを修正します
      • 4 GB を超える KV データを生成するとTiDB Lightningpanicが発生する問題を修正#1128
    • Dumpling

      • Dumplingを使用してデータを S3 ストレージにエクスポートする場合、バケット全体に対するs3:ListBucketのアクセス許可は不要になりました。アクセス許可は、データ ソース プレフィックスに対してのみ必要です。 #898
    • TiCDC

      • 新しいテーブル パーティションを追加した後の余分なパーティション ディスパッチの問題を修正します#2205
      • TiCDC が/proc/meminfo #2023の読み取りに失敗したときに発生するpanicの問題を修正します。
      • TiCDC の実行時のメモリ消費を削減する#2011 #1957
      • MySQL シンクがエラーに遭遇して一時停止した後、一部の MySQL 接続がリークする可能性があるというバグを修正します#1945
      • 開始 TS が現在の TS から GC TTL #1839を引いた値より小さい場合、TiCDC チェンジフィードを作成できない問題を修正
      • 過度の CPU オーバーヘッドを避けるために、ソート ヒープのメモリmallocを減らします#1853
      • テーブル移動時にレプリケーションタスクが停止することがある不具合を修正#1827
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.