TiDB 7.5.5 リリースノート
発売日:2024年12月31日
TiDB バージョン: 7.5.5
互換性の変更
- インデックスを追加する際の取り込みフェーズの最大速度を制限する新しいシステム変数
tidb_ddl_reorg_max_write_speedを追加します。 #57156 @ CbcWestwolf - TiKV構成項目
raft-client-queue-sizeのデフォルト値を8192から16384に変更します #17101 @ Connor1996
改善点
TiDB
- 統計情報がすべて TopN で構成され、対応するテーブル統計の変更された行数が 0 以外である場合に、TopN にヒットしない等価条件の推定結果を 0 から 1 に調整します#47400 @ terry1purcell
TiKV
- Raftと RocksDB が異なるディスクにデプロイされている場合、RocksDB が配置されているディスクでは低速ディスク検出が機能しない問題を修正#17884 @ LykxSassinator
- ピアのスローログを追加し、メッセージを保存します。 #16600 @ Connor1996
- ログの適用を待つために TiKV を再起動するときに発生する不安定なアクセス遅延を最適化し、TiKV の安定性を向上しました。 #15874 @ LykxSassinator
TiFlash
- TLS を有効にした後に証明書を更新することでTiFlash がpanic可能性がある問題を軽減します#8535 @ windtalker
- クラスター化インデックスを持つテーブルで、バックグラウンドでの古いデータのガベージコレクションの速度が向上しました。 #9529 @ JaySon-Huang
- 分散ストレージおよびコンピューティングアーキテクチャ内のTiFlashコンピューティングノードの再試行戦略を最適化して、Amazon S3 からファイルをダウンロードする際の例外を処理します。 #9695 @ JinheLin
ツール
バグ修正
TiDB
- DDL 所有者ノードがに切り替えられた後、TiDB が以前の進行状況から再編成 DDL タスクを再開できない問題を修正しました。 #56506 @ tangenta
- 非厳密モードで無効な
NULL値が挿入される問題を修正 (sql_mode = '') #56381 @ joechenrh - GrafanaのStats Healthy Distributionパネルのデータが正しくない可能性がある問題を修正しました#57176 @ hawkingrei
- 共通テーブル式 (CTE) に複数のデータ コンシューマーがあり、1 つのコンシューマーがデータを読み取らずに終了した場合に発生する可能性のある無効なメモリアクセスの問題を修正しました#55881 @ windtalker
- v6.5からv7.5以降にアップグレードされたクラスターで、既存のTTLタスクが予期せず頻繁に実行される問題を修正#56539 @ lcwangchao
tidb_ttl_job_enable変数が無効になった後、TTL タスクがキャンセルされない問題を修正#57404 @ YangKeao- 情報スキーマキャッシュミスにより、古い読み取りのクエリレイテンシーが増加する問題を修正しました。 #53428 @ crazycs520
- stale read が読み取り操作のタイムスタンプを厳密に検証しない問題を修正しました。その結果、TSO と実際の物理時間の間にオフセットが存在する場合に、トランザクションの一貫性にわずかながら影響する可能性が生じます。 #56809 @ MyonKeminta
IMPORT INTOステートメントを使用してデータをインポートした後、AUTO_INCREMENTフィールドが正しく設定されない問題を修正しました。 #56476 @ D3Hunter- 2人のDDL所有者が同時に存在する可能性がある問題を修正#54689 @ joccau
- ストレージエンジンとしてTiKVが選択されていない場合にTTLが失敗する可能性がある問題を修正 #56402 @ YangKeao
ADD INDEXを実行するときに TiDB がインデックスの長さ制限をチェックしない問題を修正しました #56930 @ fzzf678- TTLタスクをキャンセルした際に、対応するSQLが強制終了されない問題を修正#56511 @ lcwangchao
- エイリアスを持つマルチテーブル
DELETEステートメントに対して実行プラン バインディングを作成できない問題を修正しました。 #56726 @ hawkingrei ANALYZE使用してテーブルの統計情報を収集するときに、テーブルに仮想生成列の式インデックスが含まれていると、実行時にエラーが報告される問題を修正しました。 #57079 @ hawkingrei- 配置ルールを含むテーブル構造をインポートするときに Plan Replayer がエラーを報告する可能性がある問題を修正しました。 #54961 @ hawkingrei
- CTE でデータベース名を解析するときに間違ったデータベース名が返される問題を修正しました #54582 @ hawkingrei
INSERT ... ON DUPLICATE KEY文がmysql_insert_idと互換性がない問題を修正 #55965 @ tiancaiamao- 特定の状況下でプランキャッシュを使用する際に、メタデータロックの不適切な使用によって異常なデータが書き込まれる可能性がある問題を修正しました#53634 @ zimulala
- グローバルソートを使用してインデックスを追加するときにパフォーマンスが不安定になる問題を修正しました #54147 @ tangenta
- 外部キーを含むテーブル構造をインポートするときに Plan Replayer がエラーを報告する可能性がある問題を修正しました。 #56456 @ hawkingrei
RANGE COLUMNSパーティション関数とutf8mb4_0900_ai_ci照合順序を同時に使用すると、クエリ結果が正しくなくなる可能性がある問題を修正しました。 #57261 @ Defined2014NATURAL JOINまたはUSING句の後にサブクエリを使用するとエラーが発生する可能性がある問題を修正しました #53766 @ dash12653- 書き込み競合が発生したときにTTLタスクをキャンセルできない問題を修正#56422 @ YangKeao
- CTE に
ORDER BY、LIMIT、またはSELECT DISTINCT句が含まれており、別の CTE の再帰部分によって参照されている場合、誤ってインライン化され、実行エラーが発生する可能性がある問題を修正しました。 #56603 @ elsa0520 UPDATE文がENUM型の値を誤って更新する問題を修正しました #56832 @ xheboxRECOVER TABLE BY JOB JOB_ID;実行すると TiDB がpanicを起こす可能性がある問題を修正#55113 @ crazycs520- クエリに利用可能なインデックスマージ実行プランがある場合に
read_from_storageヒントが有効にならない可能性がある問題を修正しました #56217 @ AilinKid - 異常終了時に
INDEX_HASH_JOINアップする可能性がある問題を修正#54055 @ wshwsh12 - 分散実行フレームワーク (DXF) に関連するシステム テーブルをクエリすると、アップグレードが失敗する可能性がある問題を修正しました#49263 @ D3Hunter
- DDL内部トランザクションエラー
GC life time is shorter than transaction durationによりインデックス追加が失敗する問題を修正#57043 @ tangenta EXCHANGE PARTITION実行して無効な行に遭遇すると、InfoSchema が完全にロードされ、エラーfailed to load schema diffが報告される問題を修正しました。 #56685 @ D3Huntertidb_ddl_enable_fast_reorgとnew_collations_enabled_on_first_bootstrap有効になっているときに照合順序が正しく処理されず、データ インデックスが不一致になる問題を修正しました。 #58036 @ djshow832- プランキャッシュがインデックスを追加するときに間違ったスキーマを使用するため、データインデックスが不整合になる問題を修正しました。 #56733 @ wjhuang2016
- アップグレード中に
ALTER TABLE TIFLASH REPLICA実行するとTiDBノードがクラッシュする問題を修正#57863 @ tangenta - クエリ
INFORMATION_SCHEMA.columnsのパフォーマンスが@ lance6716で低下する問題を修正 #58184 - TiFlashシステムテーブルを照会するためのデフォルトのタイムアウトが短すぎる問題を修正#57816 @ JaySon-Huang
default_collation_for_utf8mb4変数の値がSET NAMESステートメントで機能しない問題を修正しました #56439 @ Defined2014mysql.tidb_timerテーブルでタイマーを手動で削除すると、TTL 内部コルーチンがpanicになる可能性がある問題を修正しました。 #57112 @ lcwangchaoALTER TABLEステートメントを使用して通常のテーブルをパーティションテーブルに変換するときに、チェックが不十分なために誤ったデータが生成される可能性がある問題を修正しました。 #55721 @ mjonsstidb_gogc_tuner_max_valueとtidb_gogc_tuner_min_valueを設定するときに最大値がnullの場合、誤った警告メッセージが表示される問題を修正しました#57889 @ hawkingrei- TiDBの内部コルーチンで発生する可能性のあるデータ競合問題を修正しました #56053 @ fishiu #57798 @ tiancaiamao
- 潜在的なセキュリティリスクを防ぐためのアップデート
golang-jwtとjwt#57135 @ hawkingrei ALTER TABLE文を使用して、クラスター化インデックスを持つテーブルをパーティションテーブルに変換するときに、同時書き込みによってデータが重複する可能性がある問題を修正しました。 #57510 @ mjonss
TiKV
- リージョンをマージすると稀に TiKV がpanicを起こす可能性がある問題を修正#17840 @ glorv
- Raftと RocksDB が異なるディスクにデプロイされている場合、RocksDB が配置されているディスクでは低速ディスク検出が機能しない問題を修正#17884 @ LykxSassinator
log-fileパラメータが指定されていない場合、jprof の出力が正しくキャプチャおよび処理されない問題を修正#17607 @ Hexilee- 休止状態のリージョンが起動しているときにレイテンシーが増加する可能性がある問題を修正#17101 @ Connor1996
RADIANS()またはDEGREES()関数を含むクエリを実行するとTiKVがpanic可能性がある問題を修正しました#17852 @ gengliqi- 読み取りスレッドがRaft EngineのMemTable内の古いインデックスにアクセスしたときに発生するpanic問題を修正しました。 #17383 @ LykxSassinator
- 多数のトランザクションが同じキーのロック解除待ち行列に入っていて、キーが頻繁に更新される場合、デッドロック検出への過度の圧力によって TiKV OOM 問題が発生する可能性がある問題を修正しました #17394 @ MyonKeminta
- すべての休止状態のリージョンが起動すると書き込みジッターが発生する可能性がある問題を修正しました #17101 @ hhwyt
- TiKVがブラジルとエジプトのタイムゾーンを誤って変換する問題を修正#16220 @ overvenus
- オンラインアンセーフリカバリがマージ中止を処理できない問題を修正 #15580 @ v01dstar
- エラー発生時にCPUプロファイリングフラグが正しくリセットされない問題を修正#17234 @ Connor1996
raft-entry-max-sizeと高く設定されすぎると、大規模なバッチ書き込みによってパフォーマンスジッターが発生する問題を修正しました。 #17701 @ SpadeA-Tang- インポートモジュールの競合検出インターフェースにおける不適切なエラー処理により、TiKV がpanicを起こす可能性がある問題を修正しました#17830 @ joccau
PD
evict-leader-schedulerまたはgrant-leader-scheduler作成時にエラーが発生しても、エラーメッセージが pd-ctl に返されない問題を修正しました。 #8759 @ okJiang- etcdリーダー遷移中にPDがリーダーを素早く再選出できない問題を修正 #8823 @ rleungx
- ラベル統計のメモリリーク問題を修正 #8700 @ lhy1024
- 同じストアID で繰り返し作成された場合に
evict-leader-scheduler正常に動作しない問題を修正 #8756 @ okJiang - リソース グループ クライアントでスロットが完全に削除されず、割り当てられたトークンの数が指定された値より少なくなる問題を修正しました。 #7346 @ guo-shaoge
evict-leader-schedulerで間違ったパラメータを使用すると、PD がエラーを正しく報告せず、一部のスケジューラが利用できなくなる問題を修正しました#8619 @ rleungx- ホットスポット キャッシュのメモリリーク問題を修正 #8698 @ lhy1024
- 乱数ジェネレータの頻繁な作成によって発生するパフォーマンスジッターの問題を修正しました #8674 @ rleungx
TiFlash
- TiFlash が同時 DDL 実行中に競合に遭遇した場合のTiFlash panic問題を修正#8578 @ JaySon-Huang
LPAD()とRPAD()関数が、場合によっては誤った結果を返す問題を修正しました#9465 @ guo-shaoge- 2番目のパラメータが負のの場合に
SUBSTRING()関数が誤った結果を返す問題を修正しました #9604 @ guo-shaoge - テーブルに無効な文字を含むデフォルト値を持つビット型の列が含まれている場合、 TiFlash がテーブル スキーマを解析できない問題を修正しました。 #9461 @ Lloyd-Pottiger
- 分散ストレージおよびコンピューティングアーキテクチャで新しい列をクエリすると誤った結果が返される可能性がある問題を修正しました #9665 @ zimulala
ツール
Backup & Restore (BR)
- データの復元に失敗した後、チェックポイントから再開するとエラー
the target cluster is not freshが発生する問題を修正しました#50232 @ Leavrth - ログバックアップが残留ロックをすぐに解決できず、チェックポイントがに進まない問題を修正しました。 #57134 @ 3pointer
- ログに暗号化された情報が出力される問題を修正 #57585 @ kennytm
TestStoreRemovedテストケースが不安定になる問題を修正#52791 @ YuJuncenk8s.io/apiライブラリバージョンにアップグレードして潜在的なセキュリティ脆弱性を修正します #57790 @ BornChanger- クラスター内に多数のテーブルがあるが、実際のデータサイズが小さい場合に PITR タスクが
Information schema is out of dateエラーを返す可能性がある問題を修正しました#57743 @ Tristan1900
- データの復元に失敗した後、チェックポイントから再開するとエラー
TiCDC
- 有効なインデックスのないテーブルで
TRUNCATE TABLEDDL を複製するときに TiCDC がエラーを報告する可能性がある問題を修正しました。 #11765 @ asddongmen - シンプルプロトコルメッセージでパーティションテーブルの
tableID正しく設定されていない問題を修正しました。 #11846 @ 3AceShowHand - やり直しモジュールがエラーを正しく報告できない問題を修正しました #11744 @ CharlesCheung96
ignore-eventでadd table partitionイベントをフィルタリングするように設定した後、TiCDC が関連パーティションの他のタイプの DML 変更をダウンストリームに複製しない問題を修正しました。 #10524 @ CharlesCheung96- TiDB DDL 所有者の変更中に DDL タスクのスキーマ バージョンが非増分になったときに、TiCDC が誤って DDL タスクを破棄する問題を修正#11714 @ wlwilliamx
- 有効なインデックスのないテーブルで
TiDB Data Migration (DM)
TiDB Lightning
- TiDB LightningがTiKV から送信されたサイズ超過のメッセージを受信できない問題を修正しました #56114 @ fishiu
- 物理インポートモードを使用してデータをインポートした後に
AUTO_INCREMENT値が高すぎる値に設定される問題を修正しました #56814 @ D3Hunter - メタデータ更新中に
Lock wait timeoutエラーが発生した場合にTiDB Lightning が自動的に再試行しない問題を修正しました#53042 @ guoshouyan - 高同時実行シナリオでクラウドストレージからデータをインポートするときにパフォーマンスが低下する問題を修正#57413 @ xuanyu66
- 多数の Parquet ファイルをインポートする際の準備フェーズでTiDB Lightning が長時間停止する可能性がある問題を修正しました #56104 @ zeminzhou
- TiDB Lightning を使用してデータをインポートするときにエラーレポートの出力が切り捨てられる問題を修正しました #58085 @ lance6716
Dumpling
- Google Cloud Storage (GCS) から 503 エラーを受信したときにDumpling が適切に再試行できない問題を修正しました #56127 @ OliverS929