TiDB 2.1.18 リリースノート
発売日: 2019年11月4日
TiDB バージョン: 2.1.18
TiDB Ansible バージョン: 2.1.18
ティビ
- SQL オプティマイザー
- フィードバック#12172で分割すると無効なクエリ範囲が表示される可能性がある問題を修正しました
- ポイント取得プラン#12341で権限チェックが正しく行われない問題を修正
- Limit演算子を
IndexLookUpReader
実行ロジック#12380に押し下げることで、select ... limit ... offset …
文の実行パフォーマンスを最適化します。 ORDER BY
LIMIT OFFSET
#12514GROUP BY
使用をサポート- パーティションテーブル上の
IndexJoin
誤った結果を返す問題を修正#12713 - 日付文字列とフォーマット文字列が一致しない場合、TiDBの
str_to_date
関数がMySQLとは異なる結果を返す問題を修正しました#12757 - クエリ条件に
cast
関数が含まれている場合に外部結合が誤って内部結合に変換される問題を修正しました#12791 AntiSemiJoin
#12800の結合条件で渡される誤った式を修正
- SQL エンジン
- 時間の丸め間違いを修正(例えば、
2019-09-11 11:17:47.999999666
2019-09-11 11:17:48
に丸められるべき) #12259 PREPARE
ステートメントのsql_type
による期間が監視レコード#12329に表示されない問題を修正しました。from_unixtime
関数が null #12572処理するときに発生するpanic問題を修正YEAR
型として無効な値が挿入されると、結果が0000
#12744ではなくNULL
なるという互換性の問題を修正しました。AutoIncrement
列が暗黙的に割り当てられたときの動作を改善し、MySQL の自動増分ロックのデフォルトモードとの一貫性を保ちます ( 「連続」ロックモード ): 1 行のInsert
文で複数のAutoIncrement
ID を暗黙的に割り当てる場合、TiDB は割り当てられた値の連続性を保証します。この改善により、JDBCgetGeneratedKeys()
メソッドはどのようなシナリオでも正しい結果を得ることができます#12619HashAgg
Apply
#12769の子ノードとして機能する場合にクエリがハングする問題を修正しました- 型変換#12813に関して、論理式
AND
とOR
誤った結果を返す問題を修正
- 時間の丸め間違いを修正(例えば、
- サーバ
SLEEP()
関数がKILL TIDB QUERY
ステートメント#12159に対して無効であるという問題を修正しましたAUTO_INCREMENT
MAX 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 BY
#12514?
GROUP BY
ホルダーをサポート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
エラーを返す代わりに、作成されたテーブルのスキーマを使用する必要があるという互換性の問題を修正しました#12678ADMIN CANCEL DDL JOBS
#12681を実行するとinvalid list index
エラーが報告される問題を修正
- デフォルトでは、列の
- モニター
PD
- pd-ctl #1772の
--help
コマンド出力を改善する
ツール
- TiDBBinlog