TiDB 2.1.18 リリースノート
発売日:2019年11月4日
TiDB バージョン: 2.1.18
TiDB Ansible バージョン: 2.1.18
TiDB
- SQLオプティマイザー
- フィードバック#12172で分割すると無効なクエリ範囲が表示される可能性がある問題を修正しました
- ポイント取得プラン#12341で権限チェックが正しく行われない問題を修正
- Limit演算子を
IndexLookUpReader実行ロジック#12380にプッシュすることで、select ... limit ... offset …文の実行パフォーマンスを最適化します。 ORDER BYGROUP BY#12514LIMIT OFFSET使用をサポート- パーティションテーブル
IndexJoinが誤った結果を返す問題を修正#12713 - 日付文字列とフォーマット文字列が一致しない場合に、TiDBの
str_to_date関数がMySQLとは異なる結果を返す問題を修正しました#12757 - クエリ条件に
cast関数が含まれている場合に外部結合が誤って内部結合に変換される問題を修正しました#12791 AntiSemiJoin#12800の結合条件で渡される誤った式を修正
- SQLエンジン
- 時間の丸めが間違っている問題を修正(例えば、
2019-09-11 11:17:47.9999996662019-09-11 11:17:48に丸められるべき) #12259 - 監視レコード#12329に、ステートメント
PREPAREのsql_typeによる期間が表示されない問題を修正しました。 from_unixtime関数が null #12572を処理するときに発生panic問題を修正YEAR型として無効な値が挿入されると、結果が0000#12744ではなくNULLなるという互換性の問題を修正しました。AutoIncrement列が暗黙的に割り当てられた場合の動作を改善し、MySQLの自動インクリメントロックのデフォルトモード( 「連続」ロックモード )との一貫性を保ちます。1行のInsert文で複数のAutoIncrementIDを暗黙的に割り当てる場合、TiDBは割り当てられた値の連続性を保証します。この改善により、JDBCgetGeneratedKeys()メソッドはどのようなシナリオでも正しい結果を得ることができます#12619HashAggApply#12769の子ノードとして機能するときにクエリがハングする問題を修正しました- 型変換#12813に関して、
ANDとOR論理式が誤った結果を返す問題を修正しました。
- 時間の丸めが間違っている問題を修正(例えば、
- サーバ
SLEEP()関数がKILL TIDB QUERYステートメント#12159に対して無効であるという問題を修正AUTO_INCREMENTMAX int64とMAX uint64誤って割り当てた場合にエラーが報告されない問題を修正しました#12210- ログレベルが
ERROR#12373ときにスロークエリログが記録されない問題を修正しました - TiDBがスキーマの変更とそれに対応する変更されたテーブル情報をキャッシュする回数を100から1024に調整し、
tidb_max_delta_schema_countシステム変数#12515を使用して変更をサポートします。 - SQL統計をより正確にするために、クエリの開始時間を「実行開始」から「コンパイル開始」に変更します#12638
- TiDBログ#12568に
set session autocommitのレコードを追加する - プラン実行中にリセットされないようにSQLクエリの開始時刻を
SessionVarsに記録する#12676 ORDER BYGROUP BY?#12514ホルダーをサポートLIMIT OFFSET- 最後のステートメントが
COMMIT#12724ときに前のステートメントを出力するために、スロークエリログにPrev_stmtフィールドを追加します。 - 明示的にコミットされたトランザクション#12747で
COMMIT失敗した場合、COMMITの前の最後のステートメントをログに記録します。 - TiDBサーバーがSQL文を実行する際に、前の文の保存方法を最適化してパフォーマンスを向上します#12751
skip-grant-table=true構成#12816のFLUSH PRIVILEGESステートメントによって引き起こされるpanic問題を修正- 短時間に多数の書き込み要求があった場合にパフォーマンスのボトルネックを回避するために、AutoID を適用するデフォルトの最小ステップを
1000から30000に増やします#12891 - TiDBがパニックになったときに失敗した
Prepared文がエラーログに出力されない問題を修正しました#12954 - スロークエリログの
COM_STMT_FETCH回限りのレコードがMySQL #12953ものと矛盾する問題を修正しました。 - 書き込み競合のエラーメッセージにエラーコードを追加して、原因を素早く特定します#12878
- DDL
- デフォルトでは、列の
AUTO INCREMENTの属性の削除は許可されません。この属性を削除する必要がある場合は、tidb_allow_remove_auto_incの変数の値を変更してください。詳細はシステム変数参照してください#12146 Create Table文#12469で一意のインデックスを作成するときに複数のuniqueをサポートするCREATE TABLEステートメントの外部キー制約にスキーマがない場合、No Database selectedエラー#12678を返す代わりに、作成されたテーブルのスキーマを使用するという互換性の問題を修正しました。ADMIN CANCEL DDL JOBS#12681実行時にinvalid list indexエラーが報告される問題を修正
- デフォルトでは、列の
- モニター
PD
- pd-ctl #1772の
--helpコマンド出力を改善する
ツール
- TiDBBinlog