重要
このページは英語版のページを機械翻訳しています。原文はこちらからご覧ください。

TiDB2.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 BY 、およびGROUP BYでの#12514の使用のLIMIT OFFSET
    • パーティションテーブルのIndexJoinが誤った結果を返す問題を修正します#12713
    • 日付文字列とフォーマット文字列が#12757と一致しない場合、TiDBのstr_to_date関数がMySQLとは異なる結果を返す問題を修正します。
    • cast関数がクエリ条件に含まれている場合に外部結合が誤って内部結合に変換される問題を修正します#12791
    • #12800の結合条件で渡される誤ったAntiSemiJoinを修正しました
  • SQLエンジン
    • 時間の誤った丸めを修正します(たとえば、 2019-09-11 11:17:47.9999996662019-09-11 11:17:48に丸める必要があります) #12259
    • PREPAREステートメントの期間がsql_typeで、監視レコード#12329に表示されない問題を修正します。
    • from_unixtime関数がnull3を処理するときのpanicの問題を修正し#12572
    • 無効な値がYEARタイプとして挿入されると、結果が#12744ではなくNULLになるという互換性の問題を修正し0000
    • 暗黙的に割り当てられたときのAutoIncrement列の動作を改善し、MySQL自動インクリメントロックのデフォルトモードとの一貫性を維持します( 「連続」ロックモード ):単一行のInsertステートメントで複数のAutoIncrement IDを暗黙的に割り当てる場合、TiDBは割り当てられた値の連続性。この改善により、 getGeneratedKeys()メソッドがどのシナリオでも正しい結果を得ることが保証されます#12619
    • HashAgg#12769の子ノードとして機能するときにクエリがハングする問題を修正しApply
    • 型変換#12813に関して、 ANDORの論理式が誤った結果を返す問題を修正します。
  • サーバ
    • SLEEP()の関数がKILL TIDB QUERYのステートメントに対して無効であるという問題を修正します#12159
    • AUTO_INCREMENTMAX int64#12210を誤って割り当てたときにエラーが報告されないという問題を修正しMAX uint64
    • ログレベルがERRORの場合、遅いクエリログが記録されない問題を修正し#12373
    • TiDBがスキーマの変更と対応する変更されたテーブル情報をキャッシュする回数を100から1024に調整し、 tidb_max_delta_schema_countのシステム変数#12515を使用して変更をサポートします。
    • SQL統計をより正確にするために、クエリの開始時間を「実行の開始」から「コンパイルの開始」に変更します#12638
    • TiDBログ#12568set session autocommitのレコードを追加します
    • SQLクエリの開始時刻をSessionVarsに記録して、プランの実行中にリセットされないようにします#12676
    • ORDER BY 、および#12514? GROUP BYプレースホルダーをサポートしLIMIT OFFSET
    • 最後のステートメントが#12724の場合、遅いクエリログにPrev_stmtフィールドを追加して、前のステートメントを出力しCOMMIT
    • 明示的にコミットされたトランザクション#12747COMMITが失敗した場合、 COMMITより前の最後のステートメントをログに記録します。
    • TiDBサーバーがSQLステートメントを実行するときに、前のステートメントの保存方法を最適化して、パフォーマンスを向上させます#12751
    • skip-grant-table=trueの構成でFLUSH PRIVILEGESのステートメントによって引き起こされるpanicの問題を修正します#12816
    • AutoIDを適用するデフォルトの最小ステップを1000から30000に増やして、短時間に多数の書き込み要求がある場合のパフォーマンスのボトルネックを回避します#12891
    • TiDBがパニックになったときに失敗したPreparedステートメントがエラーログに出力されない問題を修正します#12954
    • 遅いクエリログの1回のレコードがMySQL3のCOM_STMT_FETCH回のレコードと矛盾する問題を修正し#12953
    • 書き込みの競合のエラーメッセージにエラーコードを追加して、原因をすばやく特定します#12878
  • DDL
    • デフォルトでは、列のAUTO INCREMENT属性の削除を禁止します。この属性を削除する必要がある場合は、 tidb_allow_remove_auto_inc変数の値を変更してください。詳細については、 システム変数を参照してください。 #12146
    • Create Tableステートメントで一意のインデックスを作成するときに複数のuniqueをサポートする#12469
    • CREATE TABLEステートメントの外部キー制約にスキーマがない場合、 No Database selectedエラー#12678を返す代わりに、作成されたテーブルのスキーマを使用する必要があるという互換性の問題を修正します。
    • #12681の実行時にinvalid list indexエラーが報告される問題を修正しADMIN CANCEL DDL JOBS
  • モニター
    • バックオフ監視のタイプを追加し、コミット時のバックオフ時間など、以前に記録されていないバックオフ時間を補足します#12326
    • 新しいメトリックを追加して、 Add Indexの操作の進行状況を監視します#12389

PD

  • pd- #1772--helpコマンド出力を改善

ツール

  • TiDB Binlog
    • ALTER DATABASEの関連するDDL操作が原因でDrainerが異常終了する問題を修正します#770
    • レプリケーション効率を向上させるために、コミットbinlogのトランザクションステータス情報のクエリをサポートする#761
    • #759start_tsがPumpの最大の35より大きい場合にPumppanicが発生する可能性がある問題を修正しcommit_ts

TiDB Ansible

  • Binlogの#952つの監視項目「キューサイズ」と「クエリヒストグラム」を追加します。
  • TiDBアラートルールの更新#961
  • 展開とアップグレードの前に構成ファイルを確認する#973
  • TiDB1のインデックス速度を監視するための新しいメトリックを追加し#987
  • TiDB Binlogモニタリングダッシュボードを更新して、Grafanav4.6.3と互換性を持たせる#993
このページの内容