TiDB2.1RC1リリースノート

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

TiDB

  • SQLオプティマイザー
    • 相関サブクエリが非相関化された後に間違った結果が返される問題を修正します#6972
    • #7011Explain結果を#7041化する
    • IndexJoinの外部テーブルの選択戦略を#7019化する
    • PREPARE以外のステートメントのプランキャッシュを削除します#7040
    • INSERTステートメントが解析および実行されない場合があるという問題を修正します#7068
    • IndexJoinの結果が正しくない場合があるという問題を修正します#7150
    • 場合によっては、一意のインデックスを使用してNULLの値が見つからないという問題を修正します#7163
    • UTF #7194 81のプレフィックスインデックスの範囲計算の問題を修正します。
    • 場合によってはProject演算子を削除することにより、結果が正しくないという問題を修正します#7257
    • 主キーが整数#7316の場合にUSE INDEX(PRIMARY)を使用できない問題を修正します
    • 場合によっては、相関列を使用してインデックス範囲を計算できない問題を修正します#7357
  • SQL実行エンジン
    • 夏時間が正しく計算されない場合があるという問題を修正します#6823
    • 集計関数フレームワークをリファクタリングして、 StreamおよびHashの集計演算子の実行効率を向上させます#6852
    • Hash集計演算子が正常に終了できない場合がある問題を修正します#6982
    • BIT_ORが非整数データを正しく#6994しない問題を修正しBIT_AND BIT_XOR
    • REPLACE INTOステートメントの実行速度を最適化し、パフォーマンスをほぼ10倍に向上させます#7027
    • 時間タイプデータのメモリ使用量を最適化し、時間タイプデータのメモリ使用量を50%削減します#7043
    • UNIONステートメントで返された結果が符号付き整数および符号なし整数と混合される問題を修正します#7112と互換性がありません。
    • FROM_BASE64 RPAD LPAD #7171 REPEATされた#7409が多#7266ことによって引き起こされる#7431の問題を修正しTO_BASE64
    • MergeJoinIndexJoinの値を処理するときの誤った結果を修正しNULL #7255
    • 場合によってはOuter Joinの誤った結果を修正します#7288
    • Data Truncatedのエラーメッセージを改善して、表#7401の間違ったデータと対応するフィールドを見つけやすくします。
    • 場合によってはdecimal#7208た結果を修正し#7001 #7113 #7202
    • ポイント選択のパフォーマンスを最適化する#6937
    • 根本的な問題を回避するために、分離レベルRead Committedを禁止します#7211
    • 場合#7291LTRIMの誤った結果を修正しRTRIM TRIM
    • MaxOneRow演算子は、返された結果が1行を超えないことを保証できないという問題を修正します#7375
    • 範囲が多すぎるコプロセッサー要求を分割する#7454
  • 統計
    • 統計動的収集のメカニズムを最適化する#6796
    • データが頻繁に更新されるときにAuto Analyzeが機能しないという問題を修正します#7022
    • 統計の動的更新プロセス中の書き込みの競合を減らす#7124
    • 統計が正しくない場合のコスト見積もりを最適化する#7175
    • AccessPathコスト見積もり戦略を最適化する#7233
  • サーバ
    • 特権情報をロードする際のバグを修正する#6976
    • 特権チェック#6954Killコマンドが厳しすぎる問題を修正します
    • 一部の2進数タイプを削除する問題を修正#6922
    • 出力ログを短くする#7029
    • mismatchClusterIDの問題を処理する#7053
    • advertise-addressの構成アイテム#7078を追加します
    • GrpcKeepAliveオプション#7100を追加します
    • 接続またはToken回のモニターを追加します#7110
    • データデコードパフォーマンスを最適化する#7149
    • 35にPROCESSLIST #7236テーブルを追加しINFORMMATION_SCHEMA
    • 特権の検証で複数のルールがヒットした場合の順序の問題を修正します#7211
    • エンコーディング関連のシステム変数のデフォルト値をUTF #7198 81に変更します。
    • 遅いクエリログに詳細情報を表示させる#7302
    • PDへのtidb-server関連情報の登録と#7082によるこの情報の取得をサポートします。
  • 互換性
    • セッション変数warning_countおよび#6945をサポートしerror_count
    • システム変数を読み取るときにScopeのチェックを追加します#6958
    • MAX_EXECUTION_TIME構文#7012をサポートします
    • SET構文#7020のより多くのステートメントをサポートする
    • システム変数を設定するときに妥当性チェックを追加する#7117
    • Prepareステートメント#7162PlaceHolderの数の検証を追加します。
    • #7353 set character_set_results = null
    • flush status構文#7369をサポートします
    • information_schemaSETタイプとENUMタイプの列サイズを#7347
    • テーブルを作成するためのステートメントのNATIONAL CHARACTER構文をサポートする#7378
    • LOAD DATAステートメント#7391CHARACTER SET構文をサポートします。
    • SETおよびENUMタイプの列情報を修正します#7417
    • CREATE USERステートメント#7402IDENTIFIED WITH構文をサポートします。
    • TIMESTAMPの計算プロセス#7418での精度低下の問題を修正
    • より多くのSYSTEM変数の妥当性検証をサポートします#7196
    • CHAR_LENGTH関数がバイナリ文字列#7410を計算するときの誤った結果を修正します
    • #7448を含むステートメントの誤ったCONCATの結果を修正しGROUP BY
    • DECIMALタイプをSTRINGタイプ#7451にキャストするときの不正確なタイプの長さの問題を修正します
  • DML
    • Load Dataステートメント#6927の安定性の問題を修正します
    • いくつかのBatchの操作を実行するときのメモリ使用量の問題を修正します#7086
    • Replace Intoステートメント#7027のパフォーマンスを向上させる
    • CURRENT_TIMESTAMPを書くときの一貫性のない精度の問題を修正し#7355
  • DDL
    • 場合によっては誤判断を避けるために、 Schemaが複製されているかどうかを判断するDDLの方法を改善します#7319
    • インデックスプロセス#6993を追加する際のSHOW CREATE TABLEの結果を修正します
    • 制限なしsql-modeでは、デフォルトblobtext#7230にすることができjson
    • ADD INDEXの問題を修正する場合があります#7142
    • UNIQUE-KEYのインデックス操作を追加する速度を大幅に向上させます#7132
    • UTF-8文字セット#7109のプレフィックスインデックスの切り捨ての問題を修正しました
    • 環境変数tidb_ddl_reorg_priorityを追加して、 add-indexの操作の優先度を制御します#7116
    • information_schema.tables分のAUTO-INCREMENTの表示の問題を修正します#7037
    • admin show ddl jobs <number>コマンドをサポートし、指定された数のDDLジョブの出力をサポートします#7028
    • 並列DDLジョブ実行のサポート#6955
  • テーブルパーティション (実験的)
    • トップレベルのパーティションをサポートする
    • サポートRange Partition

PD

  • 特徴
    • バージョン管理メカニズムを導入し、互換性のあるクラスタのローリング更新をサポートします
    • region mergeつの機能を有効にする
    • GetPrevRegionのインターフェースをサポート
    • リージョンのバッチ分割をサポート
    • GCセーフポイントの保存をサポート
  • 改善
    • TSO割り当てがシステムクロックの逆方向に影響を受けるという問題を最適化します
    • リージョンハートビートの処理のパフォーマンスを最適化する
    • リージョンツリーのパフォーマンスを最適化する
    • ホットスポット統計の計算のパフォーマンスを最適化する
    • APIインターフェースのエラーコードを返すように最適化する
    • スケジューリング戦略を制御するオプションを追加する
    • labelで特殊文字を使用することを禁止する
    • スケジューリングシミュレーターを改善する
    • pd-ctlの統計を使用したリージョンの分割をサポート
    • pd-ctlでjqを呼び出すことにより、JSON出力のフォーマットをサポートします
    • etcdRaftステートマシンに関するメトリックを追加します
  • バグの修正
    • リーダーを切り替えた後に名前空間が再ロードされない問題を修正します
    • 名前空間のスケジューリングがスケジュールの制限を超える問題を修正します
    • ホットスポットのスケジュールがスケジュールの制限を超える問題を修正します
    • PDクライアントを閉じたときに間違ったログが出力される問題を修正します
    • リージョンハートビートレイテンシの誤った統計を修正

TiKV

  • 特徴
    • ホットリージョンでの書き込み操作によって引き起こされる大きすぎるリージョンを回避するためにbatch splitをサポートします
    • 行数に基づくリージョンの分割をサポートして、インデックススキャンの効率を向上させます
  • パフォーマンス
    • LocalReaderを使用して、読み取り操作をraftstoreスレッドから分離し、読み取り待ち時間を短縮します
    • MVCCフレームワークをリファクタリングし、メモリ使用量を最適化し、スキャン読み取りパフォーマンスを向上させます
    • 統計推定に基づくリージョンの分割をサポートして、I/Oの使用量を削減します
    • ロールバックレコードに対する継続的な書き込み操作によって読み取りパフォーマンスが影響を受けるという問題を最適化します
    • プッシュダウンアグリゲーションコンピューティングのメモリ使用量を削減します
  • 改善
    • 多数の組み込み関数のプッシュダウンサポートとより優れた文字セットサポートを追加します
    • GCワークフローを最適化し、GC速度を向上させ、システムへのGCの影響を減らします
    • ネットワークが異常な場合にサービスリカバリを高速化するには、 prevoteを有効にします
    • RocksDBログファイルの関連する構成アイテムを追加します
    • scheduler_latchのデフォルト構成を調整します
    • tikv-ctlを使用してデータを手動で圧縮するときにRocksDBの最下層のデータを圧縮するかどうかの設定をサポート
    • TiKVを開始するときに環境変数のチェックを追加します
    • 既存のデータに基づいてdynamic_level_bytesつのパラメーターを動的に構成することをサポートします
    • ログ形式のカスタマイズをサポート
    • tikv-ctlにtikv-failを統合する
    • スレッドのI/Oメトリックを追加する
  • バグの修正
    • 10進数関連の問題を修正
    • gRPC max_send_message_lenが誤って設定される問題を修正します
    • region_sizeの設定ミスによって引き起こされる問題を修正します

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