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

TiDB2.1.17リリースノート

発売日:2019年9月11日

TiDBバージョン:2.1.17

TiDB Ansibleバージョン:2.1.17

  • 新機能

    • TiDBのSHOW TABLE REGIONS構文にWHERE句を追加します
    • TiKVとPDにconfig-checkつの機能を追加して、構成項目を確認します
    • pd-ctlにremove-tombstoneコマンドを追加して、トゥームストーンストアレコードをクリアします
    • Reparoにworker-counttxn-batchの構成アイテムを追加して、回復速度を制御します
  • 改善点

    • 積極的にプッシュするオペレーターをサポートすることにより、PDのスケジューリングプロセスを最適化する
    • TiKVの開始プロセスを最適化して、ノードの再起動によって引き起こされるジッターを減らします
  • 動作の変更

    • TiDBの低速クエリログのstart tsを最後の再試行時間から最初の実行時間に変更します
    • 低速クエリログの使いやすさを向上させるために、TiDB低速クエリログのIndex_idsフィールドをIndex_namesフィールドに置き換えます
    • TiDBの構成ファイルにsplit-region-max-numパラメーターを追加して、 SPLIT TABLE構文で許可されるリージョンの最大数を変更します。これはデフォルト構成では1,000から10,000に増加します。

TiDB

  • SQLオプティマイザー
    • EvalSubqueryビルド中にエラーが発生したときにエラーメッセージが正しく返されない問題を修正しExecutor #11811
    • 外側のテーブルの行数がインデックスルックアップ結合の単一バッチの行数よりも多い場合、クエリ結果が正しくない可能性がある問題を修正します。インデックスルックアップ結合の機能範囲を拡張します。 UnionScan#11843のサブノードとして使用できIndexJoin
    • 統計フィードバックプロセス中に無効なキーが発生する可能性がある状況のために、 SHOW STAT_BUCKETSの構文に無効なキー( invalid encoded key flag 252など)の表示を追加します#12098
  • SQL実行エンジン
    • CAST関数が数値タイプ#11712を変換しているときに、最初にUINTに変換される数値によって引き起こされるいくつかの誤った結果( select cast(13835058000000000000 as double)など)を修正します。
    • DIVの計算の被除数が小数であり、この計算に負の数#11812が含まれている場合、計算結果が正しくない可能性がある問題を修正します。
    • ConvertStrToIntStrict関数を追加して、 SELECT / EXPLAINステートメント#11892の実行時に一部の文字列がINTタイプに変換されることによって引き起こされるMySQLの非互換性の問題を修正します。
    • EXPLAIN ... FOR CONNECTIONが使用されている場合にstmtCtxの設定が間違っているために、 Explainの結果が正しくない可能性があるという問題を修正します#11978
    • unaryMinus関数によって返される結果がMySQLと互換性がないという問題を修正します。これは、整数の結果が#11990をオーバーフローしたときに非10進数の結果が原因で発生します。
    • LOAD DATAステートメントが実行されているときのカウント順序が原因でlast_insert_id()が正しくない可能性があるという問題を修正します#11994
    • ユーザーが明示的-暗黙的混合方法で自動インクリメント列データを書き込むときにlast_insert_id()が正しくない可能性があるという問題を修正します#12001
    • JSON_UNQUOTE関数の引用符が多すぎるバグを修正します。二重引用符( " )で囲まれた値のみを引用符で囲まないようにする必要があります。たとえば、「 SELECT JSON_UNQUOTE("\\\\") 」の結果は「 \\ 」(変更なし)になります#12096
  • サーバ
    • #11878トランザクションを再試行するときの最後の再試行時間から最初の実行時間までの遅いクエリログに記録された変更start ts
    • リージョン全体でのスキャン操作を回避し、キーの数が減ったときにロックを解決するコストを削減するために、トランザクションのキーの数をLockResolverに追加します#11889
    • 遅いクエリログでsuccフィールド値が正しくない可能性がある問題を修正します#11886
    • 遅いクエリログにファイルされたIndex_idsIndex_namesフィールドに置き換えて、遅いクエリログの使いやすさを向上させます#12063
    • Duration-select time(‘--’)など)が含まれている場合に、TiDBが-をEOFエラーに解析することによって発生する接続切断の問題を修正します#11910
    • 無効なリージョンをRegionCacheからすばやく削除して、このリージョン#11931に送信されるリクエストの数を減らします。
    • Insert Into … Select構文#12126oom-action = "cancel"およびOOMが発生した場合に、OOMpanicの問題を誤って処理することによって引き起こされる接続切断の問題を修正します。
  • DDL
    • tikvSnapshotの逆スキャンインターフェイスを追加して、DDL履歴ジョブを効率的にクエリします。このインターフェースを使用した後、 ADMIN SHOW DDL JOBSの実行時間は著しく減少します#11789
    • CREATE TABLE ... PRE_SPLIT_REGION構文を改善します。35の場合、事前分割領域の数を2 ^(N-1)からPRE_SPLIT_REGION = N ^Nに変更し#11797
    • オンラインワークロードへの大きな影響を回避するために、 Add Index操作のバックグラウンドワーカースレッドのデフォルトパラメーター値を減らします#11875
    • SPLIT TABLE構文の動作を改善しますSPLIT TABLE ... REGIONS Nを使用してリージョン#11929を分割する場合、N個のデータリージョンと1個のインデックスリージョンを生成します。
    • 構成ファイルにsplit-region-max-numパラメーター(デフォルトでは10000 )を追加して、 SPLIT TABLE構文で許可されるリージョンの最大数を調整可能にします#12080
    • システムがbinlog5を書き込むときに、この句のコメントがないPRE_SPLIT_REGIONSが原因で、ダウンストリームのMySQLがCREATE TABLE句を解析できない問題を修正し#12121
    • SHOW TABLE … REGIONS#12124WHEREつの副節を追加しSHOW TABLE .. INDEX … REGIONS
  • モニター
    • 35のtikvclient接続エラーをカウントするためにconnection_transient_failure_countのモニタリングメトリックを追加し#12092

TiKV

  • 場合によっては、リージョン内のキーをカウントした誤った結果を修正します#5415
  • TiKVにconfig-checkオプションを追加して、TiKV構成アイテムが有効かどうかを確認します#5391
  • 開始プロセスを最適化して、ノードの再起動によって引き起こされるジッターを減らします#5277
  • 場合によっては、ロックの解決プロセスを最適化して、トランザクションのロックの解決を高速化します#5339
  • get_txn_commit_infoプロセスを最適化して、トランザクションのコミットを高速化します#5062
  • Raft関連のログを簡素化する#5425
  • 場合によってはTiKVが異常終了する問題を解決します#5441

PD

  • PDにconfig-checkオプションを追加して、PD構成項目が有効かどうかを確認します#1725
  • 墓石ストアレコードのクリアをサポートするために、pd-ctlにremove-tombstoneコマンドを追加します#1705
  • スケジューリングをスピードアップするためにオペレーターを積極的にプッシュすることをサポートする#1686

ツール

  • TiDB Binlog
    • Reparoにworker-counttxn-batchの構成アイテムを追加して、回復速度を制御します#746
    • Drainerのメモリ使用量を最適化して、並列実行効率を向上させます#735
    • 場合によってはPumpが正常に終了できないバグを修正します#739
    • PumpのLevelDBの処理ロジックを最適化して、 #720の実行効率を向上させます
  • TiDB Lightning
    • チェックポイント#239からデータを再インポートすることによってtidb-lightningがクラッシュする可能性があるバグを修正します

TiDB Ansible

  • Sparkバージョンを2.4.3に更新し、TiSparkバージョンをSpark 2.4.3 #914と互換性のある2.2.0に更新し#919
  • リモートマシンのパスワードの有効期限が切れると待ち時間が長くなる問題を修正し#948 #937
このページの内容