TiDB 7.1.4 リリースノート
発売日:2024年3月11日
TiDBバージョン: 7.1.4
互換性の変更
- ログ印刷のオーバーヘッドを減らすために、 TiFlashはデフォルト値の
logger.level"debug"から"info"#8641 @ ジェイソン・ファンに変更します。 - TiKV構成項目
gc.num-threadsを導入して、enable-compaction-filterがfalse#16101 @ トニーシュキの場合のGCスレッド数を設定します。
改善点
ティドブ
TiKV
PD
TiFlash
ツール
バックアップと復元 (BR)
- データ復元中にデータベースをバッチで作成するサポート#50767 @ リーヴルス
- 大規模なデータセット#48301 @ リーヴルスのシナリオで
RESTOREステートメントのテーブル作成パフォーマンスを向上 - より効率的なアルゴリズム#50613 @ リーヴルスを使用して、データ復元中に SST ファイルをマージする速度を改善します
- データ復元中に SST ファイルをバッチで取り込むことをサポート#16267 @ 3ポイントシュート
- ログバックアップ#51046 @ ユジュンセン中に、ログとメトリックのグローバルチェックポイントの進行に影響を与える最も遅いリージョンの情報を出力します。
- Google Cloud Storage(GCS)を外部storageとして使用する場合の古い互換性チェックを削除します#50533 @ ランス6716
- 複数のログバックアップ切り捨てタスク(
br log truncate)が同時に実行されるのを防ぐためのロックメカニズムを実装する#49414 @ ユジュンセン
TiCDC
- ダウンストリームがKafkaの場合、トピック式は
schemaオプションとして許可し、トピック名を直接指定することをサポートします#9763 @ 3エースショーハンド - サポートチェンジフィードの下流同期ステータスの照会は、TiCDC が受信した上流データの変更が下流システムに完全に同期されているかどうかを判断するのに役立ちます#10289 @ ホンユニャン
- TiDBダッシュボード#10263 @ チャールズ・チャン96でのTiCDCログの検索をサポート
- ダウンストリームがKafkaの場合、トピック式は
TiDB Lightning
バグ修正
ティドブ
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 @ wshwsh12を誤って処理したためにクエリ結果が正しくない問題を修正しましたHashJoin演算子がディスク#50841 @ wshwsh12にスピルできない場合に発生する可能性のある goroutine リークの問題を修正しました。REPLACE INTO文#34325 @ ヤンケオでヒントが使用できない問題を修正GROUP_CONCAT(ORDER BY)構文を含むクエリを実行するとエラー#49986 @ アイリンキッドが返される可能性がある問題を修正しました- 複数値インデックスを使用して空の JSON 配列にアクセスすると、誤った結果が返される可能性がある問題を修正しました#50125 @ ヤンケオ
- CTEクエリのメモリ使用量が制限#50337 @ グオシャオゲを超えたときに発生するgoroutineリークの問題を修正しました
- 古いインターフェースを使用するとテーブル#49751 @ ホーキングレイのメタデータに不整合が発生する可能性がある問題を修正しました。
ORDER BY句でUNIQUEインデックス検索を実行するとエラー#49920 @ ジャッキーspが発生する可能性がある問題を修正しました- 共通ヒントが
UNION ALL文#50068 @ ホーキングレイで有効にならない問題を修正 - メモリが
tidb_mem_quota_query#49033 @ 徐淮嶼を超えると IndexHashJoin 演算子を含むクエリが停止する問題を修正しました WITH RECURSIVECTE を含むUPDATEまたはDELETEステートメントで誤った結果が生成される可能性がある問題を修正しました#48969 @ ウィノロス- ヒストグラムの境界に
NULL#49823 @ アイリンキッドが含まれている場合、ヒストグラム統計が読み取り可能な文字列に解析されない可能性がある問題を修正しました。 - クエリに Apply 演算子が含まれており、
fatal error: concurrent map writesエラーが#50347 @ シーライズで発生すると TiDB がpanicになる可能性がある問題を修正しました。 - 集計関数をグループ計算に使用すると発生する可能性のある
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 @ アイリンキッドでLIMITとOPRDERBY無効になる可能性がある問題を修正しました 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変数が#48180 @ ホーキングレイに変更された後、tidb_gogc_tuner_thresholdシステム変数がそれに応じて調整されない問題を修正しました- 誤ったパーティションプルーニング#50082 @ 定義2014が原因で、範囲パーティションテーブルのクエリ結果が間違っている場合がある問題を修正しました。
CREATE TABLE文に特定のパーティションまたは制約が含まれている場合に、テーブル名の変更などの DDL 操作が停止する問題を修正しました#50972 @ lcwangchao- 列のデフォルト値が削除されている場合に列のデフォルト値を取得するとエラーが返される問題を修正#50043 #51324 @ crazycs520
- 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で誤った結果が生成される可能性がある問題を修正しました。
TiKV
- 例外的な状況で休止状態の領域がすぐに起動しない問題を修正#16368 @ LykxSassinator
- ノードをオフラインにする前に、リージョン内のすべてのレプリカの最後のハートビート時間をチェックすることで、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 @ 金星の上
- JSON の整数が最大値
INT64より大きく最大値UINT64より小さい場合、TiKV によってFLOAT64として解析され、TiDB #16512 @ ヤンケオとの不整合が発生する問題を修正しました。
PD
- リソース グループ クライアントでスロットが完全に削除されず、割り当てられたトークンの数が指定された値#7346 @ グオシャオゲより少なくなる問題を修正しました。
- 一部のTSOログでエラー原因#7496 @ キャビンフィーバーBが出力されない問題を修正しました
BURSTABLE有効になっているときにデフォルトのリソース グループに不要なトークンが蓄積される問題を修正#7206 @ キャビンフィーバーBevict-leader-schedulerインターフェースが#7672 @ キャビンフィーバーBで呼び出されたときに出力がない問題を修正しましたwatch etcd正しくオフになっていない場合に発生するメモリリークの問題を修正#7807 @ rleungxMergeLabels関数が#7535 @ lhy1024で呼び出されたときにデータ競合が発生する問題を修正しました- TLS が有効な場合に TiDB ダッシュボードが TiKV プロファイルを取得できない問題を修正#7561 @ コナー1996
- レプリカ数が要件#7584 @ バッファフライを満たしていない場合に孤立ピアが削除される問題を修正しました
- データレプリケーション自動同期(DR自動同期)モードを採用しているクラスタで
available_stores誤って計算される問題を修正#7221 @ ディスク - 配置ルールの設定が複雑な場合、データレプリケーション自動同期(DR自動同期)モードを採用しているクラスタで
canSyncとhasMajority誤って計算される可能性がある問題を修正しました#7201 @ ディスク - データレプリケーション自動同期(DR自動同期)モード#7218 @ ディスクを採用しているクラスターで、セカンダリAZがダウンしているときにプライマリAZがTiKVノードを追加できない問題を修正しました。
- リソース グループをバッチでクエリすると PD がpanic#7206 @ ノルーシュになる可能性がある問題を修正しました
pd-ctlを使用してリーダーのないリージョンを照会すると、PD が#7630 @ rleungxでpanicになる可能性がある問題を修正しました。- リーダースイッチ#7728 @ キャビンフィーバーB後にPD監視項目
learner-peer-count古い値を同期しない問題を修正 - PDが
systemd#7628 @ バッファフライで起動したときにリソース制限を読み取れない問題を修正
TiFlash
- レプリカ移行#8323 @ ジェイソン・ファン中に PD とのネットワーク接続が不安定になり、 TiFlash がpanic可能性がある問題を修正しました
ENUM値が 0 #8311 @ ソロツグの場合にTiFlash がENUM誤って処理する問題を修正しました- 定数文字列パラメータ#8604 @ ウィンドトーカーを含む
GREATESTまたはLEAST関数で発生する可能性のある、ランダムに無効なメモリアクセスの問題を修正しました。 lowerUTF8とupperUTF8関数で、大文字と小文字が異なるバイト#8484 @ ゲンリキを占めることができない問題を修正しました。- 短いクエリが正常に実行され、過剰な情報ログ#8592 @ ウィンドトーカーが出力される問題を修正しました。
- クエリ#8564 @ ジンヘリンの低速化によりメモリ使用量が大幅に増加する問題を修正
ALTER TABLE ... MODIFY COLUMN ... NOT NULL実行した後にTiFlash がパニックを起こし、null 許容列が#8419 @ ジェイソン・ファンに非 null 許容に変更される問題を修正しました。- クエリを終了した後、 TiFlash上の多数のタスクが同時にキャンセルされると、同時データの競合によりTiFlash がクラッシュする問題を修正#7432 @ シーライズ
- リモート読み取り#8685 @ zanmato1984中にTiFlashがクラッシュする可能性がある問題を修正
- 結合に非等価条件#8791 @ ウィンドトーカーが含まれている場合に、 TiFlash Anti Semi Join が誤った結果を返す可能性がある問題を修正しました。
ツール
バックアップと復元 (BR)
- ログバックアップタスクを停止すると TiDB がクラッシュする問題を修正#50839 @ ユジュンセン
- TiKVノード#50566 @ リーヴルスにリーダーがいないためにデータの復元が遅くなる問題を修正しました
- 同じノード#50445 @ 3ポイントシュートで TiKV IP アドレスを変更した後にログ バックアップが停止する問題を修正しました
- S3 #49942 @ リーヴルスからファイル コンテンツを読み取っているときにエラーが発生した場合にBR が再試行できない問題を修正しました
- 古いバージョン#49466 @ 3ポイントシュートのバックアップからデータを復元するときに
Unsupported collationエラーが報告される問題を修正しました
TiCDC
- アップストリームテーブル#10522 @ スドジで
TRUNCATE PARTITIONを実行した後に、changefeed がエラーを報告する問題を修正しました。 - 極端なケースでチェンジフィード
resolved tsが進まない問題を修正#10157 @ スドジ - 同期ポイントテーブルが誤って複製される可能性がある問題を修正#10576 @ アズドンメン
ignore-eventでadd 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エースショーハンド
- アップストリームテーブル#10522 @ スドジで
TiDB データ移行 (DM)
TiDB Lightning