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

TiDB3.0.14リリースノート

発売日:2020年5月9日

TiDBバージョン:3.0.14

互換性の変更

  • TiDB

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

重要なバグ修正

  • TiDB

    • join条件がhandle属性#15734の列に複数の同等の条件を持っている場合、 index joinのクエリ結果が正しくない問題を修正します。
    • handle属性#16079の列でfast analyze操作を実行するときに発生するpanicを修正します
    • DDLステートメントがprepareの方法で実行されると、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から#16232に調整しERROR
    • クライアントに#15415の使用を強制するrequire-secure-transportのスタートアップオプションをサポートする
    • TLSが構成されている場合にTiDBコンポーネント間のHTTP通信をサポートする#15419
    • 現在のトランザクションのstart_tsの情報をinformation_schema.processlistのテーブルに追加します#16160
    • クラスタ間の通信に使用されるTLS証明書情報の自動再読み込みをサポート#15162
    • パーティションプルーニングを再構築することにより、パーティションテーブルの読み取りパフォーマンスを向上させます#15628
    • rangeパーティションテーブル#16521のパーティション式としてfloor(unix_timestamp(a))が使用されている場合、パーティションプルーニング機能をサポートします。
    • viewを含み、 #16787を更新しないupdateステートメントの実行を許可しview
    • #15424されたviewの作成を禁止する
    • #16420を禁止するview
    • この列がpublic状態でない場合、 updateステートメントを使用して列の値を明示的に更新することを禁止します#15576
    • statusポートが占有されているときにTiDBを開始することを禁止します#15466
    • current_role関数の文字セットをbinaryから#16083に変更しutf8mb4
    • 新しいリージョンのデータが読み取られたときに割り込み信号をチェックすることにより、 max-execution-timeの使いやすさを向上させます#15615
    • #16287のキャッシュステップを明示的に設定するためのALTER TABLE ... AUTO_ID_CACHE構文を追加しauto_id
  • TiKV

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

    • TiDB Lightning

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

バグの修正

  • TiDB

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

    • 場合によっては、分離リカバリ後にノードを正しく削除できないという問題を修正します#7703
    • リージョンマージ操作によって引き起こされるネットワーク分離中のデータ損失の問題を修正します#7679
    • 場合によっては学習者を正しく削除できない問題を修正します#7598
    • 生のキーと値のペアのスキャン結果が順序どおりにならない可能性がある問題を修正します#7597
    • Raftメッセージのバッチが大きすぎる場合の再接続の問題を修正します#7542
    • 空のリクエストによって引き起こされるgRPCスレッドのデッドロックの問題を修正します#7538
    • マージプロセス中に学習者を再起動する処理ロジックが正しくないという問題を修正します#7457
    • ロックのクリーンアップで繰り返し要求すると、トランザクションの原子性が破壊される可能性があるという問題を修正します#7388