TiDB 5.4.1 リリースノート
リリース日:2022年5月13日
TiDB バージョン: 5.4.1
互換性の変更
TiDB v5.4.1では、製品設計上の互換性に関する変更は行われていません。ただし、このリリースでのバグ修正により、互換性に関する変更も発生する可能性がありますのでご注意ください。詳細については、 バグ修正ご覧ください。
改善点
TiDB
TiKV
- Grafanaダッシュボード#12104で複数のKubernetesクラスターの表示をサポート
PD
- Grafanaダッシュボード#4673で複数のKubernetesクラスターの表示をサポート
TiFlash
- Grafanaダッシュボード#4129で複数のKubernetesクラスターの表示をサポート
ツール
バグ修正
TiDB
- TiDBの
date_formatが'\n'MySQLと互換性のない方法で処理する問題を修正#32232 ENUM#32302またはSET列目のエンコードが間違っているためにTiDBが間違ったデータを書き込む問題を修正しました。- 特定のケースで Merge Join 演算子が間違った結果を返す問題を修正#33042
- 相関サブクエリが定数#32089返すときにTiDBが間違った結果を取得する問題を修正しました
- TiFlash が空の範囲を持つテーブルの読み取りをまだサポートしていないにもかかわらず、 TiFlashを使用して空の範囲を持つテーブルをスキャンすると TiDB が間違った結果を取得する問題を修正しました#33083
- TiDB #31638で新しい照合順序が有効になっているときに、
ENUMまたはSET列目のMAXまたはMIN関数が間違った結果を返す問題を修正しました。 - クエリがエラーを報告したときに CTE がブロックされる可能性があるバグを修正#31302
- 列挙値#32428の Nulleq 関数の誤った範囲計算結果を修正しました
- ChunkRPC #31981 #30880を使用してデータをエクスポートする際の TiDB OOM を修正
tidb_restricted_read_only有効になっているときにtidb_super_read_only自動的に有効にならないバグを修正#31745- 照合順序
greatestまたはleast関数が間違った結果を返す問題を修正しました#31789 - データがエスケープ文字#31589で壊れている場合のロードデータpanicを修正
- インデックスルックアップ結合#30468使用してクエリを実行するときに発生する
invalid transactionエラーを修正します left join#31321を使用して複数のテーブルのデータを削除した場合の誤った結果を修正- TiDBが重複したタスクをTiFlash #32814にディスパッチする可能性があるバグを修正しました
- v4.0 #33588からアップグレードされたクラスターで
all権限の付与が失敗する可能性がある問題を修正しました - MySQLバイナリプロトコル#33509でテーブルスキーマを変更した後にプリペアドステートメントを実行するときに発生するセッションpanicを修正しました
tidb_enable_vectorized_expression有効になっているcompress()式を持つ SQL 文を実行すると失敗する問題を修正しました#33397reArrangeFallback機能#30353によるCPU使用率の高騰の問題を修正- 新しいパーティションが追加されたときにテーブル属性がインデックスされない問題と、パーティションが変更されたときにテーブル範囲情報が更新されない問題を修正しました#33929
- 初期化中のテーブルの
TopN情報が正しくソートされないバグを修正しました#34216 - 識別できないテーブル属性#33665をスキップして、テーブル
INFORMATION_SCHEMA.ATTRIBUTESからの読み取り時に発生するエラーを修正します @@tidb_enable_parallel_applyが設定されていても、orderプロパティが存在する場合にApply演算子が並列化されないバグを修正#34237sql_modeNO_ZERO_DATE#34099に設定するとdatetime列に'0000-00-00 00:00:00'が挿入されるバグを修正しましたINFORMATION_SCHEMA.CLUSTER_SLOW_QUERYテーブルへのクエリ実行時に TiDBサーバーのメモリが発生する問題を修正しました。この問題は、Grafana ダッシュボード#33893でスロークエリをチェックすると発生する可能性があります。NOWAIT文で実行中のトランザクションがロック#32754に遭遇してもすぐには戻らないバグを修正GBK文字セットとgbk_bin照合順序#31308でテーブルを作成するときに失敗するバグを修正しましたenable-new-charsetがonの場合、照合順序付きのGBK文字セットテーブルの作成が「不明な文字セット」エラーで失敗するバグを修正しました#31297
- TiDBの
TiKV
- マージ対象のリージョンが無効であるため、TiKV がパニックを起こしてピアを予期せず破棄する問題を修正#12232
- 古いメッセージによって TiKV がpanicを起こすバグを修正#12023
- メモリメトリックのオーバーフローによって引き起こされる断続的なパケット損失とメモリ不足(OOM)の問題を修正しました#12160
- Ubuntu 18.04 #9765でTiKVがプロファイリングを実行するときに発生する可能性のあるpanic問題を修正しました
- レプリカ読み取りが線形化可能性#12109に違反する可能性があるバグを修正しました
- リージョン#12048をマージする際に、ターゲットピアが初期化されずに破棄されたピアに置き換えられたときに発生するTiKVpanic問題を修正しました。
- TiKV が 2 年以上実行されている場合にpanic可能性があるバグを修正#11940
- 解決ロックのステップ#11993必要とする領域の数を減らすことで、TiCDC の回復時間を短縮します。
- ピアステータスが
Applying#11746ときにスナップショットファイルを削除すると発生するpanic問題を修正しました - ピアを破棄するとレイテンシーが大きくなる可能性がある問題を修正#10210
- リソースメータリング#12234無効なアサーションによって発生するpanic問題を修正
- 一部のコーナーケースで遅いスコア計算が不正確になる問題を修正#12254
resolved_tsモジュールによって引き起こされたOOM問題を修正し、さらにメトリック#12159を追加します- ネットワークが貧弱な場合、正常にコミットされた楽観的トランザクションが
Write Conflictエラーを報告する可能性がある問題を修正しました#34066 - 低品質のネットワークでレプリカ読み取りが有効になっている場合に発生する TiKVpanic問題を修正#12046
PD
TiFlash
- TLS が有効になっているときに発生するpanic問題を修正#4196
- 遅延リージョンピア#4437でのリージョンマージによって発生する可能性のあるメタデータ破損を修正しました
- エラーが発生した場合に
JOINを含むクエリがハングする可能性がある問題を修正しました#4195 - MPP タスクがスレッドを永久にリークする可能性があるバグを修正#4238
FLOATをDECIMAL#3998にキャストするときに発生するオーバーフローを修正- 期限切れのデータがゆっくりとリサイクルされる問題を修正#4146
- ローカルトンネルが有効な場合、キャンセルされた MPP クエリによってタスクが永久にハングする可能性があるバグを修正しました#4229
- クエリがキャンセルされたときに発生するメモリリークの問題を修正しました#4098
DATETIMEをDECIMAL#4151にキャストするときに発生する誤った結果を修正Snapshot複数の DDL 操作#4072と同時に適用された場合にTiFlashpanicが発生する可能性がある問題を修正しました- 無効なstorageディレクトリ設定が予期しない動作を引き起こすバグを修正#4093
- 一部の例外が適切に処理されないバグを修正#4101
INTをDECIMALにキャストするとオーバーフローが発生する可能性がある問題を修正しました#3920- 複数値式#4016で
INの結果が正しくない問題を修正 - 日付形式が
'\n'無効な区切り文字として認識する問題を修正#4036 - 読み取り負荷が高い状態で列を追加した後に発生する可能性のあるクエリエラーを修正#3967
- メモリ制限が有効になっているときに発生するpanic問題を修正#3902
- DTFiles #4778の潜在的なデータ破損を修正
- 削除操作を多数含むテーブルをクエリするときに発生する可能性のあるエラーを修正#4747
- TiFlashが「Keepalive watchdog fired」エラーをランダムに多数報告するバグを修正#4192
- どの領域範囲にも一致しないデータがTiFlashノード#4414に残るバグを修正しました
- GC #4511以降に空のセグメントを結合できないバグを修正
ツール
バックアップと復元 (BR)
- バックアップ再試行中に暗号化情報が失われた場合に復元操作が失敗するバグを修正#32423
- BRがRawKV #32607バックアップに失敗する問題を修正
- 増分復元後にテーブルにレコードを挿入するときに重複する主キーを修正する#33596
- BR増分リストアが空のクエリ#33322を含むDDLジョブにより誤ってエラーを返すバグを修正しました
- 復元操作が完了した後にリージョンが不均等に分散される可能性がある問題を修正しました#31034
- 復元中にリージョンが一致していない場合にBRが十分な回数再試行しない問題を修正#33419
- 小さなファイルのマージが有効になっているときにBRが時々panic可能性がある問題を修正#33801
- BRまたはTiDB Lightningが異常終了した後にスケジューラが再開しない問題を修正#33546
TiCDC
- 所有者の変更によって生じた誤ったメトリクスを修正#4774
Canal-JSONnil #4736サポートしていないために発生する可能性がある TiCDCpanic問題を修正しました- Unified Sorter #4447で使用されるワーカープールの安定性の問題を修正しました
- 一部のケースでシーケンスが誤って複製されるバグを修正#4552
Canal-JSONstring#4635を誤って処理した場合に発生する可能性のある TiCDCpanic問題を修正しました- PDリーダーが強制終了した際にTiCDCノードが異常終了するバグを修正#4248
- MySQLシンクが
batch-replace-enable無効になっているときに重複したreplaceSQL文を生成するバグを修正#4501 rename tablesDDL #5059によって発生した DML 構造エラーを修正- 所有者が変更され、新しいスケジューラが有効になっている場合(デフォルトでは無効)に、まれにレプリケーションが停止する可能性がある問題を修正しました#4963
- 新しいスケジューラが有効になっているときにエラー ErrProcessorDuplicateOperations が報告される問題を修正しました (デフォルトでは無効) #4769
- TLS が有効になった後、
--pdで設定された最初の PD が利用できない場合に TiCDC が起動に失敗する問題を修正#4777 - テーブルがスケジュールされているときにチェックポイントメトリックが欠落する問題を修正しました#4714
TiDB Lightning
TiDB データ移行 (DM)
- ログに「チェックポイントに変更はありません。同期フラッシュチェックポイントをスキップしてください」というメッセージが数百件出力され、レプリケーションが非常に遅くなる問題を修正しました#4619
- 長いvarcharsがエラーを報告するバグを修正
Column length too big#4637 - セーフモードでの更新ステートメントの実行エラーにより、DMワーカーがpanicになる可能性がある問題を修正しました#4317
- 下流でフィルタリングされたDDLを手動で実行すると、タスク再開が失敗する場合がある問題を修正しました#5272
- アップストリーム#5121でbinlogが有効になっていない場合に
query-statusコマンドでデータが返されないバグを修正 SHOW CREATE TABLEステートメント#5159によって返されるインデックスの先頭に主キーがない場合に発生する DM ワーカーpanicの問題を修正しました。- GTID が有効になっているときやタスクが自動的に再開されたときに CPU 使用率が上昇し、大量のログが出力される問題を修正しました#5063