TiDB 4.0.3 リリースノート
リリース日:2020年7月24日
TiDB バージョン: 4.0.3
新機能
TiDB Dashboard
TiFlash
- TiFlashプロキシでファイル暗号化を実装する
ツール
Backup & Restore (BR)
- zstd、lz4、snappy を使用したバックアップファイルの圧縮をサポート #404
TiCDC
Dumpling
改善点
TiDB
- SQLクエリをログに記録するときに機密情報を秘匿化するかどうかを制御する
tidb_log_desensitizationグローバル変数を追加します#18581 - デフォルトで
tidb_allow_batch_copを有効にする#18552 - クエリのキャンセルを高速化#18505
tidb_decode_planの結果にヘッダーを追加 #18501- 構成チェッカーを以前のバージョンの設定ファイルと互換性のあるものにする #18046
- 実行情報の収集をデフォルトで有効にする#18518
- システムテーブル
tiflash_tablesとtiflash_segmentsを追加する#18536 AUTO RANDOMを実験的機能から外し、一般提供(GA)を開始しました。改善点と互換性の変更点は以下の通りです。- 設定ファイル内の
experimental.allow-auto-randomは非推奨です。この項目の設定に関わらず、列のAUTO RANDOM機能はいつでも定義できます#18613 #18623 AUTO RANDOM列への明示的な書き込みを制御するために、セッション変数tidb_allow_auto_random_explicit_insertを追加します。デフォルト値はfalseです。これは、列への明示的な書き込みによって発生する予期しないAUTO_RANDOM_BASEの更新を回避するためです#18508BIGINT列とUNSIGNED BIGINT列にのみAUTO_RANDOMを定義できるようにし、シャードビットの最大数を15に制限することで、割り当て可能なスペースが急速に消費されるのを回避します#18538BIGINT列にAUTO_RANDOM属性を定義し、主キーに負の値を挿入するときにAUTO_RANDOM_BASEの更新をトリガーしないようにします。 #17987UNSIGNED BIGINT列にAUTO_RANDOM属性を定義するときに、IDの割り当てに整数の最上位ビットを使用します。これにより、割り当て可能なスペースが増えます。 #18404SHOW CREATE TABLEの結果のAUTO_RANDOM属性の更新をサポートします #18316
- 設定ファイル内の
- SQLクエリをログに記録するときに機密情報を秘匿化するかどうかを制御する
TiKV
PD
- JSON形式のログサポート #2565
TiDB Dashboard
TiFlash
- GrafanaのDDL Jobsパネルの単位を
operations per minuteに変更します - TiFlash-Proxyに関するより多くのメトリクスを表示するためにGrafanaに新しいダッシュボードを追加します
- TiFlashプロキシのIOPSを削減する
- GrafanaのDDL Jobsパネルの単位を
ツール
バグ修正
TiDB
- 実行中にエラーが発生した場合、
IndexHashJoinで空集合の代わりにエラーを返します#18586 - gRPC トランスポートリーダーが壊れているときに繰り返し発生するpanicを修正#18562
- Green GC がオフライン ストアのロックをスキャンしないため、データの不完全性が発生する可能性がある問題を修正しました#18550
- TiFlashエンジンを使用して非読み取り専用ステートメントの処理を禁止する #18534
- クエリ接続がパニックになったときに実際のエラーメッセージを返す#18500
ADMIN REPAIR TABLE文の実行で TiDB ノードのテーブルメタデータの再ロードに失敗する問題を修正しました。 #18323- あるトランザクションで書き込まれ、削除された主キーのロックが別のトランザクションによって解決されたために発生したデータの不整合の問題を修正しました#18291
- スピルディスクをうまく機能させる#18288
- 生成列を含むテーブルで
REPLACE INTO文が機能するときに報告されるエラーを修正します #17907 IndexHashJoinとIndexMergeJoinワーカーがpanicしたときにOOMエラーを返す#18527Index Joinで使用されるインデックスに整数の主キーが含まれている場合、特別なケースでIndex Join実行によって誤った結果が返される可能性があるバグを修正しました。 #18565- クラスターで新しい照合順序が有効になっている場合、トランザクションで新しい照合順序を持つ列に更新されたデータが一意インデックスを通じて読み取れない問題を修正しました。 #18703
- 実行中にエラーが発生した場合、
TiKV
PD
- サーバーがクラッシュした場合にTSOストリームの作成がしばらくブロックされる可能性がある問題を修正しました#2648
getSchedulersがデータ競合を引き起こす可能性がある問題を修正#2638- スケジューラを削除するとデッドロックが発生する可能性がある問題を修正#2637
balance-leader-schedulerが有効になっているときに配置ルールが考慮されないバグを修正#2636- サービス
safepointが正しく設定されない場合があり、 BRとDumplingが失敗する可能性がある問題を修正#2635 hot region schedulerの対象ストアが誤って選択されている問題を修正#2627- PDリーダーが切り替えられたときにTSOリクエストに時間がかかりすぎる可能性がある問題を修正#2622
- リーダー変更後の古いスケジューラの問題を修正#2608
- 配置ルールが有効になっているときに、リージョンのレプリカを最適な場所に調整できないことがある問題を修正しました#2605
- デプロイディレクトリの変更に応じてストアのデプロイパスが更新されない問題を修正 #2600
store limitが0になるのを防ぐ#2588
TiDB Dashboard
TiFlash
- 主キー列の名前を変更した後にTiFlashがクラッシュする問題を修正
- 同時実行
Learner ReadとRemove Regionがデッドロックを引き起こす可能性がある問題を修正
ツール