TiDB 7.1.4 リリースノート

発売日: 2024年3月11日

TiDB バージョン: 7.1.4

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

互換性の変更

  • ログ印刷のオーバーヘッドを減らすために、 TiFlashはデフォルト値logger.level"debug"から"info" #8641 @ ジェイソン・ファンに変更します。
  • TiKV構成項目gc.num-threadsを導入して、 enable-compaction-filterfalse #16101 @ トニーの場合のGCスレッド数を設定します。

改善点

  • ティビ

    • 特定のシナリオでOUTER JOIN INNER JOINに変換する能力を強化する#49616 @ qw4990
    • force-init-statstrueに設定すると、TiDB は統計の初期化が完了するまで待機してから、TiDB の起動中にサービスを提供します。この設定により、HTTP サーバーの起動がブロックされなくなり、ユーザーは#50854 @ ホーキングレイの監視を継続できます。
  • ティクヴ

    • TiKVは破損したSSTファイルの存在を検出すると、破損の具体的な理由をログに記録します#16308 @ 金星の上
  • PD

    • バックアップ クラスタが切断されたときに PD がクラスタ ステータスを自動的に更新する速度を向上#6883 @ ディスク
  • TiFlash

  • ツール

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

      • データ復元中にデータベースをバッチで作成するサポート#50767 @ リーヴルス
      • 大規模なデータセットのシナリオでRESTOREステートメントのテーブル作成パフォーマンスを向上#48301 @ リーヴルス
      • より効率的なアルゴリズム#50613 @ リーヴルスを使用して、データ復元中に SST ファイルをマージする速度を向上します
      • データ復元中に SST ファイルをバッチで取り込むことをサポート#16267 @ 3ポインター
      • ログバックアップ中にログとメトリックのグローバルチェックポイントの進行に影響を与える最も遅いリージョンの情報を出力します#51046 @ ユジュンセン
      • Google Cloud Storage (GCS) を外部storageとして使用する場合の古い互換性チェックを削除する#50533 @ ランス6716
      • 複数のログバックアップ切り捨てタスク( br log truncate )が同時に実行されるのを避けるためにロックメカニズムを実装する#49414 @ ユジュンセン
    • ティCDC

    • TiDB Lightning

      • ALTER TABLE #50105 @ D3ハンターを実行するときにロック操作を削除することで、複数のテーブルをインポートするシナリオでのパフォーマンスが向上します。

バグ修正

  • ティビ

    • tidb_multi_statement_modeモードが有効になっている場合に、インデックス検索を使用するDELETEおよびUPDATEステートメントでエラーが報告される可能性がある問題を修正しました#50012 @ タンジェンタ
    • CTEクエリが再試行プロセス#46522 @ 天菜まお中にエラーtype assertion for CTEStorageMap failedを報告する可能性がある問題を修正
    • Golang の暗黙的な変換アルゴリズム#49801 @ qw4990によって発生する統計構築時の過度の統計エラーの問題を修正
    • パーティションテーブル#48713 @ ホーキングレイのグローバル統計の同時マージ中にエラーが返される可能性がある問題を修正しました。
    • TiDB がgroup by #38756 @ ハイラスティンの定数値を誤って削除したために間違ったクエリ結果が発生する問題を修正しました。
    • BIT型の列が一部の関数の計算に関係する場合にデコード失敗によりクエリ エラーが発生する可能性がある問題を修正しました#49566 #50850 #50855 @ ジフハウス
    • 複数レベルのネストされたUNIONクエリのLIMIT無効になる可能性がある問題を修正#49874 @ 定義2014
    • AUTO_ID_CACHE=1 #50519 @ 天菜まおの自動インクリメント列を使用すると同時競合により自動インクリメント ID 割り当てでエラーが報告される問題を修正しました。
    • クエリでNATURAL JOIN #32044 @ アイリンキッドが使用される場合に発生する可能性のあるColumn ... in from clause is ambiguousエラーを修正します。
    • クエリがソートを強制するオプティマイザヒント( STREAM_AGG()など)を使用し、実行プランにIndexMerge #49605 @ アイリンキッドが含まれている場合に、強制ソートが無効になる可能性がある問題を修正しました。
    • STREAM_AGG() CI #49902 @ うわーを誤って処理したためにクエリ結果が正しくない問題を修正しました
    • HashJoin演算子がディスク#50841 @ うわーにスピルできない場合に発生する可能性のある goroutine リークの問題を修正しました。
    • REPLACE INTO#34325 @ ヤンケオでヒントが使用できない問題を修正
    • GROUP_CONCAT(ORDER BY)構文を含むクエリを実行するとエラー#49986 @ アイリンキッドが返される可能性がある問題を修正しました
    • 複数値インデックスを使用して空の JSON 配列にアクセスすると、誤った結果が返される可能性がある問題を修正しました#50125 @ ヤンケオ
    • CTE クエリのメモリ使用量が制限#50337 @ グオシャオゲを超えた場合に発生する goroutine リークの問題を修正しました
    • 古いインターフェースを使用するとテーブル#49751 @ ホーキングレイのメタデータに不整合が生じる可能性がある問題を修正しました。
    • ORDER BY句でUNIQUEインデックス検索を実行するとエラー#49920 @ ジャッキーが発生する可能性がある問題を修正しました
    • 共通ヒントがUNION ALL#50068 @ ホーキングレイで有効にならない問題を修正
    • メモリがtidb_mem_quota_query #49033 @ 徐淮宇を超えると IndexHashJoin 演算子を含むクエリが停止する問題を修正しました。
    • WITH RECURSIVE CTE を含むUPDATEまたはDELETEステートメントで誤った結果が生成される可能性がある問題を修正しました#48969 @ ウィノロス
    • ヒストグラムの境界にNULL #49823 @ アイリンキッドが含まれている場合、ヒストグラム統計が読み取り可能な文字列に解析されない可能性がある問題を修正しました。
    • クエリに Apply 演算子が含まれており、 fatal error: concurrent map writesエラーが発生すると TiDB がpanicになる可能性がある問題を修正しました#50347 @ シーライズ
    • 集計関数をグループ計算に使用した場合に発生する可能性のあるCan't find column ...エラーを修正#50926 @ qw4990
    • 定数伝播#49440 @ ウィノロスENUMまたはSET型を処理するときに TiDB が間違ったクエリ結果を返す問題を修正しました
    • 依存関係のある 2 つの DDL タスクの完了時間が#49498 @ タンジェンタと誤って順序付けられる問題を修正しました。
    • tidb_enable_prepared_plan_cacheシステム変数を有効にしてから無効にした後、 EXECUTEステートメントを使用してPREPARE STMTを実行すると、TiDB がpanicになる可能性がある問題を修正しました#49344 @ qw4990
    • ネストされたUNIONのクエリ#49377 @ アイリンキッドLIMITOPRDERBY無効になる可能性がある問題を修正しました
    • LEADINGヒントがUNION ALLステートメント#50067 @ ホーキングレイで有効にならない問題を修正
    • COM_STMT_EXECUTEまで実行されたCOMMITまたはROLLBACK操作が、タイムアウトしたトランザクションを終了できない問題を修正しました#49151 @ ジグアン
    • 不正なオプティマイザヒントによって有効なヒントが無効になる可能性がある問題を修正#49308 @ ホーキングレイ
    • 一部のタイムゾーンで夏時間が正しく表示されない問題を修正#49586 @ 金星の上
    • PREPAREメソッドを使用してSELECT INTO OUTFILEを実行すると、エラー#49166 @ qw4990ではなく、誤って成功メッセージが返される問題を修正しました。
    • PD #50152 @ ジムララとの相互作用の問題により、 tiup cluster upgrade/startを使用してローリング アップグレードを実行すると TiDB がpanicになる可能性がある問題を修正しました。
    • 空のテーブルにインデックスを追加したときに期待される最適化が有効にならない問題を修正#49682 @ ジムララ
    • 多数のテーブルまたはパーティションが作成されるときに TiDB が OOM になる可能性がある問題を修正#50077 @ ジムララ
    • ネットワークが不安定な場合にインデックスを追加するとインデックスデータの不整合が発生する可能性がある問題を修正#49773 @ タンジェンタ
    • DDL ジョブの実行順序を修正して、TiCDC が順序どおりでない DDL #49498 @ タンジェンタを受信しないようにします。
    • tidb_server_memory_limit変数が変更された後にtidb_gogc_tuner_thresholdシステム変数がそれに応じて調整されない問題を修正#48180 @ ホーキングレイ
    • 誤ったパーティションプルーニングが原因で、範囲パーティションテーブルのクエリ結果が間違っている場合がある問題を修正#50082 @ 定義2014
    • CREATE TABLEステートメントに特定のパーティションまたは制約が含まれている場合に、テーブル名の変更などの DDL 操作が停止する問題を修正しました#50972 @ lcwangchao
    • 列のデフォルト値が削除されている場合、列のデフォルト値を取得するとエラーが返される問題を修正#50043 #51324 @ クレイジーcs520
    • Grafana の監視メトリックtidb_statistics_auto_analyze_totalが整数#51051 @ ホーキングレイとして表示されない問題を修正しました。
    • auto analyzeがパーティション テーブル#47594 @ ホーキングレイを処理しているときにtidb_merge_partition_stats_concurrency変数が有効にならない問題を修正しました。
    • クエリにJOIN操作#42588 @ アイリンキッドが含まれる場合にindex out of rangeエラーが発生する可能性がある問題を修正
    • TiFlash の遅延マテリアライゼーションが関連列#49241 #51204 @ ロイド・ポティガーを処理するときに間違った結果が返される可能性がある問題を修正しました
    • テーブルにクラスター化インデックス#51372 @ グオシャオゲがある場合に並列Applyで誤った結果が生成される可能性がある問題を修正しました。
  • ティクヴ

    • 例外的な状況で休止状態のリージョンがすぐに起動しない問題を修正#16368 @ リクササシネーター
    • ノードをオフラインにする前に、リージョン内のすべてのレプリカの最後のハートビート時間をチェックすることで、1 つのレプリカがオフラインになるとリージョン全体が使用できなくなる問題を修正しました#16465 @ トニー
    • Titan が有効な場合に RocksDB に保存されるテーブル プロパティが不正確になる可能性がある問題を修正#16319 @ ヒック
    • クラスターにTiFlashノード#16189 @ 新鮮がある場合にtikv-ctl compact-cluster実行が失敗する問題を修正しました。
    • gRPC スレッドがis_shutdown #16236 @ ピンギュをチェックしているときに TiKV がpanic可能性がある問題を修正しました
    • DECIMAL算術乗算切り捨て#16268 @ ソロッツを処理するときに TiDB と TiKV が矛盾した結果を生成する可能性がある問題を修正しました。
    • cast_duration_as_time誤った結果を返す可能性がある問題を修正#16211 @ ゲンリキ
    • TiKV がブラジルとエジプトのタイムゾーンを誤って変換する問題を修正#16220 @ 金星の上
    • 最大値INT64より大きく最大値UINT64より小さい JSON 整数が TiKV によってFLOAT64として解析され、TiDB #16512 @ ヤンケオとの不整合が発生する問題を修正しました。
  • PD

    • リソース グループ クライアントでスロットが完全に削除されず、割り当てられたトークンの数が指定された値#7346 @ グオシャオゲより少なくなる問題を修正しました。
    • 一部の TSO ログでエラー原因#7496 @ キャビンフィーバーBが印刷されない問題を修正しました
    • BURSTABLEが有効になっている場合にデフォルトのリソース グループが不要なトークンを蓄積する問題を修正#7206 @ キャビンフィーバーB
    • evict-leader-schedulerインターフェースが#7672 @ キャビンフィーバーBで呼び出されたときに出力がない問題を修正しました
    • watch etcd正しくオフになっていない場合に発生するメモリリークの問題を修正#7807 @ rleungx
    • MergeLabels関数が#7535 @ 翻訳者で呼び出されたときにデータ競合が発生する問題を修正
    • TLS が有効な場合に TiDB ダッシュボードが TiKV プロファイルを取得できない問題を修正#7561 @ コナー1996
    • レプリカ数が要件#7584 @ バッファフライを満たしていない場合に孤立ピアが削除される問題を修正
    • データレプリケーション自動同期(DR自動同期)モード#7221 @ ディスクを採用しているクラスターでavailable_stores誤って計算される問題を修正
    • 配置ルールの構成が複雑な場合に、データレプリケーション自動同期 (DR 自動同期) モードを採用しているクラスターでcanSynchasMajorityが誤って計算される可能性がある問題を修正しました#7201 @ ディスク
    • データレプリケーション自動同期 (DR 自動同期) モード#7218 @ ディスクを採用しているクラスターで、セカンダリ AZ がダウンしているときにプライマリ AZ が TiKV ノードを追加できない問題を修正しました。
    • リソース グループをバッチでクエリすると PD がpanicになる可能性がある問題を修正#7206 @ ノルーシュ
    • pd-ctlを使用してリーダーのないリージョンを照会すると、PD がpanic#7630 @ rleungxになる可能性がある問題を修正しました。
    • リーダースイッチ#7728 @ キャビンフィーバーB後にPD監視項目learner-peer-count古い値を同期しない問題を修正
    • systemd #7628 @ バッファフライで起動すると PD がリソース制限を読み取れない問題を修正
  • TiFlash

    • レプリカ移行中にPDとのネットワーク接続が不安定になり、 TiFlashがpanic可能性がある問題を修正#8323 @ ジェイソン・ファン
    • ENUM値が 0 #8311 @ ソロッツの場合にTiFlash がENUM誤って処理する問題を修正しました
    • 定数文字列パラメータ#8604 @ 風の話し手を含むGREATESTまたはLEAST関数で発生する可能性のあるランダムな無効なメモリアクセスの問題を修正しました。
    • lowerUTF8upperUTF8関数で、大文字と小文字が異なるバイト#8484 @ ゲンリキを占めることができない問題を修正しました。
    • 短いクエリが正常に実行されると過剰な情報ログ#8592 @ 風の話し手が出力される問題を修正しました
    • クエリが遅いためにメモリ使用量が大幅に増加する問題を修正#8564 @ ジンヘリン
    • ALTER TABLE ... MODIFY COLUMN ... NOT NULLを実行した後にTiFlash がパニックを起こし、null 許容列が#8419 @ ジェイソン・ファンに非許容列に変更される問題を修正しました。
    • クエリを終了した後、 TiFlash上の多数のタスクが同時にキャンセルされると、同時データの競合によりTiFlashがクラッシュする問題を修正#7432 @ シーライズ
    • リモート読み取り#8685 @ ざんまと1984中にTiFlash がクラッシュする可能性がある問題を修正
    • 結合に非等価条件#8791 @ 風の話し手が含まれている場合にTiFlash Anti Semi Join が誤った結果を返す可能性がある問題を修正しました
  • ツール

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

      • ログバックアップタスクを停止すると TiDB がクラッシュする問題を修正#50839 @ ユジュンセン
      • TiKVノード#50566 @ リーヴルスにリーダーがいないためにデータの復元が遅くなる問題を修正
      • 同じノード#50445 @ 3ポインターで TiKV IP アドレスを変更した後にログ バックアップが停止する問題を修正しました。
      • S3 #49942 @ リーヴルスからファイル コンテンツを読み取っているときにエラーが発生した場合にBR が再試行できない問題を修正しました。
      • 古いバージョン#49466 @ 3ポインターのバックアップからデータを復元するときにUnsupported collationエラーが報告される問題を修正しました
    • ティCDC

      • アップストリームテーブル#10522 @ スドジTRUNCATE PARTITIONが実行された後に、changefeed がエラーを報告する問題を修正しました。
      • 極端なケースでチェンジフィードresolved tsが進まない問題を修正#10157 @ スドジ
      • 同期ポイントテーブルが誤って複製される可能性がある問題を修正#10576 @ アズドンメン
      • ignore-eventadd table partitionイベントをフィルタリングするように構成した後、TiCDC が関連パーティションの他のタイプの DML 変更をダウンストリーム#10524 @ チャールズ・チュン96に複製しない問題を修正しました。
      • storageシンク#10352 @ チャールズ・チュン96を使用すると、storageサービスによって生成されたファイルシーケンス番号が正しく増加しない可能性がある問題を修正しました。
      • 複数の変更フィード#10430 @ チャールズ・チュン96を同時に作成すると TiCDC がErrChangeFeedAlreadyExistsエラーを返す問題を修正しました
      • 変更フィードを再開するときにsnapshot lost caused by GC時間内に報告されず、変更フィードのcheckpoint-ts TiDB #10463 @ スドジの GC セーフポイントよりも小さい問題を修正しました。
      • 単一行データのデータ整合性検証が有効になった後、タイムゾーンの不一致により TiCDC がTIMESTAMP種類のチェックサムを検証できない問題を修正#10573 @ 3エースショーハンド
    • TiDB データ移行 (DM)

      • タスク構成の間違ったbinlogイベントタイプによりアップグレードが失敗する問題を修正#10282 @ GMHDBJD
      • shard_row_id_bitsのテーブルでスキーマ トラッカーが#10308 @ GMHDBJDの初期化に失敗する問題を修正しました。
    • TiDB Lightning

      • ファイルスキャン中に無効なシンボリックリンクファイルに遭遇すると、 TiDB Lightning がエラーを報告する問題を修正#49423 @ ランス6716
      • sql_mode #50757 @ GMHDBJDNO_ZERO_IN_DATEが含まれていない場合、 TiDB Lightning が0を含む日付値を正しく解析できない問題を修正しました。

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