TiDB 5.0.6 リリースノート
発売日:2021年12月31日
TiDB バージョン: 5.0.6
互換性の変更
ツール
改良点
TiDB
- コプロセッサーがロックを検出したときに、影響を受ける SQL ステートメントをデバッグ・ログに表示します。これは、問題の診断に役立ちます#27718
TiKV
PD
ツール
TiCDC
- TiKV リロードのレート制限制御を最適化して、変更フィードの初期化中の gPRC の輻輳を軽減します#3110
- EtcdWorker にティック頻度制限を追加して、頻繁な etcd 書き込みが PD サービスに影響を与えないようにします#3112
- Kafka シンク#3352に
config.Metadata.Timeoutの既定の構成を追加します。 - デフォルト値の
max-message-bytesから10Mを設定して、Kafka メッセージを送信できない可能性を減らします#3081 no owner alert、mounter row、table sink total row、およびbuffer sink total row#4054 #1606を含む、Prometheus および Grafana のモニタリング メトリックとアラートをさらに追加します。
バックアップと復元 (BR)
TiDB Lightning
- 式インデックスまたは仮想生成列に依存するインデックスを持つテーブルへのデータのインポートをサポート#1404
バグの修正
TiDB
- 楽観的トランザクションの競合により、トランザクションが相互にブロックされる可能性があるという問題を修正します#11148
- MPP クエリ#1791の誤検知エラー ログ
invalid cop task execution summaries lengthの問題を修正します。 - DML ステートメントと DDL ステートメントが同時に実行されたときに発生する可能性があるpanicを修正します#30940
grantおよびrevoke操作を実行してグローバル レベルの権限を付与および取り消すときのprivilege check failエラーを修正します#29675- 場合によっては
ALTER TABLE.. ADD INDEXステートメントを実行すると TiDBpanicが発生する問題を修正#27687 enforce-mpp設定が v5.0.4 で有効にならない問題を修正#29252ENUMデータ型#29357でCASE WHEN関数を使用したときのpanicを修正- ベクトル化された式#29244の
microsecond関数の間違った結果を修正 auto analyze結果#29188の不完全なログ情報の問題を修正- ベクトル化された式#28643の
hour関数の間違った結果を修正 - サポートされていない
castTiFlash #23907に押し下げるとtidb_cast to Int32 is not supportedのような予期しないエラーが発生する問題を修正 - 一部のまれなケースで MPP ノードの可用性検出が機能しないバグを修正します#3118
MPP task ID#27952を割り当てる際のDATA RACE問題を修正- 空
dual table#28250を削除した後の MPP クエリのINDEX OUT OF RANGEエラーを修正 - 無効な日付値を同時に挿入する場合の TiDBpanicを修正します#25393
- MPP モード#30980でのクエリの予期しない
can not found column in Schema columnエラーを修正 - TiFlashのシャットダウン時に TiDB がpanicになる問題を修正#28096
- プランナーが結合リオーダー#24095を行っているときの予期しないエラー
index out of rangeを修正します。 - 制御関数(
IFやCASE WHENなど) のような関数のパラメーターとしてENUM型のデータを使用する場合の誤った結果を修正します#23114 CONCAT(IFNULL(TIME(3))#29498の間違った結果を修正- 符号なし
BIGINT引数を渡すときのGREATESTとLEASTの間違った結果を修正#30101 - JSON 型の列が
CHAR型の列を結合すると SQL 操作がキャンセルされる問題を修正します#29401 - レイジー存在チェックと手付かずのキー最適化の誤った使用によって引き起こされるデータの不整合の問題を修正します#30410
- トランザクションを使用する場合と使用しない場合で、ウィンドウ関数が異なる結果を返すことがある問題を修正します#29947
cast(integer as char) union stringを含む SQL ステートメントが間違った結果を返す問題を修正します#29513DecimalからString#29417をキャストするとき、長さの情報が間違っている問題を修正- SQL ステートメントに自然結合#25041が含まれていると、予期せず
Column 'col_name' in field list is ambiguousエラーが報告される問題を修正します。 tidb_enable_vectorized_expressionの異なる値 (onまたはoffに設定) が原因でGREATEST関数が一貫性のない結果を返す問題を修正します#29434- プランナーが場合によっては
joinの無効なプランをキャッシュする可能性がある問題を修正します#28087 - SQL文でjoinの結果に対して集計結果を評価すると、場合によっては
index out of range [1] with length 1エラーが報告される問題を修正#1978
TiKV
- TiKV ノードがダウンしていると、解決されたタイムスタンプが#11351遅れる問題を修正します。
- Raftクライアント実装#9714でバッチ メッセージが大きすぎる問題を修正
- 極端な状況でリージョンのマージ、ConfChange、およびスナップショットが同時に発生したときに発生するpanicの問題を修正します#11475
- TiKV がリバース テーブル スキャンを実行すると、TiKV がメモリロックを検出できない問題を修正します#11440
- 10 進数の除算結果がゼロ#29586の場合の負号の問題を修正
- GC タスクの蓄積により、TiKV が OOM (メモリ不足) になる可能性がある問題を修正します#11410
- インスタンスごとの gRPC リクエストの平均レイテンシーが TiKV メトリクスで不正確である問題を修正します#11299
- 統計スレッド#11195のデータを監視することによって引き起こされるメモリリークを修正します。
- ダウンストリーム データベースが見つからない場合に発生する TiCDCpanicの問題を修正します#11123
- Congest エラー#11082により、TiCDC がスキャンの再試行を頻繁に追加する問題を修正します。
- チャネルがいっぱいになるとRaft接続が切断される問題を修正します#11047
- TiDB Lightning がデータをインポートする際にファイルが存在しない場合に TiKVpanicが発生する問題を修正#10438
- TiDB が
Max/Min関数のInt64型が符号付き整数かどうかを正しく識別できず、Max/Min#10158という誤った計算結果になる問題を修正 - TiKV がメタデータを#10225に変更できないため、ノードがスナップショットを取得した後に TiKV レプリカのノードがダウンする問題を修正します。
- バックアップ スレッド プール#10287のリークの問題を修正します。
- 不正な文字列を浮動小数点数にキャストする問題を修正します#23322
PD
TiFlash
- 主キー列をより大きな int データ型に変更した後の潜在的なデータ不整合を修正
- ARM などの一部のプラットフォームで、
libnsl.soのライブラリが存在しないためにTiFlash が起動しない問題を修正 Store sizeメトリックがディスク上の実際のデータ サイズと一致しない問題を修正します。Cannot open fileエラーでTiFlashがクラッシュする問題を修正- MPP クエリが強制終了されたときにTiFlashがときどきクラッシュする問題を修正
- 予期しないエラーを修正する
3rd arguments of function substringUTF8 must be constants - 過剰な
OR条件によるクエリの失敗を修正する where <string>の結果がおかしくなるバグを修正- TiFlashと TiDB/TiKV の間で一貫性のない
CastStringAsDecimalの動作を修正 - エラー
different types: expected Nullable(Int64), got Int64によるクエリの失敗を修正する - エラー
Unexpected type of column: Nullable(Nothing)によるクエリの失敗を修正する DECIMALデータ型のデータを比較するときのオーバーフローによって引き起こされるクエリの失敗を修正します
ツール
TiCDC
force-replicateが有効な場合、有効なインデックスのない一部のパーティション テーブルが無視される可能性があるという問題を修正します#2834cdc cli予期しないパラメーターを受け取ったときにユーザー パラメーターが暗黙のうちに切り捨てられ、ユーザー入力パラメーターが失われる問題を修正します#2303- Kafka メッセージの書き込み中にエラーが発生すると、TiCDC 同期タスクが一時停止することがある問題を修正します#2978
- 一部のタイプの列を Open Protocol フォーマット#2758にエンコードする際に発生する可能性があったpanicの問題を修正
- デフォルト値を
max-message-bytesから10M#3081に設定することにより、Kafka が過度に大きなメッセージを送信する可能性がある問題を修正します。 - アップストリームの TiDB インスタンスが予期せず終了すると、TiCDC レプリケーション タスクが終了する可能性がある問題を修正します#3061
- TiKV が同じリージョン#2386に重複したリクエストを送信すると、TiCDC プロセスがパニックになる可能panicがある問題を修正します。
- 複数の TiKV がクラッシュしたとき、または強制再起動中に TiCDC レプリケーションが中断する問題を修正します#3288
- changefeed チェックポイントラグ#3010の負の値のエラーを修正します。
- MySQL シンクのデッドロック#2706が原因で頻繁に警告が表示される問題を修正
- Avro シンクが JSON 型の列の解析をサポートしていない問題を修正します#3624
- TiKV 所有者が再起動すると、TiCDC が TiKV から誤ったスキーマ スナップショットを読み取るバグを修正します#2603
- DDL #3174の処理後のメモリリークの問題を修正します。
- Canal および Maxwell プロトコル#3676で
enable-old-value構成項目が自動的にtrueに設定されないバグを修正 cdc serverの Red Hat Enterprise Linux リリース (6.8 や 6.9 など) でコマンドを実行するときに発生するタイムゾーン エラーを修正します#3584- Kafka シンク#3431の不正確な
txn_batch_sizeモニタリング メトリックの問題を修正します tikv_cdc_min_resolved_ts_no_change_for_1m変更フィードがないときにアラートが鳴り続ける問題を修正#11017- etcd #2980でタスク ステータスを手動でクリーニングするときに発生する TiCDCpanicの問題を修正します。
- ErrGCTTLExceeded エラーが発生したときに changefeed が十分な速さで失敗しないという問題を修正します#3111
- 株式データのスキャンに時間がかかりすぎると、TiKV が GC を実行するために株式データのスキャンが失敗する可能性がある問題を修正します#2470
- コンテナ環境で OOM を修正する#1798
バックアップと復元 (BR)
- バックアップとリストアの平均速度が不正確に計算されるバグを修正#1405
Dumpling
- 複合主キーまたは一意キー#29386を持つテーブルをダンプすると、Dumplingが非常に遅くなるバグを修正