TiDB 7.1.2 リリースノート

発売日: 2023年10月25日

TiDB バージョン: 7.1.2

クイックアクセス: クイックスタート | 実稼働環境への導入

互換性の変更

行動の変化

  • 複数の変更を含むトランザクションの場合、更新イベントで主キーまたは null 以外の一意のインデックス値が変更されると、TiCDC はイベントを削除イベントと挿入イベントに分割し、すべてのイベントが挿入イベントに先行する削除イベントのシーケンスに従うようにします。詳細については、 ドキュメンテーション参照してください。

改善点

  • ティビ

  • ティクヴ

    • 圧縮メカニズムを最適化します。リージョンが分割されるときに、分割するキーがない場合、圧縮がトリガーされ、過剰な MVCC バージョン#15282 @ スペードA-タンが排除されます。
    • ルータオブジェクトのLRUCacheを排除してメモリ使用量を減らし、OOM #15430 @ コナー1996を防止します。
    • Max gap of safe-tsMin safe ts regionメトリックを追加し、 tikv-ctl get-region-read-progressコマンドを導入して、resolved-tsと安全な ts の状態をより適切に観察および診断します#15082 @ エキシウム
    • TiKV で RocksDB の設定を公開し、ユーザーが TTL や定期的な圧縮などの機能を無効にできるようにします#14873 @ リクササシネーター
    • 接続再試行のプロセスで PD クライアントのバックオフ メカニズムを追加します。これにより、エラー再試行中に再試行間隔が徐々に長くなり、PD の負荷が軽減されます#15428 @ ノルーシュ
    • 他のスレッドに影響を与えないように、Titan マニフェスト ファイルを書き込むときにミューテックスを保持しないようにします#15351 @ コナー1996
    • OOM #15458 @ 金星の上を防ぐためにリゾルバのメモリ使用量を最適化します
  • PD

    • PD 呼び出し元のバックオフ メカニズムを最適化して、呼び出しが失敗したときの RPC 要求の頻度を減らします#6556 @ ノルーシュ @ rleungx @ ヒューシャープ
    • 発信者が切断されたときにCPUとメモリを時間内に解放するためのキャンセルメカニズムをGetRegionsインターフェイスに導入する#6835 @ 翻訳者
  • TiFlash

    • Grafana #8050 @ ホンユンヤンのインデックスデータのメモリ使用量の監視メトリックを追加します
  • ツール

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

      • HTTPクライアント#46011 @ リーヴルスMaxIdleConnsMaxIdleConnsPerHostパラメータを設定することにより、ログバックアップとPITR復元タスクの接続再利用のサポートを強化します。
      • ログバックアップのCPUオーバーヘッドを削減resolve lock #40759 @ 3ポインター
      • 新しい復元パラメータWaitTiflashReadyを追加します。このパラメータを有効にすると、 TiFlashレプリカが正常に複製された後に復元操作が完了します#43828 #46302 @ 3ポインター
    • ティCDC

    • TiDB データ移行 (DM)

      • 互換性のない DDL ステートメント#9112 @ GMHDBJDに対して厳密な楽観的モードをサポートする
    • TiDB Lightning

      • インポートタスクのパフォーマンスを向上させるために、デフォルト値のchecksum-via-sqlfalseに変更します#45368 #45094 @ GMHDBJD
      • データインポートフェーズ#46253 @ ランス6716中のno leaderエラーに対するTiDB Lightningの再試行ロジックを最適化します

バグの修正

  • ティビ

    • GROUP_CONCAT ORDER BY#41986 @ アイリンキッドを解析できない問題を修正
    • システムテーブルINFORMATION_SCHEMA.TIKV_REGION_STATUSをクエリすると、場合によっては誤った結果が返される問題を修正しました#45531 @ 定義2014
    • メタデータの読み取りに 1 つの DDL リース#45176 @ ジムララよりも長い時間がかかる場合に TiDB のアップグレードが停止する問題を修正しました。
    • CTE で DML ステートメントを実行するとpanicが発生する可能性がある問題を修正#46083 @ ウィノロス
    • パーティション交換#46492 @ ミョンス中にパーティション定義に準拠していないデータを検出できない問題を修正
    • MERGE_JOINの結果が間違っている問題を修正#46580 @ qw4990
    • 符号なし型をDuration型定数#45410 @ うわーと比較したときに発生する誤った結果を修正
    • AUTO_ID_CACHE=1#46444 @ 天菜まおに設定されている場合にDuplicate entry発生する可能性がある問題を修正しました
    • TTLが#45510 @ lcwangchaoで実行されているときのメモリリークの問題を修正
    • 接続を切断すると go コルーチン リークが発生する可能性がある問題を修正#46034 @ ピンギュ
    • インデックス結合のエラーによりクエリが停止する可能性がある問題を修正#45716 @ うわー
    • ハッシュパーティションテーブル#46779 @ ジフハウスに対してBatchPointGet演算子が誤った結果を返す問題を修正しました。
    • EXCHANGE PARTITION失敗またはキャンセルされた場合に、パーティション化されたテーブルの制限が元のテーブルに残る問題を修正#45920 #45791 @ ミョンス
    • 2つのサブクエリ#46160 @ qw4990を結合するときにTIDB_INLJヒントが有効にならない問題を修正
    • DATETIMEまたはTIMESTAMP列を数値定数#38361 @ いいえと比較するときに動作が MySQL と一致しない問題を修正しました。
    • 深くネストされた式に対してハッシュコードが繰り返し計算され、メモリ使用量が増加し、OOM #42788 @ アイリンキッドが発生する問題を修正しました。
    • アクセス パス プルーニング ロジックがREAD_FROM_STORAGE(TIFLASH[...])ヒントを無視し、 Can't find a proper physical planエラー#40146 @ アイリンキッドが発生する問題を修正しました。
    • CAST に精度損失がない場合にcast(col)=range条件で FullScan が発生する問題を修正#45199 @ アイリンキッド
    • plan replayer dump explainエラー#46197 @ 時間と運命を報告する問題を修正
    • tmp-storage-quota設定が有効にならない問題を修正#45161 #26806 @ うわー
    • TiDBパーサーが状態のままになり、解析エラーが発生する問題を修正#45898 @ qw4990
    • MPP 実行プランで集計がユニオンを介してプッシュダウンされると、結果が正しくなくなる問題を修正しました#45850 @ アイリンキッド
    • AUTO_ID_CACHE=1#46454 @ 天菜まおに設定されている場合に、panic後に TiDB がゆっくりと回復する問題を修正しました。
    • ソート演算子によりスピル処理中に TiDB がクラッシュする可能性がある問題を修正#47538 @ 風の話し手
    • BRを使用してAUTO_ID_CACHE=1 #46093 @ 天菜まおの非クラスター化インデックス テーブルを復元するときに主キーが重複する問題を修正しました。
    • 静的プルーニングモードでパーティションテーブルをクエリし、実行プランにIndexLookUp #45757 @ 定義2014が含まれている場合にクエリがエラーを報告する可能性がある問題を修正しました。
    • パーティション テーブルと配置ポリシー#45791 @ ミョンステーブル間でパーティションを交換した後に、パーティションテーブルへのデータの挿入が失敗する可能性がある問題を修正しました。
    • タイムゾーン情報が正しくない時間フィールドをエンコードする問題を修正#46033 @ タンジェンタ
    • tmpディレクトリが存在しない場合にインデックスを高速に追加する DDL ステートメントが停止する問題を修正#45456 @ タンジェンタ
    • 複数の TiDB インスタンスを同時にアップグレードするとアップグレード プロセスがブロックされる可能性がある問題を修正#46228 @ ジムララ
    • 領域#46135 @ ジムララを分割する際に誤ったパラメータが使用されることで発生する、リージョンが不均一に分散される問題を修正しました。
    • TiDB の再起動後に DDL 操作が停止する可能性がある問題を修正#46751 @ 翻訳:
    • 非整数クラスター化インデックス#47350 @ タンジェンタでのテーブル分割操作を禁止する
    • 不正な MDL 処理により DDL 操作が永久にブロックされる可能性がある問題を修正#46920 @ 翻訳:
    • テーブル#47064 @ ジフハウスの名前変更によって発生するinformation_schema.columnsの重複行の問題を修正
    • batch-client in client-go #47691 @ クレイジーcs520のpanic問題を修正
    • パーティション化されたテーブルの統計収集が、メモリ使用量がメモリ制限を超えた場合に時間内に終了されない問題を修正#45706 @ ホーキングレイ
    • クエリにUNHEX条件#45378 @ qw4990が含まれている場合にクエリ結果が不正確になる問題を修正しました
    • TiDBがGROUP_CONCAT #41957 @ アイリンキッドのクエリに対してCan't find column返す問題を修正
  • ティクヴ

    • RawKV API V2 #15142 @ ピンギュttl-check-poll-interval設定項目が有効にならない問題を修正
    • raftstore-applys #15371 @ コナー1996が継続的に増加するデータエラーを修正
    • データレプリケーション自動同期モード#14975 @ ノルーシュでの同期回復フェーズで QPS がゼロに低下する問題を修正しました。
    • 1 つの TiKV ノードが分離され、別のノードが再起動されたときに発生する可能性のあるデータの不整合の問題を修正#15035 @ 金星の上
    • オンラインの安全でないリカバリがマージ中止#15580 @ v01dスターを処理できない問題を修正
    • PDとTiKV間のネットワーク中断によりPITRが#15279 @ ユジュンセンで停止する可能性がある問題を修正
    • FLASHBACK #15258 @ 金星の上を実行した後にリージョンマージがブロックされる可能性がある問題を修正しました
    • ストアハートビートの再試行回数を#15184 @ ノルーシュに減らすことで、ハートビートストームの問題を修正しました。
    • オンライン安全でないリカバリがタイムアウト#15346 @ コナー1996で中止されない問題を修正
    • 暗号化により部分書き込み中にデータが破損する可能性がある問題を修正#15080 @ タボキ
    • リージョン#13311 @ 翻訳のメタデータが正しくないことが原因で発生する TiKVpanicの問題を修正しました。
    • オンラインワークロード#15565 @ ランス6716がある場合にTiDB Lightningチェックサム コプロセッサの要求がタイムアウトする問題を修正しました
    • ピアを移動するとFollower Readのパフォーマンスが低下する可能性がある問題を修正#15468 @ ユジュンセン
  • PD

    • v2 スケジューラ アルゴリズム#6645 @ 翻訳者でホット リージョンがスケジュールされない可能性がある問題を修正しました。
    • TLS ハンドシェイクにより空のクラスター#6913 @ ノルーシュで CPU 使用率が上昇する可能性がある問題を修正しました
    • PDノード間の注入エラーによりPDpanic#6858 @ ヒューシャープが発生する可能性がある問題を修正
    • ストア情報の同期によりPDリーダーが終了し、 #6918 @ rleungxで停止する可能性がある問題を修正しました。
    • フラッシュバック#6912 @ 金星の上後にリージョン情報が更新されない問題を修正
    • #7053 @ ヒューシャープ終了時に PD がpanicになる可能性がある問題を修正しました
    • コンテキストタイムアウトによりlease timeoutエラー#6926 @ rleungxが発生する可能性がある問題を修正
    • ピアがグループごとに適切に分散されていないため、リーダー#6962 @ rleungxの分布が不均等になる可能性がある問題を修正しました。
    • pd-ctl #7121 @ rleungxを使用して更新するときに分離レベル ラベルが同期されない問題を修正しました。
    • evict-leader-scheduler構成#6897 @ ヒューシャープを失う可能性がある問題を修正
    • プラグインディレクトリとファイルの潜在的なセキュリティリスクを修正#7094 @ ヒューシャープ
    • リソース制御#45050 @ 栄光を有効にした後に DDL がアトミック性を保証しない可能性がある問題を修正しました
    • ルール チェッカーがピア#6559 @ ノルーシュを選択した場合に、不健全なピアを削除できない問題を修正しました。
    • etcd がすでに起動しているがクライアントがまだ接続していない場合、クライアントを呼び出すと PD がpanicになる可能性がある問題を修正しました#6860 @ ヒューシャープ
    • RU消費量が0未満の場合にPDがクラッシュする問題を修正#6973 @ キャビンフィーバーB
    • クラスターが大きい場合、クライアントが定期的に更新するとmin-resolved-ts PD OOM が発生する可能性がある問題を修正#46664 @ ヒューシャープ
  • TiFlash

    • MemoryTracker によって報告されるメモリ使用量が不正確であるという問題を修正#8128 @ ジンヘリン
    • 領域#7762 @ リデズの無効な範囲キーによりTiFlashデータが不整合になる問題を修正しました。
    • fsp DATETIMETIMESTAMP 、またはTIMEデータ型#7809 @ ジェイソン・ファンに変更するとクエリが失敗する問題を修正しました。
    • 同じ MPP タスク内に複数の HashAgg 演算子がある場合、MPP タスクのコンパイルに非常に長い時間がかかり、クエリのパフォーマンスに重大な影響を与える可能性がある問題を修正しました#7810 @ シーライズ
  • ツール

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

      • PITR を使用して暗黙の主キーを回復すると競合が発生する可能性がある問題を修正#46520 @ 3ポインター
      • PITRがGCS #47022 @ リーヴルスからデータを回復できない問題を修正
      • RawKV モード#37085 @ ピンギュのきめ細かいバックアップ フェーズで発生する可能性のあるエラーを修正しました。
      • PITR を使用してメタ kv を回復するとエラーが発生する可能性がある問題を修正#46578 @ リーヴルス
      • BR統合テストケース#46561 @ ピュアリンドのエラーを修正
      • BRが使用するグローバル パラメータTableColumnCountLimitIndexLimitのデフォルト値を最大値#45793 @ リーヴルスに増やすことで、復元失敗の問題を修正しました。
      • 復元されたデータ#45476 @ 3ポインターをスキャンするときに br CLI クライアントが停止する問題を修正しました
      • PITRがCREATE INDEX DDL文#47482 @ リーヴルスの復元をスキップする可能性がある問題を修正
      • 1分以内にPITRを複数回実行するとデータが失われる可能性がある問題を修正#15483 @ ユジュンセン
    • ティCDC

      • 異常な状態のレプリケーションタスクが上流のGC #9543 @ チャールズ・チュン96をブロックする問題を修正
      • オブジェクトstorageにデータを複製するとデータの不整合が発生する可能性がある問題を修正#9592 @ チャールズ・チュン96
      • redo-resolved-ts有効にすると changefeed が失敗する可能性がある問題を修正#9769 @ チャールズ・チュン96
      • 間違ったメモリ情報を取得すると、一部のオペレーティング システムで OOM 問題が発生する可能性がある問題を修正しました#9762 @ スドジ
      • scale-outが有効になっている場合にノード間で書き込みキーが不均等に分散される問題を修正#9665 @ スドジ
      • ログに機密ユーザー情報が記録される問題を修正#9690 @ スドジ
      • TiCDC が名前変更 DDL 操作を誤って同期する可能性がある問題を修正#9488 #9378 #9531 @ アズドンメン
      • すべての変更フィードが削除された後に上流の TiDB GC がブロックされる問題を修正#9633 @ スドジ
      • 一部の特殊なケースで TiCDC レプリケーション タスクが失敗する可能性がある問題を修正#9685 #9697 #9695 #9736 @ ヒック @ チャールズ・チュン96
      • PDノード#9565 @ アズドンメンのネットワーク分離によって発生するTiCDCレプリケーションレイテンシーの問題を修正
      • PD のスケールアップおよびスケールダウン中に TiCDC が無効な古いアドレスにアクセスする問題を修正#9584 @ ふびんず @ アズドンメン
      • 上流にリージョン#9741 @ スドジが多数ある場合に TiCDC が TiKV ノード障害から迅速に回復できない問題を修正しました。
      • CSV形式#9658 @ 3エースショーハンドを使用するとTiCDCがUPDATE演算をINSERTに誤って変更する問題を修正
      • アップストリームの同じDDL文で複数のテーブルの名前を変更するとレプリケーションエラーが発生する問題を修正#9476 #9488 @ チャールズ・チュン96 @ アズドンメン
      • Kafka #9504 @ 3エースショーハンドに同期するときに再試行間隔が短いためにレプリケーション タスクが失敗する問題を修正しました。
      • アップストリーム#9430 @ スドジで 1 つのトランザクションで複数の行の一意のキーが変更されると、レプリケーション書き込み競合が発生する可能性がある問題を修正しました。
      • ダウンストリームで短期的な障害が発生したときにレプリケーションタスクが停止する可能性がある問題を修正#9542 #9272 #9582 #9592 @ ヒック
      • ダウンストリームでエラーが発生し、 #9450 @ ヒックで再試行すると、レプリケーション タスクが停止する可能性がある問題を修正しました。
    • TiDB データ移行 (DM)

      • 失敗した DDL がスキップされ、後続の DDL が実行されない場合に、DM によって返されるレプリケーション ラグが増大し続ける問題を修正#9605 @ D3ハンター
      • DM が大文字と小文字を区別しない照合順序#9489 @ ヒヒフフで競合を正しく処理できない問題を修正
      • DM バリデーターのデッドロック問題を修正し、再試行を#9257 @ D3ハンターに強化しました。
      • 楽観的モード#9588 @ GMHDBJDでタスクを再開するときに DM がすべての DML をスキップする問題を修正
      • オンライン DDL #9587 @ GMHDBJDをスキップするときに DM が上流のテーブル スキーマを適切に追跡できない問題を修正しました。
      • DM が楽観的モード#9788 @ GMHDBJDでパーティション DDL をスキップする問題を修正
    • TiDB Lightning

      • AUTO_ID_CACHE=1を含むテーブルをインポートするときに、間違ったrow_id#46100 @ D3ハンターに割り当てられる問題を修正しました。
      • NEXT_GLOBAL_ROW_ID #45427 @ 翻訳者を保存するときにデータ型が間違っている問題を修正
      • checksum = "optional" #45382 @ 翻訳者のときにチェックサムがエラーを報告する問題を修正しました
      • PD クラスタ アドレスが#43436 @ リチュンジュに変更されるとデータのインポートが失敗する問題を修正しました
      • PDトポロジが変更されるとTiDB Lightningが起動に失敗する問題を修正#46688 @ ランス6716
      • CSVデータ#43284 @ 翻訳者をインポートする際にルートがpanicになる可能性がある問題を修正
    • TiDBBinlog

      • 1 GB #28659 @ ジャッキーを超えるトランザクションを転送するときにDrainer が終了する問題を修正

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