TiDB 3.0.8 リリースノート
発売日:2019年12月31日
TiDB バージョン: 3.0.8
TiDB Ansible バージョン: 3.0.8
TiDB
- SQLオプティマイザー
- SQL実行エンジン
INSERT/REPLACE/UPDATE ... SET ... = DEFAULT構文でエラーが報告される可能性があり、DEFAULTの使用と仮想生成列を組み合わせるとエラーが報告される可能性がある問題を修正しました#13682INSERT文が文字列を浮動小数点数に変換するときにエラーを報告する可能性がある問題を修正しました#14011HashAggExecutor の同時実行値が正しく初期化されていないために集計操作の効率が低下することがある問題を修正しました#13811group by item節が括弧内にある場合に実行時にエラーが報告される問題を修正#13658- TiDBが
group by item#14014を誤って計算するため、OUTER JOINの実行でエラーが報告される可能性がある問題を修正しました。 - 範囲を超えるデータが範囲パーティションテーブルに書き込まれたときにエラーメッセージが不正確になる問題を修正#14107
- MySQL 8では
PadCharToFullLengthすぐに破棄されることを考慮して、特殊なケースで予期しないクエリ結果を回避するためにPR #10124元に戻し、PadCharToFullLength効果をキャンセルします#14157 ExplainExec#14226の保証されていないclose()呼び出しによって発生するEXPLAIN ANALYZE文の実行時のゴルーチン リークの問題を修正しました。
- DDL
change columnのエラーメッセージ出力modify column最適化して理解しやすくする#13796- パーティションテーブル#13929リージョン分割をサポートするために
SPLIT PARTITION TABLE構文を追加します - インデックス作成時にインデックスの長さが正しくチェックされないため、インデックスの長さが3072バイトを超えてもエラーが報告されない問題を修正しました#13779
- パーティションテーブル#14132にインデックスを追加するのに時間がかかりすぎるため、
GC life time is shorter than transaction durationエラーメッセージが報告される可能性がある問題を修正しました。 DROP COLUMN/MODIFY COLUMN/CHANGE COLUMN実行時に外部キーがチェックされないため、SELECT * FROM information_schema.KEY_COLUMN_USAGE実行時にpanicする問題を修正しました#14105
- サーバ
- ステートメントサマリーの改善:
- SQL文をより詳細に分析できるように#14168多数のSQLメトリックフィールドを追加します#14151
stmt-summary.refresh-intervalパラメータを追加して、古いデータをevents_statements_summary_by_digestテーブルからevents_statements_summary_by_digest_historyテーブルに移動するかどうかを制御します (デフォルトの間隔: 30 分) #14161events_statements_summary_by_digest#14166の古いデータを保存するには、events_statements_summary_by_digest_historyテーブルを追加します。
- RBAC関連の内部SQL文実行時にbinlogが誤って出力される問題を修正#13890
- TiDBサーバーバージョン#13906変更する機能を制御するための
server-version構成項目を追加します - HTTPインターフェースを使用してTiDBbinlog#13892書き込みを回復する機能を追加
- MySQLの動作#13932との一貫性を保つために、
GRANT roles TO userに必要な権限をGrantPrivからROLE_ADMINまたはSUPERに更新します。 - MySQLの動作#13784の互換性を保つために、TiDBの動作を、現在のデータベースを使用する動作から、
GRANT文でデータベース名が指定されていない場合にNo database selectedエラーを報告する動作に変更しました。 - MySQLの動作#13306との一貫性を保つために、
REVOKE文の実行権限をSuperPrivからREVOKE変更し、対応するスキーマに対する権限を持つユーザーのみ実行できるようにします。 GRANT ALL構文にWITH GRANT OPTION#13943が含まれていない場合に、対象ユーザーにGrantPrivが誤って付与される問題を修正しました。LoadDataInfoaddRecord#13980呼び出しに失敗した場合、エラー メッセージにLOAD DATAステートメントの誤った動作の原因が含まれていない問題を修正しました。- クエリ内の複数のSQL文が同じ
StartTime#13898を共有しているため、間違ったスロークエリ情報が出力される問題を修正しました。 batchClient大規模なトランザクションを処理するときにメモリが発生する可能性がある問題を修正#14032system_time_zoneが常にCSTとして表示され、TiDB のsystem_time_zonemysql.tidbテーブル#14086のsystemTZから取得される問題を修正しました。GRANT ALL構文がユーザーにすべての権限を付与しない問題を修正#14092Priv_create_user権限がCREATE ROLEとDROP ROLE#14088では無効になる問題を修正- エラーコード
ErrInvalidFieldSizeを1105(Unknow Error)から3013に変更します#13737 - TiDBサーバーを停止するコマンド
SHUTDOWNを追加し、権限ShutdownPrivを追加します#14104 - TiDBがステートメント#14130実行に失敗したときに一部のロールが予期せず削除されるのを回避するために、ステートメント
DROP ROLEのアトミック性の問題を修正しました。 - TiDB バージョンが 3.0 にアップグレードされたときに、
SHOW VARIABLE結果のtidb_enable_window_function誤って1出力される問題を修正し、間違った結果を0#14131に置き換えます。 - TiKVノードがオフラインのときに
gcworker継続的に再試行するため、goroutineがリークする可能性がある問題を修正しました#14106 - 問題追跡の使いやすさを向上させるために、スロークエリログにbinlogを
Prewrite回記録します#14138 tidb_enable_table_partition変数をGLOBAL SCOPE#14091サポートする- 新しい権限が追加されたときに、新しく追加された権限が対応するユーザーに正しく付与されないため、ユーザー権限が欠落したり、誤って追加されたりする可能性がある問題を修正しました#14178
- TiKVサーバーが切断されたときに
rpcClient閉じないためにCheckStreamTimeoutLoopゴルーチンがリークする可能性がある問題を修正しました#14227 - 証明書ベースの認証をサポートする ( ユーザードキュメント ) #13955
- ステートメントサマリーの改善:
- トランザクション
- 新しいクラスターが作成されたときに、
tidb_txn_mode変数のデフォルト値を""から"pessimistic"に更新します#14171 - トランザクションが再試行されたときに単一のステートメントのロック待機時間がリセットされないため、悲観的トランザクションのロック待機時間が長すぎる問題を修正しました#13990
- 悲観的トランザクションモード#14050で未変更データがロック解除されるため、誤ったデータが読み取られる可能性がある問題を修正しました。
- mocktikv #14175で事前書き込みを実行するときにトランザクション タイプが区別されないため、挿入値の制限チェックが繰り返される問題を修正しました。
session.TxnStateがInvalid#13988ときにトランザクションが正しく処理されないためpanicを修正- mocktikvの
ErrConfclit構造にConflictCommitTS#14080が含まれていない問題を修正しました - TiDBがロック#14083を解決した後にロックタイムアウトを正しくチェックしないため、トランザクションがブロックされる問題を修正しました。
- 新しいクラスターが作成されたときに、
- モニター
LockKeys#14194にpessimistic_lock_keys_duration監視項目を追加
TiKV
- コプロセッサー
- Raftstore
- エンジン
- 極端な状況でRocksDBイテレータエラーが正しく処理されないため、空のデータが返される可能性がある問題を修正しました#6326
- トランザクション
- デフォルト値
tikv_allocをtikv_alloc/defaultからjemallocに更新します#6206
PD
- クライアント
/api/v1/regionsAPI #1986のパフォーマンスを最適化tombstone状態でストアを削除するとpanicが発生する可能性がある問題を修正#2038- ディスク#2011からリージョン情報をロードするときに重複したリージョンが誤って削除される問題#2040修正しました
- etcdをv3.4.0からv3.4.3にアップグレードします(アップグレード後はpd-recoverを使用してetcdをデグレードすることしかできないことに注意してください) #2058
ツール
- TiDBBinlog
- PumpがコミットされたDDLbinlog#853を受信しないため、binlogが無視される問題を修正しました。