tencent cloud

TDSQL-C for MySQL

TXSQLエンジンのカーネルバージョン更新情報

PDF
フォーカスモード
フォントサイズ
最終更新日: 2026-03-17 11:16:57
本ドキュメントでは、TDSQL-C for MySQL TXSQLエンジンのカーネルバージョン更新情報をご紹介します。
説明:
アップグレードが必要な場合は、「カーネルマイナーバージョンのアップグレード」をご参照ください。各カーネルバージョンのリリース日時については、「カーネルバージョンリリース日時」をご参照ください。
以下の表のコミュニティバージョンは、各TDSQL-C for MySQLのカーネルマイナーバージョンに対応するオープンソースバージョンを示しています。
TXSQLエンジン8.0のカーネル更新情報
TXSQLエンジン5.7のカーネル更新情報
マイナーバージョン
コミュニティバージョン
説明
3.1.17.002
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能更新
cdb_kill_user_extraで複数アカウント設定をサポートしました。
読み取り専用インスタンスのホットリスタート機能をサポートしました。読み取り専用インスタンスがログ適用問題によりクラスターから除外された場合、bufferpool、各種キャッシュ、rpl_sysをリセットして最新のレプリケーションポイントに追いつくためにホットリスタートを実行します。
複数のデータ型のデフォルト値サポートを追加しました。
対象データ型:BLOB、TEXT、GEOMETRY、JSON。
リテラル構文によるフィールドデフォルト値の設定をサポートしました。
ROW形式の比較式を通常の比較式に分解・展開し、オプティマイザのより多くの機能を活用できるようになりました。
slow logで統計情報に基づく推定情報機能を追加しました。
冗長range削除機能をサポートしました。
limit offsetの計算プッシュダウンをサポートしました。
sum/countの計算プッシュダウンをサポートしました。
Fast Path機能をサポートしました。
論理先読み機能をサポートしました。
btreeマージ時の予約領域による頻繁な分割・マージの防止をサポートしました。
Abbreviated Sortkey最適化をサポートしました。
ccl(Concurrency Control)機能をサポートしました。
データベースプロキシのトランザクション内読み書き分離をサポートしました。
データベースプロキシのトランザクション継続をサポートしました。
cdcコンポーネントのシームレスアップグレードをサポートしました。
パフォーマンス最適化
書き込み負荷増加時の読み取り専用インスタンスのログ再生遅延問題を最適化しました。
cdc_flink_userパラメータの使用ロジックを最適化しました。enable_default_cdc_flink_userパラメータを有効にすると、すべてのユーザー動作がflink_userとして扱われます。flink_userでデータサブスクリプションロジックを最適化しました。
大きなIN述語で最適化や実行に時間がかかる場合、シナリオによってはIN述語の値を一時テーブルに格納し、JOINによって実行を最適化することが可能となりました。
グローバルインデックスのdrop partition動作を最適化しました。
問題修正
列圧縮機能で255バイト長の文字列を処理する際にクラッシュする問題を修正しました。
innodb_ncdb_stats_update_min_intervalの設定可能な最大値を10000に制限し、18446744073709551615に設定すると起動時にクラッシュする問題を防止しました。
読み取り専用インスタンスでalter userコマンドを実行するとクラッシュする問題を修正しました。
query_rewriteのrefresh実行時に、読み取り専用インスタンスがクラッシュする不具合を修正しました。
I_S.PROCESSLISTにおける解放済みメモリ参照の不具合を修正しました。
並列DDLスレッドの作成に失敗した場合にDDLが永久にブロックされる問題を修正しました。
複数パーティションを持つテーブルで、未コミットの大量パーティション変更がある場合のMySQL再起動時OOM問題を修正しました。
Instant DDLで列名の大文字・小文字の不一致を正しく処理できない問題を修正しました。
3.1.17.001
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能更新
BinlogのFlushフェーズにおいて、Binlogの準備と書き込みの並列実行をサポートしました。
読み取り専用インスタンスでAHI(アダプティブハッシュインデックス)をサポートしました。
読み取り専用インスタンスでMydumperマルチスレッド論理バックアップをサポートしました。
1MBレベルの小規模テーブルの分散機能をサポートしました。
スレッドプールの自動最適化をサポートしました。
パーティションテーブル関連のCopyアルゴリズムを使用するDDLの並列実行をサポートしました。
複数列の統計情報機能をサポートしました。
コストベースの候補インデックス推奨をサポートしました。入力されたSQLステートメントに基づいて作成すべきインデックスを推奨できます。
多段階集約演算の並列実行機能をサポートしました。
ホットスポット更新でユニークキーをサポートしました。
GB18030-2022をサポートしました。
監査ログで明示的トランザクションのトランザクションIDをサポートしました。
パフォーマンス最適化
インスタンスでBinlogを有効にした場合のトランザクションコミットフローを最適化しました。
全文インデックステーブルへの大量書き込み時のトランザクションコミット速度を最適化しました。
トランザクションビューのリフレッシュ設定を最適化しました。
インデックスダイブのプルーニングを最適化し、より長いインデックスが見つかりやすくなりました。
列指向ストレージ関連の最適化:
union all / union / materialize演算子のプッシュダウンをサポートしました。
混合Join文のプッシュダウンをサポートしました。
group_concat式をサポートしました。
JSON列でのCSIインデックス作成をサポートし、列ストアがサポートする最大列長を拡張しました。
パラメータcolumnstore_buffer_pool_sizeの単位をMBからBYTEに変更しました。
大量のパーティションテーブルへのパーティション追加速度を最適化しました。
大規模トランザクションのBinlogコミット最適化により、binlog_order_commits制限を解除しました(binlog_order_commits = ONが厳密に要求されなくなりました)。
問題修正
データベースを複数回切り替えると、独立したBuffer Poolで誤ったredoが生成される問題を修正しました。
mlog_open_and_write_index関数でredo必要メモリサイズを計算する際にorder変更列が考慮されず、割り当てメモリが不足する可能性がある問題を修正しました。また、読み取り専用インスタンスでパラメータinnodb_backquery_enableを変更するとエラーが発生する問題も修正しました。
読み取り専用インスタンスでパラメータinnodb_backquery_enableを変更するとエラーが発生する問題を修正しました。
システムクロックが逆行した場合にPFS_histogram::increment_bucketでメモリ境界オーバーランが発生する可能性がある問題を修正しました。
グローバルセカンダリインデックスとパーティションテーブルに関連するシナリオにおいて、暗黙的ロック判定フローでパーティションコンテキスト切り替えが正しく処理されないことによる異常問題を修正しました。
プレフィックスインデックスとパーティションテーブルに関連するシナリオにおいて、トランザクションロールバック時に暗黙的ロック判定が必要な場合、グローバルセカンダリインデックスのテーブル参照操作がパーティションコンテキストを正しく切り替えられないためシステム異常が発生する可能性がある問題を修正しました。
テンプレートを使用せずに作成した二次パーティションで、テンプレートを使用してtruncateを実行した際に異常が発生する問題を修正しました。
パーティションテーブルのロールバック操作において、データディクショナリキャッシュのクリア時にテーブル名のプレフィックスマッチングのみが使用され、同名プレフィックスを持つ他のテーブルのキャッシュが誤って削除されてシステム異常が発生する問題を修正しました。
maxvalueを持つ二次パーティションテーブルでcreate table likeを実行する際にクラッシュする可能性がある問題を修正しました。
SELECTのアクセスキーが主キーで、SELECTリストにすべてのパーティションキーが含まれていない場合にグローバルインデックスがクラッシュする問題を修正しました。
グローバルインデックスでプルーニングされたパーティションのレコードがスキャンされるとクラッシュする問題を修正しました。
MurmurHashで文字の照合順序(collate)情報が考慮されず、グローバルインデックスがクラッシュする問題を修正しました。
パーティションが1つしかない場合に、二次パーティションがtruncateされるとエラーが発生する問題を修正しました。
パーティションテーブルが破損すると、グローバルインデックスがクラッシュする問題を修正しました。
グローバルインデックスに対するdrop sbupartition template操作が失敗した場合に、rollbackパスでクラッシュする問題を修正しました。
ユニークグローバルインデックスにおいて、Online Logの適用順序と実際の書き込み順序が一致しないためユニークインデックスの作成に失敗する問題を修正しました。
テーブルを開く際に未コミットのグローバルインデックスを使用するとクラッシュする問題を修正しました。
Instant列を追加した後に、主キーを再構築するとクラッシュする問題を修正しました。
グローバルインデックスのrollback時に、メモリリークが発生する問題を修正しました。
グローバルユニークインデックスを作成するDDLタスクの実行時に、テーブルに重複データが既に存在していると、rollback時に読み取り不可能なエラーが発生する問題を修正しました。
グローバルインデックステーブルにおいて、prebuilt->mysql_templateで初期化されていないpartition keyフィールドをコピーすることにより、メモリ境界を超えた書き込みが発生してクラッシュする問題を修正しました。
add partition時に、subpartition templateのコピープロセスで読み取り境界のオーバーランが発生する問題を修正しました。
ユーザーが非UTF8文字セットの中国語を使用する場合に、監査ログのフロントエンドクエリで文字化けが発生する可能性がある問題を修正しました。
partition_idのオーバーフローにより、truncate partitionがクラッシュする問題を修正しました。
特殊文字を含むパーティションテーブルに対してDDLを実行する際に、読み取り専用インスタンスでテーブルキャッシュをクリアするとクラッシュする問題を修正しました。
並列パーティションの変更により、ロックタイムアウトが引き起こされる問題を修正しました。
Query Cache関連の問題修正:
Query Cacheにおいて、監査をサポートしました。
Query Cacheにおいて、読み書きシナリオで低並行処理時に高いパフォーマンス低下が発生する可能性がある問題を修正しました。
Query Cacheの並行処理において、thdメモリが不正に変更される可能性がわずかにある問題を修正しました。
Query Cacheのメモリが満杯になると、flush table/reset query cacheの操作でメモリ異常が発生する問題を修正しました。
Query Cacheで複数のテーブルをキャッシュしているキューがある場合に、これらのテーブルの並行を無効化すると異常が発生する問題を修正しました。
ごみ箱関連の操作を実行する際に、監査ログのTableNameフィールドに異常が発生する問題を修正しました。
仮想インデックス評価時にformat=json形式で表示され、実際の物理テーブルを表示する際にテーブル名が切り捨てられる問題を修正しました。
bigint型のヒストグラムインポート時にエラーが発生する問題を修正しました。
srv_skip_dive_for_uniqueにおいて、極端な状況でオーバーフローする問題を修正しました。
Copy DDLの実行後に統計情報がゼロにリセットされる可能性がある問題を修正しました。
データベースプロキシのchange userとshow processlistの並行実行によってデッドロックが発生する問題を修正しました。
show processlistの実行によってインスタンスがクラッシュする問題を修正しました。
3.1.16.006
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
問題修正
pddlが関数インデックスを使用したことによりインスタンスクラッシュが発生する問題を修正しました。
gsiテーブルでcheck tableを実行した際にインスタンスクラッシュが発生する問題を修正しました。
gb18030エンコーディングの対応およびエンコーディング異常に関する問題を修正しました。
全文検索インデックス使用時に発生する可能性のあるメモリ異常問題を修正しました。
COS外部テーブル機能を使用してtimeフィールドをクエリする際に発生する「ERROR 1194 (HY000): Table 't1' is marked as crashed and should be repaired」エラー問題を修正しました。
set global txsql_cos_server_data_visiable=OFF を設定した後、コマンドラインパラメータ mysqldump --txsql_cos_server_data_visiable=ON を使用して COS 外部テーブルデータをエクスポートする際に失敗する問題を修正しました。
cdc_flink_userアカウントを使用してサードパーティクライアントからshow binary logsコマンドを実行する際に発生する実行エラー問題を修正しました。
データベース名に特殊文字が含まれている場合、そのデータベース内のパーティションテーブルでDDL操作を実行した後に読み取り専用インスタンスでクラッシュが発生する問題を修正しました。
txsql_convert_redundant_to_dynamicパラメータを有効にする際、Default row formatをレデュンダントに設定した場合にテーブル作成時にダイナミックに変換されない問題を修正しました。
テーブルスペースが64Tに達した後に無限デッドループを引き起こす問題を修正しました。
接続が多すぎてsync_wait_arrayの予約領域が満杯になった場合、システムがチェックを実行している過程で配列アクセスが境界を超える問題を修正しました。
RTreeでSMOが発生した際にリドログの書き漏らしが発生する可能性があり、カーネルとストレージのデータ不一致を引き起こす問題を修正しました。
読み取り専用インスタンスでACL最適化の再生中に、ユーザースレッドがクエリ中にhandle_reload_requestを自発的に呼び出し、クエリ中のテーブルを閉じてしまい、結果として読み取り専用インスタンスのクラッシュを引き起こす可能性がある問題を修正しました。
select countステートメントで主キーインデックスを強制的に使用してスキャンする問題を修正しました。
3.1.16.003
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
問題修正
並列クエリ機能に関連する問題を修正しました。
並列クエリプランの判定時に、Skip Scanが既に解放されたメモリにアクセスしてクラッシュする可能性がある問題を修正しました。
並列クエリのAgg Pass Throughで並列パーティションの変更に失敗した場合でも有効となり、クエリ結果が誤る可能性がある問題を修正しました。
並列クエリでパーティションテーブルを処理する際、あるパーティションで並列パーティションが見つからない場合に異常クラッシュする問題を修正しました。
並列クエリでCoordinatorとWorkerで異なるトランザクションビューが使用され、Workerのトランザクションビューが期限切れになりクラッシュする可能性がある問題を修正しました。
並列クエリ機能において、並列パーティションが現在のページロックを保持している状態で前のページロックを申請するとデッドロックが発生する可能性がある問題を修正しました。
並列クエリでCursor Protocolステートメントを実行する際、WorkerでQuery Result一時テーブルが誤って使用されてクラッシュする問題を修正しました。
並列レプリケーション機能に導入された新しいR-Treeログによって引き起こされるIO Timeout問題を修正しました。
TempTable一時エンジンを使用してCTEクエリを実行する際に「テーブルが存在しない」エラーが発生する問題を修正しました(公式修正Bug #33814188)。
Redundantテーブルに対してInstant/Inplace DDLを実行するとクラッシュし、インスタンスが起動できなくなるリスク問題を修正しました。
大量のDCL実行時に、読み取り専用インスタンスの再生速度が著しく低下する問題を最適化しました。
一部のシナリオにおいて、読み取り専用インスタンスで異常なデータページが読み取られてクラッシュする問題を修正しました。
個別レコードの頻繁な挿入とロールバックによりB-Treeの頻繁なSMOが発生し、ストレージにスパイクが生じる問題を修正しました。
Statement Outlineに関連する問題を修正しました。
Statement Outlineにおいて、Parallel Queryをサポートしていなかった問題を修正しました。
Statement Outlineにおいて、Warningsを失う問題を修正しました。
EXPLAINステートメントのOutlineルールマッチングに関するいくつかの問題を修正しました。
ステートメントの切り捨て発生時に、ルールを誤ってマッチングしてしまう問題を修正しました。
Hintsでハッシュコメント文字を送信できない問題を修正しました。
Outlineルールの末尾にセミコロンがある場合にマッチングできない問題を修正しました。
Cdb Outlineで監査ログやその他のログがクラッシュする問題を修正しました。
Crash Recovery時にコミット待ちトランザクションがクリアされず、後続のクラッシュが繰り返される問題を修正しました。
3.1.16.002
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
問題修正
XAトランザクションを頻繁に使用するとコミットが遅くなり、スレッドがwaiting handler commitで停止する問題を修正しました。
大量のトランザクションの暗黙的ロールバックにより、読み取り専用インスタンスが削除される問題を修正しました。
3.1.16.001
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
問題修正
読み取り/書き込み/読み取り専用インスタンスのログスレッドのSocket Bufferで動的変更をサポートしました。
サードパーティのサブスクリプションツール(Canal、Flink CDCなど)において、読み取り専用インスタンス経由でBinlogをサブスクライブできない問題を修正しました。
物理ログの並列レプリケーションをサポートし、書き込み量が大きすぎて読み取り専用インスタンスが除外される問題を修正しました。
Systemシステム関数を呼び出してスレッド優先度を変更する際に時間がかかりすぎる問題を修正しました。
ネイティブのタイムスタンプベースのデータサブスクリプション動作との互換性を実現しました。
log_checkpointerスレッドにおいて、長時間Log Writer Mutexを取得できずスレッドがブロックされる問題を修正しました。
Rewriterプラグインの使用により、読み取り専用インスタンスの起動時にクラッシュする問題を修正しました。
並列クエリ使用時のメモリリーク問題を修正しました。
列圧縮で文字列長が255バイトの場合にオーバーフローする問題を修正しました。
MySQLコミュニティのInstant DDLに関する修正をマージしました。
MySQL 5.7からMySQL 8.0にアップグレードすると、外部キーを持つテーブルに対してInstant DDLを実行するとデータが破損する問題を修正しました。
Instant DDLの実行によりバックグラウンドのRollbackスレッドがクラッシュする問題を修正しました。
Instantで列位置を変更すると、RedoにInstant情報が記録されず、Redo適用時にエラーが発生する問題を修正しました。
8029ベースラインバージョン以前のインスタンスでシステムテーブルにInstant Add Columnが存在するため、8029へのアップグレード後にクラッシュする問題を修正しました。
読み取り専用インスタンスの総容量チェックの問題を修正しました。修正後は読み取り専用インスタンスで総容量チェックがキャンセルされます。
全文インデックスの大規模トランザクションInsertで他のトランザクションの書き込みがブロックされる問題を修正しました。
全文インデックスで読み取り専用インスタンスがない場合にバックグラウンドのOptimizeスレッドが動作しない問題を修正しました。
ページ分割と降順クエリの並行実行時にデッドロックが発生する問題を修正しました。
読み取り専用インスタンスにおいて、統計情報ロジックエラーによりパーティションテーブルを開くのが遅くなる問題を修正しました。
データベースプロキシのChange UserとShow Processlistの並行実行によるデッドロック問題を修正しました。
3.1.15.006
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
問題修正
読み取り専用インスタンスにおいて、CSI統計情報を誤って収集したためパーティションテーブルを開くのが遅くなる問題を修正しました。
3.1.15.005
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能更新
読み取り専用インスタンスにおいて、binlogで2種類のサブスクリプション方式をサポートします:1. file_nameとposに基づくポイント方式、2. タイムスタンプに基づく方式。
問題修正
systemシステム関数を呼び出してスレッド優先度を変更する際に時間がかかりすぎる問題を修正しました。
透過的データ暗号化が有効にならない問題を修正しました。
並列クエリ実行時にページロックタイムアウトが発生する可能性がある問題を修正しました。
3.1.15.004
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能更新
query cache機能を追加しました。
問題修正
一部のbinlogでbinlog checksumを有効にした場合、サブスクリプションツールにおいてcdc経由でサブスクライブする際に「could not queue event from master」エラーが発生する可能性がある問題を修正しました。
3.1.15.003
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能最適化
Serverlessインスタンスのウェイクアップ時間を短縮しました。
問題修正
ユーザーがflink cdc gtidサブスクリプションで遭遇する互換性問題を修正し、flink経由でデータをサブスクライブする際にエラーが発生するシナリオを防止しました。
全文インデックスにおいて、大規模トランザクションのINSERT操作が他のトランザクションの書き込みをブロックする問題を修正しました。
全文インデックスにおいて、ROがない場合にバックグラウンドのoptimizeスレッドが動作しない問題を修正しました。
Parallel DDLの実行中、インデックスファイルが小さい場合に単一スレッドソートが使用されてクラッシュする問題を修正しました。
3.1.15.002
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能更新
透過的データ暗号化(TDE)をサポートしました。
セカンダリキャッシュ機能をサポートしました。
問題修正
MySQLコミュニティのINSTANT DDLに関するいくつかの問題を修正しました。具体的には以下の通りです。
データベースをバージョン5.7から8.0へアップグレードすると、外部キーを含むテーブルに対してINSTANT DDL操作を実行した際にデータが破損する問題を修正しました。
INSTANT DDL操作の実行によりバックグラウンドのrollbackスレッドがクラッシュする問題を修正しました。
INSTANT列位置の変更操作を実行すると、redoにINSTANT情報が記録されず、redo適用時にエラーが発生する問題を修正しました。
MySQLのバージョン8.0.29以前のインスタンスシステムテーブルにinstant add columnが存在することにより、バージョン3.1.15にアップグレードするとクラッシュする問題を修正しました。
outlineを開いた際に並列実行計画が表示されない問題を修正しました。
3.1.15
または3.1.15.001
8.0.30
注意:
MySQL 8.0.29以降、Information Schemaのテーブルのクエリ結果はutf8の代わりにutf8mb3を使用します。Connector/Net 8.0.28より前のバージョンはutf8mb3をサポートしておらず、utf8mb3に遭遇すると「Character Set 'utf8mb3' is not supported by .Net Framework」というエラーが発生します。アプリケーションでConnector/Netを使用している場合は、TDSQL-C for MySQLのカーネルバージョンをアップグレードする前に、Connector/Netを8.0.28以降のバージョンにアップグレードしてください。詳細については、以下をご参照ください:
機能更新
公式8.0.23から8.0.30の変更をマージしました。
ごみ箱機能を追加しました。
並列コピーDDL機能を追加しました。
COS外部テーブル(データベースからCOSデータに直接アクセス)機能を追加しました。
列圧縮機能を追加しました。
監査でより正確なSql_Typeをサポートしました。
監査にトランザクションIDとテーブル名フィールドを追加しました。
アカウント作成時にデフォルトで監査するようになりました。
グローバルインデックス機能をサポートしました。
range/list二次パーティション機能をサポートしました。
slave workerスレッドとsqlスレッド間のデッドロック検出機能をサポートしました。これにより、クラッシュまたは再起動後のrelaylog破損を防止できます。
InnoDBの更新カウント値の永続化をサポートしました。
並列クエリ機能の更新:
PSモードの並列実行をサポートしました。
Hash join(in memory)の並列実行をサポートしました
サブクエリのderived tableを個別に並列実行できるようになりました。
Nested loop joinの内部テーブルを並列処理できるようになりました。
集約関数(std、variance、var_samp、stddev_samp)の並列実行をサポートしました。
ROLL UPの並列実行をサポートしました。
EXPLAIN ANALYZEの並列処理をサポートしました。
パーティションテーブルを並列クエリの並列テーブルとしてサポートしました。
グローバル集約最適化をサポートしました。
having条件のプッシュダウン並列処理をサポートしました。
サブクエリを含むステートメントを条件を満たす場合にウィンドウ関数の書き換えをサポートしました。
Nonblocking DDL機能をサポートしました。
BP分離機能をサポートしました。
TP/AP負荷モニタリング機能を追加し、対応するステートメントのスキャン行数の確認を可能にしました。
フラッシュバッククエリで永続化をサポートしました。
subquery in limitを構文レベルで禁止しました。
関連するサブクエリ結果のキャッシュ機能をサポートしました。
ビューのCTEへの変換をサポートしました。
column構文をサポートしました。
exchange subpartition templateをサポートしました。
問題修正
CDCでbinlogを補完している期間中にbinlogのpurgeが発生した場合、スレーブのbinlogが欠落する可能性がある問題を修正しました。
instant ddlに関するいくつかのバグを修正しました。
ストアドプロシージャ内でupdate returningを呼び出すとクライアント接続が切断される可能性がある問題を修正しました。
sql filter機能と並列実行のプラン等価判定機能の脆弱性を修正しました。
並列実行下でテーブル構造が変更された場合にクラッシュが発生する可能性がある問題を修正しました。
prepareステートメントでWHERE column IN (list)を使用するとパフォーマンスが低下する問題を修正しました。
テーブルの変更に自動増分列が含まれる場合にParallel Copy DDLで主キーの競合が発生する問題を修正しました。
高並行処理下でのbinlogコミット時のミューテックスロック競合問題を修正しました。
スレッドプールモードにおいて、設定されたthread_pool_sizeが小さい場合にパフォーマンスが著しく低下する問題を最適化しました。
outer joinでeq_ref cacheを無効にするとパフォーマンスが低下する問題を最適化しました。
Parallel Copy DDLのトランザクションロールバック時にアサーションが失敗する問題を修正しました。
EXPLAIN FORMAT=TREEでHashJoin条件内のサブクエリが出力されない問題を修正しました(公式バグ)。
index merge intersectでクエリ結果を誤る問題を修正しました。
クロスマシン統計情報収集でshutdownプロセスがブロックされる可能性がある問題を修正しました。
check indexで大量のページロックが保持される問題を修正しました。
並列クエリで空rangeのパーティションフロー終了の問題を修正しました。
Txsql_optimzier_context_prealloc_sizeの上限がオーバーフローして0になる問題を修正しました(公式バグ)。
pfs_thread_setname関数がスレッドプールのパフォーマンスに影響する問題を修正しました。
partition_idのオーバーフローにより、truncate partitionがクラッシュする問題を修正しました。
並列クエリにおいて、関連サブクエリがworkerテーブルのフィールドを参照することによりクエリ結果を誤る問題を修正しました。
並列DDLにおいて、誤ったoffsetを取得する問題を修正しました。
並列DDLにおいて、重複データがある列にunique keyを追加する際にクラッシュする問題を修正しました。
並列hash joinのデバッグアサーションが失敗する問題を修正しました。
並列クエリのコスト計算でNDVが0になる問題を修正しました。
並列DDLにおいて、innodb_disable_sort_file_cacheを有効にした場合にインデックス作成が失敗する問題を修正しました。
並列クエリにおいて、Prepare statementを実行する際にexchange idがリセットされない問題を修正しました。
FORCE INDEX ORDER BYステートメントでindex diveがスキップされる問題を修正しました(公式Bug #34976138)。
公式サブクエリプランが重複表示される問題を修正しました(公式Bug #112345)。
ディスク一時テーブルのカウントが増加しない問題を修正しました(公式Bug #112556)。
データベースプロキシのchange userとshow processlistの並行実行によるデッドロック問題を修正しました。
3.1.14
8.0.22
機能更新
列ストアインデックス機能(リージョンレベルでグレーリリース中)をサポートしました。この機能により、列指向データ形式でデータを保存、検索、管理する技術を使用し、より優れたクエリパフォーマンスとより高いデータ圧縮率を実現できます。
並列クエリ拡張機能をサポートしました(サブクエリ並列処理、rollup、NLJ内部テーブル並列処理、in-mem hash join並列処理)。
問題修正
パーティションテーブルにおいて、DDLを実行する際にROがクラッシュする可能性がある問題を修正しました。
cdcサブスクリプション時にrotate event checksumが混乱して文字化けが発生する問題を修正しました。
'{}'を使用してJSON文字列を直接挿入すると精度が失われる問題を修正しました。
3.1.13
8.0.22
パフォーマンス最適化
フルテーブルスキャンのループ効率が低いことによるデータアクセスの遅延問題を最適化しました。
並行処理シナリオでの大規模クエリスキャンのパフォーマンス低下問題を最適化しました。
問題修正
データベース監査機能を有効にした後のCPU使用率の問題を修正しました。
全文インデックスのdoc idが重複する問題を修正しました。
全文インデックスが一部のシナリオで読み取り専用インスタンスのデッドロックを引き起こす問題を修正しました。
パーティションテーブルにおいて、DDLが読み取り専用インスタンスのクラッシュを引き起こす問題を修正しました。
一部の公式バグを修正しました。具体的には以下の通りです:
json prepareに関するバグを修正しました(Bug #101284)。
sort buffer sizeに関するバグを修正しました(Bug #32738705、Bug #33501541)。
一時テーブルのindex scanに関するバグを修正しました(Bug #33700735)。
サブクエリに関するバグを修正しました(Bug #31216115、Bug #31946448、Bug #31216115、Bug #31216115、Bug #32813547、Bug #32813554)。
一部のセグメンテーションフォールトを修正しました(Bug #32813554、Bug #32813547)。
3.1.12
8.0.22
機能更新
スロークエリログでストレージ層のネットワークIOトラフィック、使用時間と回数、およびトランザクションコミットのレイテンシを確認できるようになりました。詳細については、「スロークエリログの照会とダウンロード」をご参照ください。
データベース監査でトランザクションIDフィールドとテーブル名の追加をサポートしました。
ブラックホールエンジン(ENGINE = BLACKHOLE;)をサポートしました。
DDL実行で使用するデフォルトアルゴリズム(inplace/instant)をサポートしました。innodb_alter_table_default_algorithmパラメータで指定できます。
パフォーマンス最適化
大規模トランザクションのbinlogコミット最適化:大規模トランザクションのログを最初に一時ファイルに書き込み、その後一時ファイルを次のbinlogにリネームすることで、大規模トランザクションのコミットが他のトランザクションをブロックする時間を削減しました。
binlog書き込み最適化:rowモードのbinlogをstatement形式のbinlogに変換できるようになりました。正規表現を使用して有効なデータベース・テーブルを設定することをサポートします。
purge binlogのパフォーマンスを最適化し、パフォーマンスの変動を削減しました。
CDC、LSN、CLUSTERを予約キーワードから削除しました。
並列DDL機能を最適化しました:
スキャンスレッド数が1より大きく、かつinnodb_parallel_ddl_threads = 1の場合に、作成されるインデックスデータが不正になる問題を修正しました。
m_pageがサブツリー作成後に不正になりクラッシュする問題を修正しました。
インデックス作成前にエラーコードがリセットされない問題を修正しました。
innodb_disable_sort_file_cacheスイッチを有効にした場合に、parallel ddlでのインデックス作成がクラッシュする問題を修正しました。
重複データがある列にunique keyを追加するとクラッシュする問題を修正しました。
問題修正
データベース監査でprepareステートメントの所属タイプが誤って記録される問題を修正しました。
データベース監査でexecuteステートメント内のsql_typeが「other」タイプに統一される問題を修正しました。
session trackでユーザー定義変数文字列を取得する際のエラー問題を修正しました:カスタム変数を取得する際に、指定された文字列長でsession trackの戻り値を構築できるようになりました。
並列クエリにおいて、関連サブクエリがworkerテーブルフィールドを参照することによりクエリ結果を誤る問題を修正しました。
3.1.10
8.0.22
機能更新
読み取り専用インスタンスでbinlogのサブスクリプションをサポートしました。
ブラックホールエンジンをサポートしました。
並列クエリ機能の更新:フルテーブルスキャン / フルインデックススキャン / インデックス範囲スキャンの並列クエリ、分散と標準偏差関数、LIMIT構文下での並列ポリシー設定、Prepared Statement(PS)クエリモードをサポートしました。
動的スレッドプールをサポートしました。
NOWAIT構文をサポートしました。
フラッシュバッククエリをサポートしました。
invisible indexをサポートしました。
statement outlineをサポートしました。
問題修正
パーティションテーブルのinstant addによりカラムが過多になる問題を修正し、ddlのデフォルトアルゴリズムをinstantからinplaceに変更しました。instant ddlを使用するには、algorithm = instantを明示する必要があります。
列名がfts_doc_idというテーブルでのinstant ddl実行を禁止しました。
resize buffer pool機能を最適化しました。
並列クエリでの演算子分割itemの分割ロジックを最適化しました。
PSモードのIN二分検索が無効になることによるパフォーマンス低下を修正しました。
並列クエリでのテーブル全体のcount(*)のクエリ効率を最適化しました。
Parallel DDLのstage変数エラーにより、FTSインデックス作成シナリオでstageヌルポインタークラッシュが発生する問題を修正しました。
全文インデックスの追加プロセス中にクラッシュが発生する可能性がある問題を修正しました。
一部の状況でHAがgtidの損失を引き起こす問題を修正しました。
DDL実行中にmysqldプロセスをkillし、再起動後にshow create tableを実行すると、クラッシュが発生する可能性がある問題を修正しました。
全文インデックスにおいて、fts cache lockを早期に解放すると読み書きの不整合が発生する問題を修正しました。
ddlコミットプロセス中に、トランザクションロールバックによりマスタースレーブデータの不整合が発生する問題を修正しました。
一時テーブルを作成してデータを挿入するプロセス中に、トランザクションをkillしてデータベースを削除すると、デッドロックが発生する問題を修正しました。
mysqlシステムライブラリと同名のデータベースに対するユーザー操作が失敗する問題を修正しました。
canalがRO経由でbinlogを抽出する際に、show master statusでgtid開始点を取得できない問題を修正しました。
3.1.9
8.0.22
機能更新
CDC機能を追加し、ユーザー定義のログ保持期間内のbinlogを直接反復的に遡及・抽出できるようにしました。これにより、HAなどのシナリオでコンピューティングノードがローカルbinlogを失う問題を解決しました。binlog保持期間の設定については、「バックアップ保持期間の設定」をご参照ください。
pages purgeの速度を最適化し、データベースパフォーマンスを向上させました。
問題修正
並列クエリにおいて、workerがcoordinatorにテーブルレベルのNULL ROW FLAGフラグを渡せず結果を誤る問題を修正しました。
並列クエリにおいて、sort orderがテーブルにプッシュダウンされることにより、演算子分割プロセス中にsort演算子がorder listを取得できずコアが生成される問題を修正しました。
3.1.8
8.0.22
機能更新
並列クエリ機能を追加しました。複雑なクエリを自動認識し、並列クエリ機能を利用してマルチコアコンピューティングリソースを動員し、大規模クエリのレスポンスタイムを大幅に短縮します。使用方法については、「並列クエリの有効化または無効化」の機能説明をご参照ください。
問題修正
デバッグモードで発生するいくつかのデータベースの問題を修正しました。
show detailed processlistを使用して接続情報を表示する際に、データベースプロキシ関連フィールドに異常情報が表示される問題を修正しました。
3.1.7
8.0.22
機能更新
パスワード辞書パラメータを追加しました。使用方法については、「カスタムパスワードの強度」の機能紹介をご参照ください。HAの辞書ファイルへの依存問題を最適化しました。
カーネルでpurgeされたbinlogの補完をサポートしました。
Serverlessアーキテクチャで組み込みデータベースプロキシをサポートし、接続維持と切断防止機能を実現して、初回ウェイクアップ時の接続エラー問題を解決しました。
3.1.6
8.0.22
問題修正
check indexで全文インデックス(非ツリーインデックス)に遭遇するとクラッシュする問題を修正しました。
データベースプロキシのヘルスチェックによりカーネルが大量のerrlogを出力する問題を修正し、冗長なログ出力をマスクしました。
session lsn tracker内のgcr lsnが初期化されていない場合に、データベースプロキシがランダム値を返してステートメント実行がタイムアウトする問題を修正しました。
3.1.5
8.0.22
機能更新
bulk insertのスロットリングをサポートしました。
change bufferおよびmerge方式の設定をサポートしました。
データベースプロキシをサポートしました。使用方法については、「データベースプロキシ」の機能説明をご参照ください。
読み取り専用インスタンスでの論理バックアップ実行をサポートしました。
binlogのテーブルレベルでの並列レプリケーションをサポートしました。
SQLスロットリング機能をサポートしました。
ホットスポット更新保護をサポートしました。
sort merge joinでのinteresting order判定をサポートしました。
TABLESAMPLE機能をサポートしました。
HISTOGRAM()関数をサポートしました。
ヒストグラム履歴のバージョン機能、compressedヒストグラムをサポートしました。 
show detail processlistをサポートしました。
パフォーマンス最適化
トランザクションの物理レプリケーションを最適化し、書き込み専用パフォーマンスを大幅に向上させました。
トランザクションシステムの並列初期化を最適化し、システムの起動時間を短縮しました。
読み取り専用インスタンスがログを再生する際のページロックロジックを最適化し、再生スレッドの速度を向上させました。
問題修正
mysql clientが不完全なパケットを受信すると異常終了する問題を修正しました。
blobがネストされたmtrで送信順序エラーを生成し、fsp管理セグメントがクラッシュする問題を修正しました。
ホスト側のpurgeにより、ROがセカンダリインデックスにアクセスする際にトランザクション一貫性の問題を引き起こす可能性がある問題を修正しました。
backup lockでlock tableの影響を受けてロックできない問題を修正しました。
cynosdbで導入されたいくつかのキーワード(CDB_GET_TABLE_VERSION、CLUSTER、THREADPOOLなど)が識別子として使用できない問題を修正しました。
インスタンス起動時に大規模トランザクションまたは長行トランザクションのロールバックにより、メインスレッドがdict op lockを取得できず起動時間が長くなる問題を修正しました。
undoページの割り当て失敗後に、trxを再利用するとクラッシュする問題を修正しました。
パーティションテーブルに対してalter tableを実行し、拡張テーブルスペースからシステムテーブルスペースへ移行するとクラッシュが発生する問題を修正しました。
truncate logが完全に書き込まれていない状態で起動するとクラッシュする問題を修正しました。
drop table partition force後にデータを挿入するとクラッシュする問題を修正しました。
instant DDLでデータを更新してからrollbackするとクラッシュする可能性がある問題を修正しました。
create temporary table likeで拡張テーブルスペースのテーブル作成が失敗する問題を修正しました。
全文インデックステーブルへのデータ投入時にcacheが継続的に増加しOOMを引き起こす問題を修正しました。
ホットスポット更新最適化を有効にした後にパフォーマンスが不安定になる問題を修正しました。
select count(*)の並列スキャンが極端な状況でフルテーブルスキャンになる問題を修正しました。
複数の状況で統計情報がゼロを読み取る問題、および公式Bug #31889883を修正しました。
queryが長時間query end状態となる問題を修正しました。
Json_table関数の列名の大文字 / 小文字の区別の問題を修正しました(公式Bug #32591074)。
Temptableエンジンを使用する際に、選択列の集約関数が255個を超えるとエラーが発生する問題を修正しました。
ウィンドウ関数において、式のreturn true時に早期リターンすると正確性の問題を引き起こすバグを修正しました。
derived condition pushdownがユーザー変数を含む場合でも条件をプッシュダウンしてしまい、結果の正確性に問題が生じる不具合を修正しました。
SQL filterでRuleにnamespaceが追加されていない場合にクラッシュしやすい問題を修正しました。
高並行処理・高競合の状況でスレッドプールを有効にするとQPSが変動する問題を修正しました。
updateステートメントまたはストアドプロシージャの実行を移植する際に、情報をクリアしないとクラッシュする問題を修正しました。
現在のバージョンでCTRL+Cでhistogramを停止できない問題を修正しました。
3.1.3
8.0.22
機能更新
指定されたfilenameのbinlogのindexファイルへの追加をサポートしました。
backupロックを追加しました。構文:LOCK TABLES FOR BACKUP、UNLOCK TABLES。
binlogロックを追加しました。構文:LOCK BINLOG FOR BACKUP、UNLOCK BINLOG。
問題修正
動的メタ情報の永続化によりインスタンステーブルが破損または可視性エラーが発生するバグを修正しました。
公式bugfix Bug #32897503をマージし、prepareステートメント下で一部のクエリステートメントの実行パスを誤る問題を解決しました。
公式bugfixをマージし、set resource groupが失敗するとクラッシュする問題を修正しました。
HA切り替え後にprevious gtidが空になるバグを修正しました。
オートインクリメント列を既に挿入された最大値より小さく設定できるバグを修正しました。
読み取り専用インスタンス上の明示的トランザクションが再生スレッドによるDDLログの再生をブロックする問題を修正しました。
テーブル名に「-」を含むテーブルでDDLを実行すると、読み取り専用インスタンスでのレプリケーションがクラッシュする可能性がある問題を修正しました。
読み取り専用インスタンスの起動時にDDL recoverに遭遇し、DDL logシステムテーブル操作でundoを申請する際にクラッシュする問題を修正しました。
3.1.2
8.0.22
機能更新
MySQL 8.0をサポートしました。読み取り専用ノードを追加し、マスタースタンバイ物理レプリケーションを実現しました。
拡張テーブルスペースをサポートしました。インスタンス容量は最大1PB+に対応しています。
プリロード行数制限機能をサポートし、ポイントクエリ関連のテストで1~5%のパフォーマンス向上を実現しました。
ANALYZE構文(UPDATE HISTOGRAM c USING DATA 'json')の拡張をサポートしました。ヒストグラムへの直接書き込み機能に対応しています。
パフォーマンス最適化
ヒストグラムを使用してインデックスダイブを置き換え、推定誤差とI/Oオーバーヘッドを削減しました。この機能はデフォルトで無効です。
問題修正
ラージオブジェクト列を含む全文インデックスを作成する際に、ラージオブジェクトページ関連の更新がログに書き込まれない問題を修正しました。
コンピューティング層とストレージ層のundo pageフォーマットが不一致な問題を修正しました(TRX_UNDO_HISTORY_NODEの定義が異なっていた)。
online-DDL期間中に統計情報がゼロになる可能性がある状況を修正しました。
スレーブマシンのgenerated columnが更新されない状況を修正しました。
binlog圧縮時にインスタンスがハングする問題を修正しました。
新しく生成されたbinlogファイルのprevious_gtids event内のgtidが欠落する問題を修正しました。
システム変数を変更する際にデッドロックが発生する可能性がある問題を修正しました。
show processlist内のスレーブマシンsqlスレッドのinfo表示が不正確な問題を修正しました。
公式の8.0.23のhash join関連bugfixを移植しました。
公式のwriteset関連bugfixを移植しました。
公式の8.0.24のクエリオプティマイザ関連bugfixを移植しました。
FAST DDL内でflush listを最適化してページを解放する際の並行処理バグを修正しました。
大量のテーブルを持つインスタンスのデータディクショナリアップグレード時に大量のメモリを占有する問題を最適化しました。
instant add column後に新しい主キーを作成するシナリオでクラッシュする問題を修正しました。
全文インデックスクエリ中のメモリ増加によるOOM問題を修正しました。
show processlistの返却結果セット内のTIMEフィールドに-1が表示される問題を修正しました。
ヒストグラム互換性によりテーブルが開けない可能性がある問題を修正しました。
Singletonヒストグラムを構築する際の浮動小数点累積誤差を修正しました。
rowフォーマットログでテーブル名が長い中国語文字の場合にレプリケーションが中断する問題を修正しました。
3.1.1
8.0.22
機能更新
公式の8.0.19、8.0.20、8.0.21、8.0.22の変更をマージしました。
thread_handlingのスレッドモードまたは接続プールモードの動的設定をサポートしました。
マスタースレーブbp同期機能をサポート:HAが発生してマスタースタンバイ切り替えを行った後、スタンバイデータベースは通常、ウォームアップのためにホットデータをbuffer poolにロードするのに比較的長い時間を必要とします。スタンバイマシンのウォームアップを加速するため、TXSQLでマスタースレーブbp同期機能をサポートしました。
Sort Merge Join機能をサポートしました。
非同期コミットをサポートしました。スレッドプールを有効にしてbinlogを無効にした場合、パラメータinnodb_log_sync_method =asyncを設定することで非同期コミットを有効にできます。
FAST DDL機能をサポートしました。
ユーザー側でcharacter_set_client_handshakeパラメータをクエリして現在値を表示する機能をサポートしました。
データベース監査をサポートしました。
パフォーマンス最適化
flush listスキャンのダーティページフラッシュを最適化:ダーティページフラッシュメカニズムを最適化することで、インデックス作成プロセス中のパフォーマンス変動問題を解決し、システムの安定性を向上させました。
BINLOG LOCK_doneのロック競合を最適化し、書き込みパフォーマンスを向上させました。
Lock Free Hashを使用してtrx_sys mutexの競合を最適化し、パフォーマンスを向上させました。
redo logのディスクフラッシュを最適化しました。
buffer poolの初期化時間を最適化しました。
大規模テーブルのdrop tableにおけるAHIクリーンアップを最適化しました。
問題修正
offline_mode、cdb_working_modeパラメータを変更する際のデッドロック問題を修正しました。
trx_sysのmax_trx_idの永続化並行処理問題を修正しました。
InnoDB一時テーブルをクリーンアップする際にパフォーマンスが変動する問題を修正しました。
コア数が多いインスタンスのread onlyパフォーマンス低下問題を修正しました。
hash scanにより1032エラーが引き起こされる問題を修正しました。
ホットスポット更新機能の並行処理安全性問題を修正しました。
3.0.1
8.0.22
機能更新
cynos_versionをサポートしました。3つの方法でクエリできます:select CYNOS_VERSION()、select @@cynos_version、show variables like 'cynos_version'。
容量制限パラメータを追加しました。総容量が制限を超えた場合、拡張更新はエラーを報告し、ユーザーに容量の解放または仕様のアップグレードを警告します。
読み取り専用パラメータinnodb_ncdb_log_priorityを追加しました。プライマリインスタンスのバックグラウンドログスレッド優先度を示します。
読み取り専用パラメータinnodb_ncdb_apply_priorityを追加しました。読み取り専用インスタンスのログ再生スレッド優先度を示します。
動的パラメータinnodb_ncdb_fast_shutdownを追加しました。プロセスが高速shutdownするかどうかを制御します。有効にすると、プロセス終了時に一部のグローバル構造のデストラクタ操作を行わなくなり、shutdown時間が短縮されます。デフォルトは無効です。
パラメータinnodb_max_temp_data_file_sizeを追加しました。読み取り専用パラメータで、デフォルト値は128Mです。このパラメータが0より大きい場合、ローカルストレージに格納できる最大一時テーブルスペースを表します。
マイナーバージョン
コミュニティバージョン
説明
2.1.14.001
5.7
機能更新
物理ログの並列レプリケーションをサポートし、書き込み量が大きすぎて読み取り専用インスタンスが除外される問題を修正しました。
問題修正
インデックス作成時にOut of memoryエラーが発生する問題を修正しました。
監査ログの暗黙的トランザクションのトランザクションID(trx id)表示異常の問題を修正しました。
query rewriteプラグインにより読み取り専用インスタンスのクラッシュが引き起こされる問題を修正しました。
監査ログの非UTF8エンコーディング変換エラーの問題を修正しました。
online DDL実行期間中に数分レベルのDMLブロックが発生する問題を修正しました。
公式Bug #101827がデッドループを引き起こす問題を修正しました。
XAトランザクションを頻繁に使用するとコミットが遅くなり、スレッドがwaiting handler commitで停止する問題を修正しました。
グローバル一貫性読み取りのタイムアウト問題を修正しました。
容量が満杯になるとgtidの永続化が失敗する可能性がある問題を修正しました。
cdb_store_meta_to_tableを有効にした場合、容量が満杯になるとDDL logが書き込めずデッドロックが発生する問題を修正しました。
不正なpageへのアクセスによりインスタンスがクラッシュする問題を修正しました。log io timeout後にインスタンス終了が遅くなる問題を修正しました。
exchange partiton操作時に読み取り専用インスタンスのtable cacheをクリーンアップしないことによるクラッシュ問題を修正しました。
2.1.13.002
5.7
機能更新
セカンダリキャッシュ機能をサポートしました。
問題修正
JSON文字列解析時により高い浮動小数点精度の採用をサポートしました。
innodb_ncdb_avg_log_rsp_timeの統計エラー問題を修正しました。
テーブル内にJSONフィールドがある場合、checksum tableコマンドの結果が不安定になる問題を修正しました。
binlogサブスクリプション機能を最適化しました。
2.1.13.001
5.7
機能更新
フラッシュバッククエリ機能をサポートしました。
returning機能をサポートしました。
Nonblocking DDL機能をサポートしました。
並行Copy DDL機能をサポートしました。
DDLプロセス情報を追加しました。
説明:
DDL実行期間中に、show detail processlist;またはselect * from information_schema.DETAIL_PROCESSLIST;コマンドを実行してDDLプロセス情報を確認できます。
サブクエリでLIMIT & IN/ALL/ANY/SOMEの使用をサポートしました。
アカウント作成時にデフォルトで監査するようになりました。
監査にポート番号ClientPortフィールドを追加しました。
問題修正
cdcの再試行回数が多すぎる場合にreached open_files_limitエラーが発生する問題を修正しました。
監査ステートメント内のシングルクォートがエスケープされない問題を修正しました。
JSON表示精度の問題を修正しました。
threadpoolステータス計算の問題を修正しました。
cdb_enable_sumagg_pushdownを有効にした場合に集約関数sum()の結果を誤る問題を修正しました。
gtid_subsetのnull_valueがリセットされないことによりクエリ結果を誤る問題を修正しました。
DERIVED_MERGEスイッチを有効にした状態で、GROUP_CONCATがUSED_TABLESを正しく設定しない問題を修正しました。
データベースプロキシを異なるユーザーで接続を再利用する際にエラーが発生する問題を修正しました。
データベースプロキシのrow countとfound rowおよびdb設定の返却エラーを修正しました。
hash scan時のメモリ使用量過多の問題を修正しました。
session trackでユーザー定義変数文字列を取得する際のエラー問題を修正しました。
「*」を使用した列名クエリのエラー問題を修正しました。
sqlfilterでヌルポインターが生成される問題を修正しました。
複数のマルチテーブルに関わる場合、returningステートメントを無効化しました。
show processlist時のクラッシュ問題を修正しました。
Returning構文によりクロスアベイラビリティゾーンスタンバイマシンがクラッシュする問題を修正しました。
監査のバグ修正:長いログでマルチバイト文字が切り捨てられ、文字化けしたログ内容が解析できない問題を修正しました。
監査のバグ修正:監査ログがエスケープ文字を処理する際に頻繁にメモリを申請して、パフォーマンスが低下する問題を修正しました。
flink - cdcタイムスタンプサブスクリプションエラーの問題を修正しました。
tablespace nameの検証時にnameが空の場合、一部の環境でクラッシュする問題を修正しました。
2.1.12
5.7
機能更新
読み取り専用インスタンスでポイント経由のbinlogサブスクリプションをサポートしました。
パフォーマンス最適化
purge binlogのパフォーマンスを最適化し、パフォーマンスの変動を削減しました。
問題修正
Flinkにおいて、TDSQL-Cの読み取り専用インスタンスのbinlogをサブスクライブする一部のシナリオでの非互換の問題を修正しました。
公式Bug #27422376を修正しました。
B-Treeの逆順トラバース時に、期限切れのデータページに遭遇すると読み取り再試行が発生する問題を修正しました。
buffer poolのresize縮小時にpageを重複して回収する可能性がある問題を修正しました。
2.1.11
5.7
機能更新
データベース監査でトランザクションIDフィールドとテーブル名の追加をサポートしました。
マルチスレッド論理バックアップをサポートしました。
データベースプロキシでトランザクション分割をサポートしました。
パフォーマンス最適化
メモリ使用メカニズムを最適化し、OOMリスクを低減しました。
CDC、LSN、CLUSTERを予約キーワードから削除しました。
ストレージapplyログロジックを最適化し、ストレージ層のredoログ処理能力を向上させました。
問題修正
データベース監査でprepareステートメントの所属タイプが誤って記録される問題を修正しました
データベース監査でexecuteステートメント内のsql_typeが「other」タイプに統一される問題を修正しました。
公式Bug #111686と公式Bug #26225783を修正しました。
2.1.10
5.7
機能更新
読み取り専用インスタンスでbinlogのサブスクリプションをサポートしました。
ブラックホールエンジンをサポートしました。
resize buffer poolをサポートしました。
問題修正
ROがbinlogを抽出する際に頻繁に切断される可能性がある問題を修正しました。
2.0.23/2.1.9
5.7
機能更新
動的スレッドプールをサポートしました。
NOWAIT構文をサポートしました。
returningをサポートしました。
オートインクリメント列の永続化をサポートしました。
invisible indexをサポートしました。
計算プッシュダウンをサポートしました。
bufferpoolの初期化をサポートしました。
ホットスポット更新保護をサポートしました。
問題修正
一部の状況でHAがgtidの損失を引き起こす問題を修正しました。
DDL実行中にmysqldプロセスをkillし、再起動後にshow create tableを実行すると、クラッシュが発生する可能性がある問題を修正しました。
全文インデックスにおいて、fts cache lockを早期に解放すると読み書きの不整合が発生する問題を修正しました。
2.0.22/2.1.8
5.7
機能更新
CDC機能を追加し、ユーザー定義のログ保持期間内のbinlogを直接反復的に遡及・抽出できるようにしました。これにより、HAなどのシナリオでコンピューティングノードがローカルbinlogを失う問題を解決しました。binlog保持期間の設定については、「バックアップ保持期間の設定」をご参照ください。
pages purgeの速度を最適化し、データベースパフォーマンスを向上させました。
問題修正
コンピューティングインスタンスが容量上限シナリオで繰り返しクラッシュする問題を修正しました。
2.0.21/2.1.7
5.7
機能更新
パスワード辞書パラメータを追加しました。使用方法については、「カスタムパスワードの強度」の機能紹介をご参照ください。HAの辞書ファイルへの依存問題を最適化しました。
カーネルでpurgeされたbinlogの補完をサポートしました。
Serverlessアーキテクチャで組み込みデータベースプロキシをサポートしました。接続維持と切断防止機能を実現し、初回ウェイクアップ時の接続エラー問題を解決しました
2.0.20/2.1.6
5.7
問題修正
データベースプロキシのヘルスチェックによりカーネルが大量のerrlogを出力する問題を修正し、冗長なログ出力をマスクしました。
session lsn tracker内のgcr lsnが初期化されていない場合に、データベースプロキシがランダム値を返してステートメント実行がタイムアウトする問題を修正しました。
読み取り専用インスタンスで一時テーブルを作成するとデッドロックが発生する可能性がある問題を修正しました。
2.0.19
5.7
機能更新
読み取り専用インスタンスでの論理バックアップ実行をサポートしました。
データベースプロキシをサポートしました。使用方法については、「データベースプロキシ」の機能説明をご参照ください。
binlogのテーブルレベルでの並列レプリケーションをサポートしました。
change bufferおよびmerge方式の設定をサポートしました。
show detail processlistをサポートしました。
問題修正
公式のJSON文字セット関連のBug #22991924を修正しました。
公式bugfixのBug #25865525をマージし、LOAD DATA INFILEでエスケープ文字とutf8文字を読み込めない問題を解決しました。
公式bugfixのBug #31529221をマージし、ALTER TABLEが失敗してIncorrect key fileエラーを報告する問題を解決しました。
公式の生成列とカスケード削除関連のいくつかのbugfixをマージしました(Bug #33053297、Bug #32124113、Bug #29127203)。
公式のBug #31599938を修正しました。slaveでlog_binを無効にしてbinlogを追跡する際にreset masterがハングを引き起こす問題を解決しました。
インスタンス起動時に大規模トランザクションまたは長行トランザクションのロールバックにより、メインスレッドがdict op lockを取得できず起動時間が長くなる問題を修正しました。
undoページの割り当て失敗後に、trxを再利用するとクラッシュする問題を修正しました。
パーティションテーブルに対してalter tableを実行し、拡張テーブルスペースからシステムテーブルスペースへ移行するとクラッシュが発生する問題を修正しました。
truncate logが完全に書き込まれていない状態で起動するとクラッシュする問題を修正しました。
drop table partition force後にデータを挿入するとクラッシュする問題を修正しました。
instant DDLでデータを更新してからrollbackするとクラッシュする可能性がある問題を修正しました。
create temporary table likeで拡張テーブルスペースのテーブル作成が失敗する問題を修正しました。
全文インデックステーブルへのデータ投入時にcacheが継続的に増加しOOMを引き起こす問題を修正しました。
2.0.17
5.7
機能更新
指定されたfilenameのbinlogのindexファイルへの追加をサポートしました。
問題修正
公式bugfixのBug #25865525をマージし、LOAD DATA INFILEでエスケープ文字とutf8文字を読み込めない問題を解決しました。
2.0.16
5.7
パフォーマンス最適化
undo space truncateを最適化し、大規模仕様インスタンスのundo truncate速度を向上させました。
読み取り専用インスタンスでの大規模範囲クエリのパフォーマンスを最適化しました。
問題修正
backup lockにおいて、lock tableステートメントの影響を受けてバックアップロックができない問題を修正しました。
instant addで数千の列を追加すると、ROでtable shareが混乱する問題を修正しました。
binlogの内容にエスケープキーワードが含まれる場合に再生エラーが発生する問題を修正しました。
外部prepared XAトランザクションが明示的にロールバックされず、正常なshutdownをブロックする問題を修正しました。
読み取り専用インスタンスの起動プロセス中に「tablespace -1 not found」という警告が表示される問題を修正しました。
2.0.15
5.7
機能更新
拡張テーブルスペースをサポートしました。単一のテーブルスペースがinnodb_ncdb_extend_space_threshold設定を超えると、新しいテーブルが拡張テーブルスペースに作成されます。
JSONに新しい関数JSON_MERGE_PRESERVE、JSON_MERGE_PATCH、JSON_PRETTY、JSON_STORAGE_SIZE、JSON_ARRAYAGG、JSON_OBJECTAGGを追加しました。
システム起動時のテーブルロックリカバリフローを最適化し、起動時間を短縮しました。
問題修正
公式のbugfixを修正しました。text列のgroup byパフォーマンス問題と複数の仮想列関連の問題を含みます。
インスタンスの起動後に、大規模トランザクションのロールバックとshutdown操作が並行した場合にインスタンスがクラッシュする可能性がある問題を修正しました。
undo space truncateの失敗再試行時に、関連ページのio再試行が複数回失敗するとインスタンスが終了する問題を修正しました。
読み取り専用インスタンスのクローズ時に、統計情報更新がスナップショットキャッシュにアクセスするとクラッシュする問題を修正しました。
undo space truncateにおいて、truncate logがtruncate操作より遅れる可能性がある問題を修正しました。
公式のbugfixを修正し、パーティションテーブルスキャンのICP検査エラーによりクエリが遅くなる問題を解決しました。
読み取り専用インスタンスにおいて、前方スキャンがインデックス分割ログの部分再生に遭遇するとクラッシュする問題を修正しました。
2.0.14
5.7
機能更新
instant modify columnをサポートしました。使用方法については、「Instant DDL」の機能紹介をご参照ください。
問題修正
読み取り専用インスタンスにおいて、一時テーブル削除時に占有容量が回収されない問題を修正しました。
読み取り専用インスタンスがストレージルーティング変更により古いページバージョンを読み取って終了してしまう問題を修正しました。
information_schema.metadata_locksをクエリする際に発生する可能性があるクラッシュ問題を修正しました。
読み取り専用インスタンスにおいて、前方スキャンとbtree SMOの並行処理問題を修正しました。
複数のテーブルに複雑な外部キー依存関係があり、かつ外部キー属性がON DELETE CASCADEの場合に、親テーブルのレコードをDELETEすると子テーブルの対応するレコードが2回削除される可能性がある問題を修正しました。
読み取り専用インスタンスにおいて、create userなどの関連操作が終了を引き起こす問題を修正しました。
読み取り専用インスタンスにおいて、show volume statusがアサーション失敗を引き起こす可能性がある問題を修正しました。
パーティションテーブルにおいて、頻繁なDDL後に読み取り専用インスタンスのクエリ結果が異常になりクラッシュする問題を修正しました。
読み取り専用インスタンスにおいて、クエリスキャンが既にpurgeされたundo logをスキャンし、履歴バージョンの構築時にクラッシュする問題を修正しました。
2.0.13
5.7
機能更新
instant add columnをサポートしました。使用方法については、「Instant DDL」の機能紹介をご参照ください。
高負荷下での監査パフォーマンスを最適化し、動的パラメータlock_usleep_timeを追加しました。
問題修正
公式のdict_operation_lockが外部キー検査で引き起こす可能性があるデッドロック問題を修正しました。
読み取り専用インスタンスの起動段階で、acl changeログを再生する際に終了を引き起こす可能性がある問題を修正しました。
instant add columnとtruncate table後に、マスタースレーブデータが不一致になる問題を修正しました。
instant add columnとtruncate table後に、再度データを挿入するとログ再生エラーが発生する問題を修正しました。
instant add column列を含む主キーを作成すると終了する問題を修正しました。
instant columnを使用して新しいパーティションを作成し、パーティションのrebuildを実行した後、読み取り専用インスタンスでテーブル構造をクエリするとクラッシュする問題を修正しました。
2.0.12
5.7
機能更新
データベース監査をサポートしました。使用方法については、「TDSQL-C for MySQL監査の有効化」をご参照ください。
purgeページの先読みをサポートし、容量回収速度を向上させました。
システムビュー内のテーブルとインデックスサイズ情報がリアルタイムで更新されるようになりました。
recycle lsnの推進を高速化するための追加スレッドを追加し、ストレージのGCを高速化しました。
問題修正
全文インデックスの公式バグを修正しました(BUG #24938374、BUG #21625016、BUG #27082268、BUG #27155294、BUG #27326796、BUG #27304661、BUG #25289359、BUG #29717909、BUG #30787535)。
並行更新がシステムクラッシュを引き起こす可能性がある公式バグを修正しました(BUG #30950714、BUG #31205266、BUG #25669686)。
公式のBUG #28104394を修正し、未コミットのinsert操作がインデックス作成のrange scanに影響を与え誤った行数を返す問題を解決しました。
公式のBUG #30488700を修正し、derived tableのクエリプランが誤ってパフォーマンスが低下する問題を解決しました。
ホストによるDDLの実行後に、読み取り専用インスタンスが統計情報ログを再生する際に終了を引き起こす可能性がある問題を修正しました。
存在しないDBへのrename tableの問題を修正しました。
ホストのoptimize tableが読み取り専用インスタンスの終了を引き起こす可能性がある問題を修正しました。
全文インデックステーブルの更新により、読み取り専用インスタンスでトランザクション一貫性に問題が発生する不具合を修正しました。
set offline modeとshow variables操作がデッドロックを引き起こす問題を修正しました。
2.0.11
5.7
機能更新
binlogファイルインデックスを最適化し、binlogファイルスキャン速度を向上させました。
shutdownフローを最適化し、shutdown速度を向上させました。
インスタンスメモリを最適化し、buffer zip hashなどの構造のメモリ占有を圧縮しました。
読み取り専用インスタンスの起動時にDDL lockを回復するフローを最適化し、再生速度を向上させました。
読み取り専用インスタンスのシステムテーブルロードフローを最適化し、起動速度を向上させました。
purge coordinatorのワーカースレッド割り当てを最適化し、purge速度を向上させました。
問題修正
index構造のマッピングエラーにより、open table時にハングする問題を修正しました。
xaトランザクションのロールバック時に、読み取り専用インスタンスのレプリケーションで異常が発生する問題を修正しました。
読み取り専用インスタンスでbinlogレプリケーションを起動すると起動時にクラッシュする問題を修正しました。
flush logsによるメモリリーク問題を修正しました。
mysqladmin shutdownで終了できない問題を修正しました。
ホストでdrop columnが実行される際に、読み取り専用インスタンス接続がログを再生できない問題を修正しました。
blobラージオブジェクトを挿入して容量制限がトリガーされた後も、引き続きデータを投入できてしまう問題を修正しました。
ホスト上で大規模テーブルのDDLを実行し、かつログディスクの書き込みが遅い場合に、読み取り専用インスタンスのレプリケーション可用性に問題が発生する可能性がある不具合を修正しました。
一時テーブルでinnodb_max_temp_data_file_sizeを設定した場合に、小規模なテーブルでもストレージが無駄に消費される問題を修正しました。


ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック