TiDB 4.0.9 リリースノート

発売日:2020年12月21日

TiDB バージョン: 4.0.9

互換性の変更

  • TiDB

    • enable-streaming構成アイテム#21055を非推奨にする
  • TiKV

    • 保存時の暗号化が有効になっている場合、I/O とミューテックスの競合を軽減します。この変更には下位互換性がありません。ユーザーがクラスターを v4.0.9 より前のバージョンにダウングレードする必要がある場合は、ダウングレード前にsecurity.encryption.enable-file-dictionary-logを無効にし、TiKV を再起動する必要があります。 #9195

新機能

  • TiFlash

    • storageエンジンの最新データを複数のディスクに保存するサポート (実験的)
  • TiDB ダッシュボード

    • SQL ステートメントページ#749のすべてのフィールドによる表示と並べ替えのサポート
    • トポロジ グラフのズームとパンのサポート#772
    • SQL ステートメントおよびスロー クエリページでのディスク使用量情報の表示のサポート#777
    • SQL ステートメントスロー クエリページでのリスト データのエクスポートのサポート#778
    • Prometheus アドレスのカスタマイズのサポート#808
    • クラスター統計#815のページを追加します。
    • スロークエリの詳細に時間関連フィールドを追加#810

改善点

  • TiDB

    • 等しい条件を他の条件に変換する場合、ヒューリスティックな方法で (インデックス) マージ結合を回避します#21146
    • ユーザー変数の種類を区別する#21107
    • 構成ファイル#20922でのGOGC変数の設定のサポート
    • ダンプされたバイナリ時刻 ( TimestampおよびDatetime ) を MySQL #21135との互換性を高める
    • LOCK IN SHARE MODE構文#21005を使用するステートメントにはエラー メッセージを提供します。
    • ショートカット可能な式#21040で定数を折りたたむときに、不要な警告やエラーが出力されるのを回避します。
    • LOAD DATAステートメント#21199の準備時にエラーが発生します。
    • 整数列の型を変更する場合、整数のゼロ埋めサイズの属性を無視します#20986
    • EXPLAIN ANALYZE #21066の結果に DML ステートメントのエグゼキューター関連の実行時情報を追加します。
    • 単一の SQL ステートメントで主キーに対する複数の更新を禁止する#21113
    • 接続アイドル時間の監視メトリックを追加します#21301
    • runtime/traceツールの実行中にスローログを一時的に有効にする#20578
  • TiKV

    • splitコマンドのソースをトレースするタグを追加します#8936
    • pessimistic-txn.pipelined構成の動的変更をサポート#9100
    • バックアップと復元およびTiDB Lightning #9098の実行時のパフォーマンスへの影響を軽減します。
    • 取り込み SST エラーの監視メトリクスを追加#9096
    • 一部のピアがログを複製する必要がある場合にリーダーが休止状態にならないようにする#9093
    • パイプライン化された悲観的ロックの成功率を向上させる#9086
    • デフォルト値のapply-max-batch-sizestore-max-batch-size 1024 #9020に変更します。
    • max-background-flushes設定項目#8947を追加します
    • パフォーマンスを向上させるには、デフォルトでforce-consistency-checksを無効にします#9029
    • リージョンサイズpd heartbeat workersplit check worker #9185に関するクエリをオフロードします。
  • PD

    • TiKV ストアがTombstoneになったときに TiKV クラスターのバージョンを確認します。これにより、ユーザーはダウングレードまたはアップグレードのプロセス中に互換性のない機能を有効にできなくなります#3213
    • 下位バージョンの TiKV ストアをTombstoneからUpに戻すことを禁止します#3206
  • TiDB ダッシュボード

    • SQL文#775の「展開」をクリックすると展開し続けます
    • SQL ステートメントスロー クエリの詳細ページを新しいウィンドウで開く#816
    • スロークエリの詳細#817の時間関連フィールドの説明を改善
    • 詳細なエラーメッセージを表示#794
  • TiFlash

    • レプリカ読み取りのレイテンシーを短縮する
    • TiFlash のエラー メッセージを修正する
    • データ量が大きい場合にキャッシュデータのメモリ使用量を制限する
    • 処理されるコプロセッサ タスクの数の監視メトリックを追加します。
  • ツール

    • バックアップと復元 (BR)

      • コマンド ラインで曖昧な--checksum false引数を使用しないでください。チェックサムは正しく無効になりません。 --checksum=falseのみ受け付けます。 #588
      • BR が誤って存在した後に PD が元の設定を回復できるように、PD 設定の一時的な変更をサポートします#596
      • 復元後のテーブル分析のサポート#622
      • read index not readyproposal in merging modeエラーについては再試行#626
    • TiCDC

      • TiKV の休止リージョン機能を有効にするためのアラートを追加します#1120
      • スキーマstorage#1127のメモリ使用量を削減します。
      • インクリメンタルスキャンのデータサイズが大きい場合にレプリケーションを高速化するユニファイドソーター機能を追加(実験的) #1122
      • TiCDC オープン プロトコル メッセージでの最大メッセージ サイズと最大メッセージ バッチの構成をサポート (Kafka シンクのみ) #1079
    • Dumpling

      • 失敗したチャンクのデータのダンプを再試行します#182
      • -F引数と-r引数の両方の同時構成をサポート#177
      • デフォルトで--filterのシステムデータベースを除外#194
      • --transactional-consistencyパラメータをサポートし、再試行#199中の MySQL 接続の再構築をサポートします。
      • Dumplingで使用される圧縮アルゴリズムを指定するための-c,--compressパラメーターの使用をサポートします。空の文字列は圧縮がないことを意味します。 #202
    • TiDB Lightning

      • デフォルトですべてのシステム スキーマを除外する#459
      • Local-backend または Importer-backend #457の自動ランダム主キーのデフォルト値の設定のサポート
      • 範囲プロパティを使用して、ローカル バックエンド#422での範囲分割をより正確にします。
      • tikv-importer.region-split-sizemydumper.read-block-sizemydumper.batch-size 、およびmydumper.max-region-sizeで人間が判読できる形式 (「2.5 GiB」など) をサポートします#471
    • TiDBBinlog

      • 上流の PD がダウンしている場合、または下流への DDL または DML ステートメントの適用が失敗した場合は、ゼロ以外のコードでDrainerプロセスを終了します#1012

バグの修正

  • TiDB

    • OR条件#21287でプレフィックス インデックスを使用するときに誤った結果が表示される問題を修正しました。
    • 自動再試行が有効になっている場合にpanicを引き起こす可能性があるバグを修正#21285
    • カラムタイプ#21273に応じてパーティション定義をチェックするときに発生するバグを修正
    • パーティション式の値の型がパーティション列の型#21136と一致しないバグを修正
    • ハッシュ型パーティションがパーティション名が一意であるかどうかをチェックしないバグを修正#21257
    • ハッシュパーティションテーブル#21238INT以外のタイプの値を挿入した後に返される間違った結果を修正しました。
    • INSERTステートメントでインデックス結合を使用すると、場合によっては予期しないエラーが発生する問題を修正#21249
    • CASE WHEN演算子のBigInt符号なし列の値が、 BigInt符号付き値#21236に誤って変換される問題を修正します。
    • インデックスハッシュジョインとインデックスマージジョインが照合照合順序#21219を考慮しないバグを修正
    • パーティションテーブルがCREATE TABLESELECT構文での照合順序を考慮しないバグを修正#21181
    • slow_queryのクエリ結果で一部の行が欠落する可能性がある問題を修正します#21211
    • データベース名が純粋な下位表現ではない場合、データが正しく削除されない場合がDELETE問題を修正します#21206
    • DML 操作後にスキーマ変更を引き起こすバグを修正#21050
    • 結合#21021を使用すると結合された列をクエリできないバグを修正
    • 一部の準結合クエリの誤った結果を修正#21019
    • UPDATEステートメント#21002でテーブル ロックが有効にならない問題を修正します。
    • 再帰的ビュー#21001の構築時に発生するスタック オーバーフローの問題を修正します。
    • 外部結合#20954でインデックス マージ ジョイン操作を実行すると返される予期しない結果を修正しました。
    • 結果が不定のトランザクションが失敗として扱われる場合がある問題を修正#20925
    • EXPLAIN FOR CONNECTION最後のクエリプランを表示できない問題を修正#21315
    • Read Committed 分離レベルのトランザクションで Index Merge が使用されると、結果が正しくない場合がある問題を修正します#21253
    • 書き込み競合後のトランザクション再試行によって引き起こされる自動 ID 割り当ての失敗を修正#21079
    • LOAD DATA #21074を使用して JSON データを TiDB に正しくインポートできない問題を修正
    • 新規追加したEnum型カラムのデフォルト値が正しくない問題を修正#20998
    • adddate関数で無効な文字が挿入される問題を修正#21176
    • 状況によっては間違ったPointGetプランが生成されると間違った結果が生じる問題を修正#21244
    • MySQL #20888と互換性を持たせるために、 ADD_DATE関数での夏時間の変換を無視します。
    • varcharまたはcharの長さの制約を超える末尾のスペースを含む文字列を挿入できないバグを修正します#21282
    • intyear #21283を比較するときに、整数が[1, 69]から[2001, 2069]または[70, 99]から[1970, 1999]に変換されないバグを修正
    • Double型フィールド#21272を計算するときにsum()関数の結果がオーバーフローすることによって引き起こされるpanicを修正しました。
    • DELETEユニークキー#20705へのロックの追加に失敗するバグを修正
    • スナップショットの読み取りがロック キャッシュにヒットするバグを修正#21539
    • 存続期間の長いトランザクションで大量のデータを読み取った後の潜在的なメモリリークの問題を修正します#21129
    • サブクエリでテーブル エイリアスを省略すると構文エラー#20367が返される問題を修正します。
    • クエリ内のIN関数の引数が時刻型の場合、クエリが不正な結果を返すことがある問題を修正します#21290
  • TiKV

    • 255 を超える列がある場合にコプロセッサーが間違った結果を返す可能性がある問題を修正します#9131
    • ネットワーク パーティション#9108でリージョンマージによりデータ損失が発生する可能性がある問題を修正
    • latin1文字セット#9082を使用する場合、 ANALYZEステートメントでpanicが発生する可能性がある問題を修正します。
    • 数値型を時間型#9031に変換するときに返される間違った結果を修正しました。
    • 透過的データ暗号化 (TDE) が有効になっている場合、 TiDB Lightning がインポーター バックエンドまたはローカル バックエンドを使用して TiKV に SST ファイルを取り込むことができないバグを修正します#8995
    • 無効なadvertise-status-addr値を修正 ( 0.0.0.0 ) #9036
    • コミットされたトランザクションでこのキーがロックされ削除された場合、キーが存在することを示すエラーが返される問題を修正します#8930
    • RocksDB キャッシュ マッピング エラーによりデータ破損が発生する問題を修正#9029
    • リーダーが転送された後、Follower Readが古いデータを返す場合があるバグを修正#9240
    • 悲観的ロック#9282で古い値が読み込まれる可能性がある問題を修正
    • リーダー転送#9240後にレプリカの読み取りが古いデータを取得する可能性があるバグを修正
    • プロファイリング#9229後にSIGPROF受信すると TiKV がクラッシュする問題を修正
  • PD

    • 配置ルールで指定したリーダーの役割が有効にならない場合がある問題を修正#3208
    • trace-region-flowの値が予期せずfalse #3120に設定される問題を修正
    • 無限の Time To Live (TTL) を持つサービス セーフポイントが機能しないバグを修正#3143
  • TiDB ダッシュボード

    • 中国語での時間の表示の問題を修正#755
    • ブラウザ互換性通知が機能しないバグを修正#776
    • 一部のシナリオ#793でトランザクションstart_tsが正しく表示されない問題を修正
    • 一部の SQL テキストの形式が正しくない問題を修正#805
  • TiFlash

    • INFORMATION_SCHEMA.CLUSTER_HARDWAREに使用されていないディスクの情報が含まれる可能性がある問題を修正
    • デルタキャッシュのメモリ使用量の見積もりが実際の使用量よりも小さい問題を修正
    • スレッド情報統計によるメモリリークを修正
  • ツール

    • バックアップと復元 (BR)

      • S3 シークレット アクセス キーの特殊文字によって引き起こされる障害を修正#617
    • TiCDC

      • 所有者のキャンペーン キーを削除すると複数の所有者が存在する可能性がある問題を修正#1104
      • TiKV ノードがクラッシュしたとき、またはクラッシュから回復したときに、TiCDC がデータのレプリケーションを続行できない可能性があるバグを修正しました。このバグは v4.0.8 にのみ存在します。 #1198
      • テーブルが初期化される前にメタデータが繰り返し etcd にフラッシュされる問題を修正します#1191
      • スキーマstorageがTiDB テーブル#1114をキャッシュするときに、初期の GC または更新TableInfoのレイテンシーによって引き起こされるレプリケーションの中断の問題を修正します。
      • DDL 操作が頻繁に行われる場合、スキーマstorageのメモリ消費量が多すぎる問題を修正します#1127
      • チェンジフィードが一時停止または停止したときの goroutine リークを修正#1075
      • Kafka プロデューサーの最大再試行タイムアウトを 600 秒に増やし、ダウンストリーム Kafka #1118のサービスまたはネットワーク ジッターによって引き起こされるレプリケーションの中断を防ぎます。
      • Kafkaのバッチサイズが反映されないバグを修正#1112
      • TiCDC と PD の間のネットワークにジッターがあり、一時停止された変更フィードが同時に再開されている場合、一部のテーブルの行変更が失われる可能性があるバグを修正します#1213
      • TiCDC と PD 間のネットワークが安定していない場合、TiCDC プロセスが終了する可能性があるバグを修正#1218
      • TiCDC でシングルトン PD クライアントを使用し、TiCDC が誤って PD クライアントを閉じてレプリケーション ブロック#1217を引き起こすバグを修正しました。
      • TiCDC 所有者が etcd 監視クライアント#1224でメモリを過剰に消費する可能性があるバグを修正
    • Dumpling

      • MySQL データベースサーバーへの接続が閉じられたときにDumpling がブロックされる可能性がある問題を修正します#190
    • TiDB Lightning

      • キーが間違ったフィールド情報を使用してエンコードされる問題を修正#437
      • GC ライフタイム TTL が有効にならない問題を修正#448
      • ローカル バックエンド モード#484で実行中のTiDB Lightning を手動で停止するとpanicが発生する問題を修正します。

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

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