TiDB 3.0.0-rc.1 リリースノート

リリース日:2019年5月10日

TiDB バージョン: 3.0.0-rc.1

TiDB Ansible バージョン: 3.0.0-rc.1

概要

2019 年 5 月 10 日に、TiDB 3.0.0-rc.1 がリリースされました。対応する TiDB Ansible バージョンは 3.0.0-rc.1 です。 TiDB 3.0.0-beta.1 と比較して、このリリースでは安定性、使いやすさ、機能、SQL オプティマイザー、統計、実行エンジンが大幅に向上しています。

TiDB

  • SQLオプティマイザー

    • 列間の順序相関を使用してコスト見積もりの​​精度を向上させます。ヒューリスティック パラメーターtidb_opt_correlation_exp_factorを導入して、相関関係を推定に直接使用できない場合のシナリオでインデックス スキャンの優先順位を制御します。 #9839
    • フィルタ#10053に該当する列がある場合、複合インデックスのアクセス条件を抽出する際に、より多くのインデックスの接頭列と一致します。
    • 動的プログラミング アルゴリズムを使用して、結合に参加しているテーブルの数が値tidb_opt_join_reorder_threshold未満の場合の結合操作の実行順序を指定します。 #8816
    • アクセス条件として複合インデックスを使用する場合、インデックス結合を構築する内部テーブル内のインデックスのより多くのプレフィックス列と一致します#8471
    • NULL 値#9474を持つ単一列インデックスの行数推定の精度を向上させます。
    • 論理最適化フェーズ中に集計関数を削除する場合は、誤った実行を防ぐためにGROUP_CONCAT特別に処理します#9967
    • フィルターが定数#9848の場合、フィルターを結合演算子の子ノードに適切にプッシュダウンします。
    • MySQL #10064の非互換性を防ぐために、論理最適化フェーズ中に列をプルーニングするときにRAND()などの一部の関数を特別に処理します。
    • サポートFAST ANALYZE 。領域全体をスキャンするのではなく、領域をサンプリングすることで統計収集を高速化します。この機能は変数tidb_enable_fast_analyzeによって制御されます。 #10258
    • SQL ステートメントの実行計画バインドを実行することで実行の安定性を確保する SQL 計画管理をサポートします。この機能は現在ベータ版であり、SELECT ステートメントのバインドされた実行プランのみをサポートします。本番環境での使用はお勧めしません。 #10284
  • 実行エンジン

    • 3 つの演算子 ( TableReader IndexReaderおよびIndexLookupReaderでのメモリ使用量の追跡と制御をサポートします#10003
    • コプロセッサ内のタスク数、実行時間/待機時間の平均/最長/90%、実行時間または待機時間が最も長い TiKV のアドレスなど、低速ログ内のコプロセッサ タスクに関する詳細情報の表示をサポートします#10165
    • プレースホルダーなしで準備された DDL ステートメントをサポートします#10144
  • サーバ

    • TiDB の開始時にのみ DDL 所有者にブートストラップの実行を許可する#10029
    • 変数tidb_skip_isolation_level_checkを追加して、トランザクション分離レベルをSERIALIZABLE #10065に設定するときに TiDB がエラーを報告しないようにします。
    • 暗黙的なコミット時間と SQL 実行時間をスローログ#10294にマージします。
      • SQL ロールのサポート (RBAC権限管理)
      • サポートSHOW GRANT #10016
      • サポートSET DEFAULT ROLE #9949
    • サポートGRANT ROLE #9721
    • TiDB を終了させるwhitelistプラグインのConnectionEventエラーを修正#9889
    • 読み取り専用ステートメントをトランザクション履歴に誤って追加する問題を修正#9723
    • killステートメントを改善して SQL の実行を停止し、リソースをより迅速に解放します#9844
    • 起動オプションconfig-checkを追加して、設定ファイル#9855の有効性を確認します。
    • 厳密な SQL モードが無効になっている場合の NULL フィールド挿入の有効性チェックを修正しました#10161
  • DDL

    • CREATE TABLEステートメントに対してpre_split_regionsオプションを追加します。このオプションは、テーブル作成後の大量の書き込みによって引き起こされる書き込みホットスポットを回避するために、テーブルを作成する際のテーブルリージョンの事前分割をサポートします#10138
    • 一部の DDL ステートメントの実行パフォーマンスを最適化します#10170
    • FULLTEXT KEY #9821ではフルテキスト インデックスがサポートされていないという警告を追加します。
    • TiDB #9820の古いバージョンにおける UTF8 および UTF8MB4 文字セットの互換性の問題を修正
    • #9868shard_row_id_bitsの潜在的なバグを修正
    • テーブルの文字セットを変更しても列の文字セットが変更されないバグを修正#9790
    • 列のデフォルト値#9897としてBINARY / BITを使用する場合のSHOW COLUMNの潜在的なバグを修正しました。
    • SHOW FULL COLUMNSステートメント#10007CHARSET / COLLATIONの説明を表示する際の互換性の問題を修正
    • SHOW COLLATIONSステートメントが TiDB #10186でサポートされている照合順序のみをリストする問題を修正します。

PD

  • ETCD #1452のアップグレード
    • etcdとPDサーバーのログ形式を統一する
    • PreVoteでLeaderを選出できない問題を修正
    • 後続のリクエストのブロックを回避するために、失敗する「提案」リクエストと「読み取り」リクエストの高速ドロップをサポートします。
    • リースのデッドロック問題を修正する
  • ホット ストアがキーの不正な統計を作成する問題を修正します#1487
  • 単一 PD ノードからの PD クラスターの強制再構築のサポート#1485
  • regionScattererが無効なOperatorStep #1482を生成する可能性がある問題を修正
  • MergeRegionオペレーター#1495の短すぎるタイムアウト問題を修正
  • ホット リージョンのスケジューリングを優先するサポート#1492
  • PDサーバー側での TSO 要求の処理時間を記録するためのメトリックを追加します#1502
  • 対応するストア ID とアドレスをストア#1506に関連するメトリクスに追加します。
  • GetOperatorサービスをサポート#1477
  • ストアが見つからないため、ハートビート ストリームでエラーを送信できない問題を修正します#1521

TiKV

  • エンジン

    • 読み取りトラフィック#4436に関する不正確な統計を引き起こす可能性がある問題を修正しました。
    • 範囲#4503を削除するときにプレフィックス抽出panicを引き起こす可能性がある問題を修正します。
    • メモリ管理を最適化して、 Iterator Key Bound Option #4537のメモリ割り当てとコピーを削減します。
    • 学習者のログギャップを考慮しないと、場合によってはpanic#4559が発生する問題を修正
    • 異なるcolumn families #4612間でのblock cache共有をサポート
  • サーバ

    • batch commands #4473のコンテキスト スイッチのオーバーヘッドを削減します。
    • シークイテレータステータス#4470の有効性をチェックする
  • RaftStore

    • サポート構成可能properties index distance #4517
  • コプロセッサー

    • バッチインデックススキャンエグゼキュータの追加#4419
    • ベクトル化された評価フレームワークを追加#4322
    • バッチ エグゼキュータの実行概要フレームワークを追加#4433
    • 評価panic#4481を引き起こす可能性のある無効な列オフセットを避けるために、RPN 式を構築するときに最大列を確認してください。
    • BatchLimitExecutor #4469を追加
    • コンテキストスイッチ#4486を減らすために、ReadPool の元のfutures-cpupool tokio-threadpoolに置き換えます。
    • バッチ集計フレームワークの追加#4533
    • BatchSelectionExecutor #4562を追加
    • バッチアグレッション機能追加AVG #4570
    • RPN機能追加LogicalAnd #4575
  • その他

    • メモリアロケータ#4370としてtcmallocをサポート

ツール

  • TiDBBinlog

    • unsigned int 型の主キー列のbinlogデータが負の#573である場合のレプリケーション中止の問題を修正
    • downstream がpbの場合は圧縮オプションを提供しません。ダウンストリーム名をpbからfile #559に変更します。
    • ローカルstorage#509での非同期フラッシュを可能にするstorage.sync-log構成項目をPumpに追加します。
    • PumpとDrainer #495間の通信のトラフィック圧縮をサポート
    • 異なる SQL モード#511での DDL クエリの解析をサポートするために、 Drainerにsyncer.sql-mode構成項目を追加します。
    • レプリケーションを必要としないテーブルのフィルタリングをサポートするためにsyncer.ignore-table構成アイテムを追加します#520
  • 稲妻

    • 行 ID またはデフォルトの列値を使用して、ダンプ ファイルに含まれていない列データを入力します#170
    • SST の一部がインポートに失敗した場合でもインポート成功が返されることがあるインポーターのバグを修正しました#4566
    • SST を TiKV #4412にアップロードする際のインポーターでの速度制限のサポート
    • サイズごとのテーブルのインポートをサポートし、大きなテーブルのチェックサムと分析によるクラスターへの影響を軽減し、チェックサムと分析#156の成功率を向上させます。
    • データソースファイルを TiDB の type.Datum として直接解析し、KV エンコーダからの余分な解析オーバーヘッドを節約することで、Lightning の SQL エンコードパフォーマンスが 50% 向上します#145
    • ログ形式を統一されたログ形式 #162に変更します
    • 構成ファイルが見つからない場合に使用するコマンド ライン オプションをいくつか追加します#157
  • 同期差分インスペクター

    • チェックポイントをサポートして検証ステータスを記録し、再起動後に最後に保存されたポイントから検証を続行します#224
    • チェックサムを計算してデータの整合性をチェックするためのonly-use-checksum構成アイテムを追加します#215

TiDB Ansible

  • より多くの TiKV 監視パネルをサポートし、Ansible、Grafana、Prometheus #727のバージョンを更新します
    • クラスターのステータスを表示するための概要ダッシュボード
    • 問題のトラブルシューティングのためのトラブルシューティング ダッシュボード
    • 開発者が問題を分析するための詳細ダッシュボード
  • Kafka バージョン#730の TiDB Binlogのダウンロードに失敗するバグを修正
  • サポートされているオペレーティング システムのバージョン制限を CentOS 7.0 以降および Red Hat 7.0 以降として変更します#733
  • ローリング アップデート中のバージョン検出モードをマルチ同時#736に変更します。
  • README #740のドキュメントのリンクを更新する
  • 冗長な TiKV モニタリング メトリクスを削除します。トラブルシューティング用の新しいメトリクスを追加#735
  • #739によるリーダー分布を表示するためにtable-regions.pyスクリプトを最適化します。
  • Drainer #745の設定ファイルを更新する
  • SQL カテゴリごとにレイテンシーを表示する新しいパネルで TiDB モニタリングを最適化します#747
  • Lightning 設定ファイルを更新し、 tidb_lightning_ctlスクリプト#1e946f8を追加します。

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

Playground
新規
登録なしで TiDB の機能をワンストップでインタラクティブに体験できます。
製品
TiDB Cloud
TiDB
価格
PoC お問い合わせ
エコシステム
TiKV
TiFlash
OSS Insight
© 2024 PingCAP. All Rights Reserved.
Privacy Policy.