TiDB 3.0.14 リリースノート

発売日:2020年5月9日

TiDB バージョン: 3.0.14

互換性の変更

  • TiDB

    • performance_schemametrics_schemaのユーザー権限を読み取り/書き込みから読み取り専用に調整する#15417

重要なバグ修正

  • TiDB

    • handle属性#15734のカラムでjoin条件に複数の同等条件がある場合、 index joinのクエリ結果が正しくない問題を修正
    • handle属性#16079の列に対してfast analyze操作を行うとpanicが発生する問題を修正
    • prepareの方法で DDL ステートメントを実行すると、DDL ジョブ構造のqueryフィールドが正しくない問題を修正します。この問題により、 Binlogがデータ レプリケーションに使用されている場合、アップストリームとダウンストリームの間でデータの不整合が発生する可能性があります。 #15443
  • TiKV

    • ロックのクリーンアップでリクエストを繰り返すと、トランザクションの原子性が失われる可能性があるという問題を修正します#7388

新機能

  • TiDB

    • admin show ddl jobsステートメント#16428のクエリ結果にスキーマ名列とテーブル名列を追加します。
    • RECOVER TABLE構文を拡張して、切り捨てられたテーブルの回復をサポートする#15458
    • SHOW GRANTSステートメント#16168の権限チェックをサポート
    • LOAD DATAステートメント#16736の権限チェックをサポート
    • 時刻と日付に関連する関数がパーティション キーとして使用される場合のパーティション プルーニングのパフォーマンスを向上させます#15618
    • dispatch errorのログレベルをWARNからERROR #16232に調整します
    • クライアントに TLS #15415の使用を強制するrequire-secure-transportの起動オプションをサポート
    • TLS が構成されている場合、TiDB コンポーネント間の HTTP 通信をサポートします#15419
    • start_ts現在のトランザクションの情報をinformation_schema.processlistテーブルに追加します#16160
    • クラスタ間の通信に使用される TLS 証明書情報の自動リロードをサポート#15162
    • パーティションプルーニングを再構築することにより、パーティション化されたテーブルの読み取りパフォーマンスを向上させます#15628
    • rangeパーティション テーブル#16521のパーティション式としてfloor(unix_timestamp(a))が使用される場合、パーティション プルーニング機能をサポートします。
    • viewを含み、 view #16787を更新しないupdateステートメントの実行を許可する
    • ネストしたview s #15424の作成を禁止する
    • 切り捨て禁止view #16420
    • この列がpublic状態でない場合、 updateステートメントを使用して列の値を明示的に更新することを禁止する#15576
    • statusポート占有時の TiDB 起動禁止#15466
    • current_role関数の文字セットをbinaryからutf8mb4に変更します#16083
    • 新しいリージョンのデータが読み込まれるときに割り込み信号をチェックすることで、 max-execution-timeの使いやすさが向上します#15615
    • auto_id #16287のキャッシュ ステップを明示的に設定するためのALTER TABLE ... AUTO_ID_CACHE構文を追加します。
  • TiKV

    • 楽観的なトランザクションで競合が多く、 BatchRollbackの条件が存在する場合のパフォーマンスを向上させます#7605
    • 悲観的トランザクションに多くの競合が存在する場合、悲観的ロックwaiterが頻繁に起こされるために発生するパフォーマンスの低下の問題を修正します#7584
  • ツール

    • TiDB Lightning

      • tidb-lightning-ctl #287fetch-modeサブコマンドを使用した TiKV クラスター モードの印刷をサポート

バグの修正

  • TiDB

    • SQL モードがALLOW_INVALID_DATES #16170の場合、 WEEKENDの関数が MySQL と互換性がない問題を修正
    • インデックス列に自動インクリメント主キー#16008が含まれている場合、 DROP INDEXステートメントの実行に失敗する問題を修正します。
    • ステートメントの概要#15231TABLE_NAMES列の値が正しくない問題を修正します。
    • プラン キャッシュが有効になっている場合、一部の式の結果が正しくない問題を修正します#16184
    • not / istrue / isfalse関数の結果が正しくない問題を修正#15916
    • MergeJoin冗長インデックスを持つテーブルでの操作によって引き起こされるpanicを修正します#15919
    • 述語が外部テーブルのみを参照している場合に、リンクを誤って単純化することによって引き起こされる問題を修正します#16492
    • CURRENT_ROLE関数がSET ROLEステートメントに起因するエラーを報告する問題を修正します#15569
    • このステートメントが\ #16633に遭遇すると、 LOAD DATAステートメントの結果が MySQL と互換性がないという問題を修正します。
    • データベースの可視性が MySQL #14939と互換性がないという問題を修正
    • SET DEFAULT ROLE ALLステートメント#15585の権限チェックが正しくない問題を修正
    • プラン キャッシュが原因でパーティション プルーニングが失敗する問題を修正します#15818
    • トランザクションが関連するテーブルをロックしないため、テーブルで同時 DDL 操作が実行され、ブロックが存在する場合、トランザクションのコミット中にschema changeが報告される問題を修正します#15707
    • IF(not_int, *, *) #15356の誤った動作を修正
    • CASE WHEN (not_int) #15359の誤った動作を修正
    • 現在のスキーマ#15866にないviewを使用するとUnknown columnエラー メッセージが返される問題を修正します。
    • 時刻文字列の解析結果が MySQL #16242と互換性がない問題を修正
    • 右側の子ノード#16528null列が存在する場合にleft joinの照合順序演算子がpanicになる可能性がある問題を修正しました
    • TiKV がStaleCommandエラー メッセージ#16528を返し続けると、SQL 実行がブロックされているにもかかわらず、エラー メッセージが返されない問題を修正します。
    • 監査プラグインが有効になっているときにポートプローブによって引き起こされる可能性のあるpanicを修正します#15967
    • fast analyzeがインデックスのみで動作するときに発生するpanicを修正します#15967
    • 場合によってはSELECT * FROM INFORMATION_SCHEMA.PROCESSLISTステートメントの実行で発生する可能性のあるpanicを修正します#16309
    • メモリを割り当てる前にパーティションの数を確認せずにハッシュ パーティション テーブルを作成すると、多数のパーティション (たとえば9999999999999 ) を指定することによって発生する TiDB OOM の問題を修正します#16218
    • information_schema.tidb_hot_table #16726で分割されたテーブルの誤った情報の問題を修正します。
    • パーティション選択アルゴリズムがハッシュ パーティション テーブルで有効にならない問題を修正します#16070
    • MVCCシリーズのHTTP APIが分割テーブルに対応していない問題を修正#16191
    • UNIONステートメントのエラー処理とSELECTステートメントのエラー処理の一貫性を保つ#16137
    • VALUES関数のパラメーターの型がbit(n) #15486の場合に正しく動作しない問題を修正
    • viewカラム名が長すぎると、TiDBの処理ロジックがMySQLと矛盾する問題を修正。この場合、システムは短い列名を自動的に生成します。 #14873
    • (not not col)col #16094として誤って最適化される問題を修正
    • IndexLookupJoinのプランで構築された内部テーブルのrangeが正しくない問題を修正#15753
    • only_full_group_byが括弧付きの式を正しくチェックできない問題を修正#16012
    • select view_name.col_name from view_name文実行時にエラーが返る問題を修正#15572
  • TiKV

    • 隔離復旧後、ノードを正常に削除できない場合がある問題を修正#7703
    • リージョン Merge 操作によるネットワーク分離中のデータ損失の問題を修正します#7679
    • 学習者を正しく削除できない場合がある問題を修正#7598
    • 生のキーと値のペアのスキャン結果が順不同である可能性がある問題を修正します#7597
    • Raftメッセージのバッチが大きすぎる場合の再接続の問題を修正します#7542
    • 空のリクエストによって引き起こされる gRPC スレッドのデッドロックの問題を修正します#7538
    • マージ処理中に学習器を再起動する処理ロジックが正しくない問題を修正#7457
    • ロックのクリーンアップでリクエストを繰り返すと、トランザクションの原子性が失われる可能性があるという問題を修正します#7388
エコシステム
TiDB
TiKV
TiSpark
Chaos Mesh
© 2022 PingCAP. All Rights Reserved.