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