TiDB4.0.16リリースノート
発売日:2021年12月17日
TiDBバージョン:4.0.16
互換性の変更
TiKV
- v4.0.16より前では、TiDBが不正なUTF-8文字列をRealタイプに変換すると、エラーが直接報告されます。 v4.0.16以降、TiDBは文字列#11466の有効なUTF-8プレフィックスに従って変換を処理します。
ツール
改善
TiDB
- Grafanaバージョンを7.5.7から7.5.11にアップグレードします
TiKV
- バックアップと復元を使用してデータを復元するとき、またはTiDB Lightning #11469のローカルバックエンドを使用してデータをインポートするときに、zstdアルゴリズムを採用してSSTファイルを圧縮することにより、ディスク容量の消費を削減します。
ツール
バグの修正
TiDB
- コスト見積もりのために範囲をポイントに変換するときに統計モジュールのオーバーフローによって引き起こされるクエリパニックを修正します#23625
ENUM
種類のデータをそのような関数のパラメーターとして使用する場合の制御関数(IF
やCASE WHEN
など)の誤った結果を修正します#23114tidb_enable_vectorized_expression
(on
またはoff
) #29434の値が異なるために、GREATEST
関数が一貫性のない結果を返す問題を修正します。- 場合によってはプレフィックスインデックスにインデックス結合を適用するときのパニックを修正します#24547
- プランナーが
join
、場合によっては#28087の無効なプランをキャッシュする可能性がある問題を修正します sql_mode
が空の場合にTiDBがnull以外の列にnull
を挿入できないバグを修正します#11648GREATEST
およびLEAST
関数の間違った結果タイプを修正します#29019- グローバルレベルの特権を付与および取り消すために
grant
およびrevoke
の操作を実行するときのprivilege check fail
のエラーを修正します#29675 ENUM
データ型#29357でCASE WHEN
関数を使用するときのパニックを修正します- ベクトル化された式#29244の
microsecond
関数の誤った結果を修正します - ベクトル化された式#28643の
hour
関数の誤った結果を修正します - 楽観的なトランザクションの競合により、トランザクションが互いにブロックする可能性があるという問題を修正します#11148
auto analyze
の結果からの不完全なログ情報の問題を修正します#29188SQL_MODE
が「NO_ZERO_IN_DATE」の場合に無効なデフォルトの日付を使用してもエラーが報告されない問題を修正します#26766- Grafanaのコプロセッサーキャッシュパネルにメトリックが表示されない問題を修正します。これで、
miss
はhits
の数を#26338しevict
- 同じパーティションを同時に切り捨てると、DDLステートメントがスタックする問題を修正します#26229
Decimal
から#29417に変換するときに長さ情報が間違っている問題を修正しString
NATURAL JOIN
を使用して複数のテーブルを結合する場合のクエリ結果の余分な列の問題を修正します#29481IndexScan
がプレフィックスインデックス#29711を使用しているときに、TopN
が誤ってindexPlan
にプッシュダウンされる問題を修正します。DOUBLE
タイプの自動インクリメント列を使用してトランザクションを再試行すると、データが破損する問題を修正します#29892
TiKV
- リージョンマージ、ConfChange、およびスナップショットが極端な条件で同時に発生するときに発生するパニックの問題を修正します#11475
- 10進数の除算結果がゼロの場合の負の符号の問題を修正します#29586
- インスタンスごとのgRPCリクエストの平均レイテンシがTiKVメトリクス#11299で不正確であるという問題を修正します
- ダウンストリームデータベースが欠落しているときに発生するTiCDCパニックの問題を修正します#11123
- チャネルがいっぱいになるとラフト接続が切断される問題を修正します#11047
Max
関数のInt64
タイプが符号付き整数であるかどうかを#10158が正しく識別できない問題を修正しMin
。これにより、Max
/911の誤った計算結果が発生しMin
。- 輻輳エラー#11082が原因でCDCがスキャンの再試行を頻繁に追加する問題を修正します
PD
TiFlash
- ライブラリ
nsl
がないために、一部のプラットフォームでTiFlashが起動しない問題を修正します。
- ライブラリ
ツール
TiDB Binlog
- 1GBを超えるトランザクションを転送するときにDrainerが終了するバグを修正します#28659
TiCDC
- チェンジフィードチェックポイントラグ#3010の負の値のエラーを修正します
- コンテナ環境でのOOMの修正#1798
- 複数のTiKVがクラッシュしたとき、または強制的に再起動したときのTiCDCレプリケーションの中断の問題を修正します#3288
- #3174の処理後のメモリリークの問題を修正
- ErrGCTTLExceededエラーが発生したときにchangefeedが十分に速く失敗しない問題を修正します#3111
- アップストリームTiDBインスタンスが予期せず終了したときにTiCDCレプリケーションタスクが終了する可能性がある問題を修正します#3061
- TiKVが同じリージョン#2386に重複したリクエストを送信すると、TiCDCプロセスがパニックになる可能性がある問題を修正します。
- TiCDCによって生成されるKafkaメッセージの量が#2962によって制約されないという問題を修正し
max-message-size
- チェンジフィードがない場合に
tikv_cdc_min_resolved_ts_no_change_for_1m
がアラートを出し続ける問題を修正します#11017 - Kafkaメッセージの書き込み中にエラーが発生したときにTiCDC同期タスクが一時停止する可能性がある問題を修正します#2978
force-replicate
が有効になっている場合、有効なインデックスのない一部のパーティションテーブルが無視される可能性がある問題を修正します#2834- 新しいチェンジフィードを作成するときのメモリリークの問題を修正します#2389
- シンクコンポーネントが早期に解決されたtsを進めるためにデータの一貫性が失われる可能性がある問題を修正します#3503
- ストックデータのスキャンに時間がかかりすぎると、TiKVがGCを実行するためにストックデータのスキャンが失敗する可能性がある問題を修正します#2470
- changefeedupdateコマンドがグローバルコマンドラインパラメーターを認識しない問題を修正します#2803