📣
TiDB Cloud Premium はパブリックプレビュー中です。エンタープライズワークロード向けの無制限のスケーリング、即時の弾力性、高度なセキュリティを提供します。このページは自動翻訳されたものです。原文はこちらからご覧ください。

TiDB 2.1.18 リリースノート



発売日:2019年11月4日

TiDB バージョン: 2.1.18

TiDB Ansible バージョン: 2.1.18

TiDB

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

PD

  • pd-ctl の--helpコマンド出力を改善する #1772

ツール

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

TiDB Ansible

  • TiDB Binlog に"queue size"と"query histogram"の 2つの監視項目を追加します。 #952
  • TiDBアラートルールを更新 #961
  • デプロイおよびアップグレードの前に構成ファイルを確認する#973
  • TiDB のインデックス速度を監視するための新しいメトリックを追加します #987
  • TiDB Binlog監視ダッシュボードを更新して、Grafana v4.6.3 と互換性を持たせました。 #993

このページは役に立ちましたか?