TiDB 3.0.5 リリースノート

発売日:2019年10月25日

TiDB バージョン: 3.0.5

TiDB アンシブル バージョン: 3.0.5

TiDB

  • SQL オプティマイザー
    • Window 関数の境界チェックをサポート#12404
    • パーティション テーブルのIndexJoinが間違った結果を返す問題を修正#12712
    • 外部結合Apply演算子の上部にあるifnull関数が間違った結果を返す問題を修正します#12694
    • UPDATE #12597where条件にサブクエリが含まれていると更新に失敗する問題を修正
    • cast関数がクエリ条件に含まれている場合、外部結合が内部結合に誤って変換される問題を修正#12790
    • AntiSemiJoin #12799の結合条件で誤った式を渡す問題を修正
    • 統計の初期化時に浅いコピーによって引き起こされる統計エラーを修正します#12817
    • 日付文字列とフォーマット文字列が一致しない場合、TiDB のstr_to_date関数が MySQL とは異なる結果を返す問題を修正します#12725
  • SQL 実行エンジン
    • from_unixtime関数が null #12551を処理するときのpanicの問題を修正
    • DDL ジョブのキャンセル時に報告されたinvalid list indexのエラーを修正#12671
    • ウィンドウ関数使用時に配列が範囲外になる問題を修正#12660
    • AutoIncrement列が暗黙的に割り当てられた場合の動作を改善し、MySQL 自動インクリメント ロックのデフォルト モードとの一貫性を保ちます ( 「連続」ロックモード ): 1 行のInsertステートメントで複数のAutoIncrement ID を暗黙的に割り当てる場合、TiDB は割り当てられた値の連続性。この改善により、JDBC getGeneratedKeys()メソッドがどのシナリオでも正しい結果を得ることが保証されます。 #12602
    • HashAggApply #12766の子ノードになるとクエリがハングアップする問題を修正
    • 型変換時にANDORの論理式が間違った結果を返す問題を修正#12811
  • サーバ
    • 後で大規模なトランザクションをサポートできるようにトランザクション TTL を変更するインターフェイス関数を実装する#12397
    • 悲観的なトランザクションをサポートするために、必要に応じてトランザクション TTL を延長するサポート (最大 10 分) #12579
    • TiDB がスキーマの変更とそれに対応する変更されたテーブル情報をキャッシュする回数を 100 から 1024 に調整し、 tidb_max_delta_schema_countシステム変数#12502を使用して変更をサポートします
    • kvrpc.Cleanupプロトコルの動作を更新して、残業していないトランザクションのロックを消去しないようにします#12417
    • information_schema.tablesテーブル#12631へのパーティション テーブル情報のロギングをサポート
    • region-cache-ttl #12683を構成することにより、リージョンキャッシュの TTL の変更をサポートします。
    • 実行計画の圧縮エンコードされた情報のスロー ログへの出力をサポートします。この機能はデフォルトで有効になっており、 slow-log-plan構成またはtidb_record_plan_in_slow_log変数を使用して制御できます。さらに、 tidb_decode_plan関数は、スロー ログ内の実行計画列のエンコードされた情報を実行計画情報にデコードできます。 #12808
    • information_schema.processlistテーブルでのメモリ使用量情報の表示をサポート#12801
    • TiKV クライアントがアイドル状態の接続を判断すると、エラーや予期しないアラームが発生する可能性がある問題を修正します#12846
    • tikvSnapshotBatchGet() #12872の KV 結果を適切にキャッシュしないため、 INSERT IGNOREステートメントのパフォーマンスが低下する問題を修正します。
    • 一部の KV サービスへの接続が遅いため、TiDB の応答速度が比較的遅かった問題を修正しました#12814
  • DDL
    • Create Tableの操作で Set 列#12267の Int 型のデフォルト値が正しく設定されない問題を修正
    • Create Tableステートメントで一意のインデックスを作成するときに複数のuniqueをサポートします#12463
    • Alter Table #12489を使用してビット タイプの列を追加するときに、既存の行にこの列の既定値を入力するとエラーが発生する可能性があるという問題を修正します。
    • 範囲分割テーブルが日付型または日時型の列を分割キーとして使用している場合に、分割を追加できない問題を修正します#12815
    • Date または Datetime 型の列をパーティション キーとして使用する Range パーティション テーブルについて、テーブルの作成時またはパーティションの追加時に、パーティションの種類とパーティション キーの種類の整合性チェックをサポートし#12792
    • レンジ パーティション分割されたテーブル#12718を作成するときに、一意のキー列セットがパーティション分割された列セット以上である必要があるというチェックを追加します。
  • モニター
    • コミットおよびロールバック操作のモニタリング メトリックをダッシュボードに追加するTransaction OPS #12505
    • Add Index操作の進行状況の監視メトリクスを追加#12390

TiKV

  • 保管所
    • ペシミスティック トランザクションの新機能を追加: トランザクション クリーンアップ インターフェイスは、TTL が古いロックのクリーンアップのみをサポートします#5589
    • トランザクションのロールバック主キーが崩れる問題を修正#5646 , #5671
    • 悲観的ロックの下で、ポイント クエリが以前のバージョンのデータを返す可能性があるという問題を修正します#5634
  • ラフトストア
    • Raftstore でのメッセージ フラッシュ操作を減らしてパフォーマンスを改善し、CPU 使用率を削減する#5617
    • リージョンサイズとキーの推定数を取得するコストを最適化し、ハートビートのオーバーヘッドと CPU 使用率を削減します#5620
    • 無効なデータを取得すると、Raftstore がエラー ログを出力してpanicが発生する問題を修正します#5643
  • エンジン
    • RocksDB force_consistency_checksを有効にしてデータの安全性を向上させる#5662
    • Titan での同時フラッシュ操作がデータ損失を引き起こす可能性があるという問題を修正します#5672
    • L0 内圧縮による#5710のクラッシュと再起動の問題を回避するために、rust-rocksdb のバージョンを更新します。

PD

  • リージョン#1782が占有するストレージの精度を向上させる
  • --helpコマンド#1763の出力を改善する
  • TLS が有効になった後、HTTP 要求がリダイレクトに失敗する問題を修正します#1777
  • pd-ctl がstore shows limitコマンド#1808を使用するときに発生したpanicの問題を修正します。
  • ラベル監視メトリクスの読みやすさを改善し、リーダーが切り替わったときに元のリーダーの監視データをリセットして、誤ったレポートを回避します#1815

ツール

  • Binlog
    • ALTER DATABASE関連する DDL 操作によってDrainerが異常終了する問題を修正#769
    • コミット バイナリログのトランザクション ステータス情報のクエリをサポートして、レプリケーションの効率を向上させます#757
    • Drainer のstart_tsが Pump の最大のcommit_ts #758より大きい場合、 Pumppanicが発生する可能性がある問題を修正します。
  • TiDB Lightning
    • ローダーの完全なロジック インポート機能を統合し、バックエンド モードの構成をサポートします#221

TiDB アンシブル

  • インデックス速度#986を追加するモニタリング メトリックを追加します。
  • 構成ファイルの内容を簡素化し、ユーザーが構成する必要のないパラメーターを削除します#1043c#998
  • パフォーマンスリード、パフォーマンスライト#e90e7の監視式エラーを修正
  • Raftstore CPU使用率#992の監視表示方法とアラームルールを更新
  • オーバービュー モニタリング ダッシュボードの TiKV CPU モニタリング アイテムを更新して、余分なモニタリング コンテンツを除外します#1001
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.