TiDB 2.1 RC2 リリースノート

2018 年 9 月 14 日に、TiDB 2.1 RC2 がリリースされました。 TiDB 2.1 RC1 と比較すると、このリリースでは、安定性、SQL オプティマイザー、統計情報、および実行エンジンが大幅に改善されています。

TiDB

  • SQL オプティマイザー
    • 次世代 Planner #7543の提案を行う
    • 定数伝播の最適化ルールを改善する#7276
    • Rangeの計算ロジックを拡張して、複数のINまたはEQUAL条件を同時に処理できるようにする#7577
    • Rangeが空の場合、 TableScanの推定結果が正しくない問題を修正#7583
    • UPDATEステートメント#7586PointGet演算子をサポート
    • 一部の条件でFirstRow集約関数を実行するプロセス中のpanicの問題を修正します#7624
  • SQL 実行エンジン
    • HashJoinオペレーターがエラー#7554に遭遇したときの潜在的なDataRace問題を修正します。
    • HashJoinオペレーターに内部テーブルを読み取らせ、同時にハッシュ テーブルを構築します#7544
    • ハッシュ集計演算子のパフォーマンスを最適化する#7541
    • Join 演算子#7493#7433のパフォーマンスを最適化する
    • 結合順序を変更するとUPDATE JOINの結果が正しくない問題を修正#7571
    • チャンクのイテレータ#7585のパフォーマンスを改善する
  • 統計
    • 自動分析作業が統計を繰り返し分析する問題を修正します#7550
    • 統計の変更がない場合に発生する統計更新エラーを修正します#7530
    • RC 分離レベルと低優先度を使用してAnalyzeリクエストを構築する#7496
    • #7570の特定の期間に統計の自動分析を有効にするサポート
    • 統計情報をログに記録するときのpanicの問題を修正します#7588
    • ANALYZE TABLE WITH BUCKETSステートメント#7619を使用したヒストグラム内のバケット数の構成をサポート
    • 空のヒストグラムを更新するときのpanicの問題を修正します#7640
    • 統計情報を使用した更新information_schema.tables.data_length #7657
  • サーバ
    • Trace 関連の依存関係の追加#7532
    • Golang #7512mutex profileつの機能を有効にする
    • AdminステートメントにはSuper_priv特権#7486が必要です
    • Drop重要なシステム テーブルへのユーザーのアクセスを禁止する#7471
    • juju/errorsからpkg/errorsに切り替える#7151
    • SQL トレース#7016の機能プロトタイプを完成させる
    • ゴルーチン プール#7564を削除する
    • USER1シグナル#7587を使用したゴルーチン情報の表示をサポート
    • TiDB の起動中に内部 SQL を高優先度に設定する#7616
    • 異なるラベルを使用して、メトリックの監視で内部 SQL とユーザー SQL をフィルター処理する#7631
    • 先週の上位 30 件の遅いクエリを TiDBサーバーに保存します#7646
    • TiDB クラスターのグローバル システム タイム ゾーンを設定する提案を提出する#7656
    • 「GC ライフタイムがトランザクション期間よりも短い」というエラーメッセージを充実させる#7658
    • TiDB クラスタの起動時にグローバル システム タイム ゾーンを設定する#7638
  • 互換性
    • Yearタイプ#7542の unsigned フラグを追加します
    • Prepare / Executeモード#7525Year型の結果の長さを構成する問題を修正します。
    • Prepare / Executeモードでゼロのタイムスタンプを挿入する問題を修正#7506
    • 整数除算#7492のエラー処理の問題を修正
    • ComStmtSendLongData #7485処理時の互換性の問題を修正
    • 文字列を整数#7483に変換する際のエラー処理の問題を修正
    • information_schema.columns_in_tableテーブルの値の精度を最適化する#7463
    • MariaDB クライアントを使用して文字列型のデータを書き込みまたは更新する際の互換性の問題を修正します#7573
    • 戻り値#7600のエイリアスの互換性の問題を修正
    • information_schema.COLUMNSテーブル#7602で float 型のNUMERIC_SCALE値が正しくない問題を修正
    • 1 行のコメントが空の場合にパーサーがエラーを報告する問題を修正します#7612
    • insert関数#7528max_allowed_packetの値を確認する
    • 内蔵機能をサポートjson_contains #7443
    • 内蔵機能をサポートjson_contains_path #7596
    • 内蔵機能をサポートencode/decode #7622
    • 一部の時間関連の関数が MySQL の動作と互換性がない場合がある問題を修正します#7636
    • 文字列#7654のデータの時刻型を解析する際の互換性の問題を修正します
    • DateTimeデータのデフォルト値を計算するときにタイム ゾーンが考慮されない問題を修正します#7655
  • DML
    • InsertOnDuplicateUpdateステートメント#7534に正しいlast_insert_idを設定します
    • auto_increment_idカウンタを更新するケースを減らす#7515
    • Duplicate Key #7495のエラー メッセージを最適化する
    • insert...select...on duplicate key update問題#7406を修正します。
    • LOAD DATA IGNORE LINESステートメント#7576をサポート
  • DDL
    • DDL ジョブ タイプと現在のスキーマ バージョン情報をモニターに追加します#7472
    • Admin Restore Table機能#7383の設計を完了する
    • Bit型のデフォルト値が128を超える問題を修正#7249
    • Bitタイプのデフォルト値がNULL #7604にならない問題を修正
    • DDL キュー#7608のチェックCREATE TABLE/DATABASEの間隔を減らす
    • ddl/owner/resign HTTP インターフェイスを使用して DDL 所有者を解放し、新しい所有者の選択を開始します#7649
  • TiKV Go クライアント
    • Seekの操作でKey #7419しか得られない問題をサポート
  • テーブル パーティション (実験的)
    • Bigintタイプがパーティションキーとして使用できない問題を修正#7520
    • パーティション分割されたテーブルにインデックスを追加する際に問題が発生した場合のロールバック操作をサポートします#7437

PD

  • 特徴
    • GetAllStoresインターフェイス#1228をサポート
    • シミュレータ#1218でのスケジューリング見積もりの統計を追加します。
  • 改良点
    • ダウン ストアの処理プロセスを最適化して、できるだけ早くレプリカを作成する#1222
    • Coordinator の起動を最適化して、PD #1225の再起動によって発生する不要なスケジューリングを減らします
    • メモリー使用量を最適化して、ハートビートによるオーバーヘッドを削減します#1195
    • エラー処理を最適化し、ログ情報を改善する#1227
    • pd-ctl #1231で特定のストアのリージョン情報のクエリをサポート
    • pd-ctl #1233のバージョン比較に基づく topNリージョン情報のクエリをサポート
    • pd-ctl #1242でより正確な TSO デコードをサポート
  • バグ修正
    • pd-ctl がhot storeコマンドを使用して誤って終了する問題を修正#1244

TiKV

  • パフォーマンス
    • I/O コストを削減するために、統計の推定に基づいてリージョンを分割することをサポートします#3511
    • トランザクション スケジューラでクローンを減らす#3530
  • 改良点
    • 多数の組み込み関数のプッシュダウン サポートを追加します。
    • 特定のシナリオでのリーダー スケジューリングの失敗の問題を修正するためにleader-transfer-max-log-lagの構成を追加します#3507
    • max-open-enginesの構成を追加して、同時に開くエンジンの数をtikv-importerに制限します#3496
    • ガベージ データのクリーンアップ速度を制限して、 snapshot apply #3547への影響を軽減します。
    • 不必要な遅延を避けるために重要なRaftメッセージのコミット メッセージをブロードキャストする#3592
  • バグの修正
    • 新しく分割されたリージョン#3557PreVoteのメッセージを破棄することによって引き起こされるリーダー選出の問題を修正します。
    • Regions #3573のマージ後にフォロワー関連の統計を修正
    • ローカル リーダーが古いリージョン情報を使用する問題を修正します#3565
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.