TiDB 3.0.6 リリースノート

発売日: 2019年11月28日

TiDB バージョン: 3.0.6

TiDB Ansible バージョン: 3.0.6

ティビ

  • SQL オプティマイザー
    • ウィンドウ関数 AST が SQL テキストを復元した後に結果が正しくない (たとえば、 over w誤ってover (w) #12933に復元される) 問題を修正しました。
    • STREAM AGG()からdoubleRead #12690に押し下げる問題を修正
    • SQLバインディング#13117で引用符が正しく処理されない問題を修正
    • select max(_tidb_rowid) from tシナリオを最適化してテーブル全体のスキャンを回避する#13095
    • クエリステートメントに変数割り当て式が含まれている場合にクエリ結果が正しくない問題を修正#13231
    • UPDATE文にサブクエリと生成された列の両方が含まれている場合に結果が正しくない問題を修正します。この文に異なるソース データベースからの同じ名前のテーブルが 2 つ含まれている場合にUPDATE文の実行エラーが発生する問題を修正します#13350
    • ポイントクエリ#13416のサポート_tidb_rowid
    • パーティションテーブル統計の誤った使用により、生成されたクエリ実行プランが正しくない問題を修正しました#13628
  • SQL実行エンジン
    • 年型#12745の無効な値を処理するときに TiDB が MySQL と互換性がない問題を修正しました。
    • INSERT ON DUPLICATE UPDATE文でChunk再利用してメモリオーバーヘッド#12998を削減する
    • JSON_VALID組み込み関数#13133のサポートを追加
    • パーティションテーブル#13140ADMIN CHECK TABLE実行をサポート
    • FAST ANALYZE空のテーブル#13343で実行されたときに発生するpanic問題を修正
    • 複数列インデックス#13394を含む空のテーブルでFAST ANALYZE実行するとpanicが発生する問題を修正
    • WHERE句に一意のキー#13382の等号条件が含まれている場合に、推定行数が 1 より大きくなる問題を修正しました。
    • TiDB #13254Streamingが有効になっている場合に返されるデータが重複する可能性がある問題を修正
    • 推定精度を向上させるために、count-minスケッチから上位N個の値を抽出します#13429
  • サーバ
    • gRPC ダイヤルがタイムアウトすると、TiKV に送信されたリクエストがすぐに失敗するようにします#12926
    • 次の仮想テーブルを追加します: #13009
      • performance_schema.tidb_profile_allocs
      • performance_schema.tidb_profile_block
      • performance_schema.tidb_profile_cpu
      • performance_schema.tidb_profile_goroutines
    • クエリが悲観的ロック#12989を待機しているときにkillコマンドが機能しない問題を修正
    • 悲観的ロックの取得に失敗し、トランザクションが単一のキー#12707変更のみを伴う場合は、非同期ロールバックを実行しないでください。
    • 領域分割のリクエストに対する応答が空の場合にpanicする問題を修正#13092
    • PessimisticLockロックエラーを返したときに不要なバックオフを回避する#13116
    • 認識されない構成オプション#13272の警告ログを出力して構成をチェックするための TiDB の動作を変更します。
    • /info/allインターフェース#13187を介してすべての TiDB ノードのbinlogステータスの取得をサポート
    • TiDB が接続を切断したときに goroutine がリークする可能性がある問題を修正#13251
    • 悲観的トランザクションでinnodb_lock_wait_timeoutパラメータを機能させて、悲観的ロック#13165のロック待機タイムアウトを制御する
    • 悲観的トランザクションクエリが強制終了されたときに、他のトランザクションが不必要に待機するのを防ぐために、悲観的トランザクション TTL の更新を停止します#13046
  • DDL
    • TiDBのSHOW CREATE VIEWの実行結果がMySQL #12912の結果と一致しない問題を修正
    • unionに基づいてViewを作成するサポート (例: create view v as select * from t1 union select * from t2 #12955
    • slow_queryテーブルにトランザクション関連のフィールドを追加します: #13072
      • Prewrite_time
      • Commit_time
      • Get_commit_ts_time
      • Commit_backoff_time
      • Backoff_types
      • Resolve_lock_time
      • Local_latch_wait_time
      • Write_key
      • Write_size
      • Prewrite_region
      • Txn_retry
    • テーブルが作成され、テーブルにCOLLATE #13174含まれている場合、列のシステムのデフォルトの文字セットではなく、テーブルのCOLLATE使用します。
    • テーブル作成時にインデックス名の長さを制限する#13310
    • テーブル名を変更するときにテーブル名の長さがチェックされない問題を修正#13346
    • TiDB #13522で主キーの追加/削除をサポートするために、 alter-primary-key構成 (デフォルトでは無効) を追加します。

ティクヴ

  • acquire_pessimistic_lockインターフェースが間違ったtxn_size #5740を返す問題を修正
  • パフォーマンスへの影響を減らすために、GCワーカーの1秒あたりの書き込みを制限します#5735
  • lock_manager正確に#5845する
  • 悲観的ロック#5848のサポートinnodb_lock_wait_timeout
  • Titan #5720の設定チェックを追加
  • GC I/O制限を動的に変更するためのtikv-ctlの使用をサポート: tikv-ctl --host=ip:port modify-tikv-config -m server -n gc.max_write_bytes_per_sec -v 10MB #5957
  • 無駄なclean upリクエストを減らしてデッドロック検出器#5965への負荷を軽減する
  • 悲観的ロックの事前書き込みリクエストでTTLを減らさないようにする#6056
  • Titan #5968でBLOBファイルが見つからない問題を修正
  • Titan #6009RocksDBOptions効かない問題を修正

PD

  • 各フィルターにActOnディメンションを追加して、各スケジューラとチェッカーがフィルターの影響を受けることを示します。また、使用されていない 2 つのフィルターdisconnectFilterrejectLeaderFilter #1911を削除します。
  • PD #1867でタイムスタンプを生成するのに 5 ミリ秒以上かかる場合は警告ログを出力します。
  • 利用できないエンドポイントをクライアントに渡すときにクライアントのログレベルを下げる#1856
  • gRPCメッセージパッケージがregion_syncerレプリケーションプロセス#1952で最大サイズを超える可能性がある問題を修正

ツール

  • TiDBBinlog
    • Drainer #788initial-commit-tsが「-1」に設定されている場合にPDから初期レプリケーションタイムスタンプを取得します。
    • DrainerのCheckpointstorageをダウンストリームから分離し、MySQLまたはローカルファイル#790への保存Checkpointをサポートする
    • レプリケーション データベース/テーブル フィルタリングを構成するときに空の値を使用することで発生するDrainerpanicの問題を修正しました#801
    • Drainer がbinlogファイルをダウンストリームに適用できないためにpanicが発生した後、プロセスが終了せずにデッドロック状態になる問題を修正しました#807
    • gRPC のGracefulStop #817が原因でPump が終了するときにブロックされる問題を修正しました。
    • TiDB (v3.0.6 以降) でDROP COLUMNステートメントの実行中に列が欠落しているbinlogを受信するとDrainer が失敗する問題を修正しました#827
  • TiDB Lightning
    • TiDBバックエンド#248max-allowed-packet構成(デフォルトでは64M)を追加します。

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