リリースハイライト
Perconaは、次のMySQLバグ修正を元に戻すことにしました:
オプション -single-transactionと-set-gtid-purged=ONの両方が使用された場合、mysqldumpによってバックアップされたデータとGTIDに一貫性がありませんでした。これは、mysqldumpによって開始されたトランザクションとGTID_EXECUTEDのフェッチの間に、サーバー上のGTIDが既に増加していた可能性があるためです。これが修正されたことにより、FLUSH TABLES WITH READ LOCKがGTID_EXECUTEDのフェッチの前に実行され、その値がmysqldumpによって取得されたスナップショットと一致するようになります。
MySQLの修正により、-single-transactionを使用し、RELOAD権限に対してFLUSH TABLES WITH READ LOCKを実行する場合の要件も追加されました。(バグ #33630199、バグ #105761)
現在のPerconaの決定は、MySQLバグ #33630199の解決策も提供します。
一部のモードでは、mysqldumpユーティリティのPercona ServerバージョンをMySQL Serverで使用できます。このユーティリティは、Oracle MySQL Server 8.0.32によって導入された”追加のRELOAD権限”制限に対する一時的な回避策を提供します。
Oracle for MySQL 8.0.32で導入され、Percona Server for MySQLに含まれる改善とバグ修正は次のとおりです:
- レプリカは、Generated Invisible Primary Keys(GIPK)を任意のInnoDBテーブルに追加できます。この動作を実現するために、GENERATE値がCHANGE REPLICATION SOURCE TOステートメントのREQUIRE_TABLE_PRIMARY_KEY_CHECKオプションの可能な値として追加されます。
- REQUIRE_TABLE_PRIMARY_KEY_CHECK = GENERATEオプションは、チャネルごとに使用できます。
- ソースでのsql_generate_invisible_primary_keyの設定は、この変数がレプリケートされないため、レプリカによって無視されます。この動作は、以前のリリースから継承されています。
- 8.0.28からのアップグレードにより、サーバーの終了や破損など、検出できない問題が発生しました。
- アップグレード後の修正で、ALGORITHM=INSTANTで追加された全ての列がマテリアライズされ、挿入された新しい行についてversion=0になります。現在は、ALGORITHM=INSTANTで追加された列は、行の最大可能サイズが行サイズの制限を超えると失敗するため、マテリアライズされたALGORITHM=INSTANT列を持つ全ての新しい行は行サイズの制限内になります。(バグ #34558510)
- ドロップ後に INSTANTアルゴリズムを使用して特定の列を追加すると、データエラーが発生し、サーバーが終了することがありました。(バグ #34122122)
- ALGORITHM=INSTANTで列が追加された後、オンライン再構築DDLがクラッシュしなくなりました。(バグ #33788578、バグ #106279)
改善点
- PS-8450:レプリケーション:照明者がトランザクションを調整すると、トランザクションが停止します。
- PS-8626:LOAD DATA INFILEを使用してJSONデータを挿入すると、失敗したレコード番号が表示されるようになりました。
バグ修正
- PS-8073:レプリケーション:プライマリキーに保存され生成されたフィールドを持つテーブルを更新すると、レプリケーションクラッシュが発生しました。
- PS-8577:テーブルの作成後にauto_increment列が変更された場合、ALTER TABLE ... auto_increment=1は期待した結果を生成しませんでした。
- PS-7538:innodb_optimize_fulltext_onlyを有効にして、FTSインデックスを持つテーブルでOPTIMIZE TABLEを実行すると、サーバーが終了しました。
- PS-8627:NO_SUCH_TABLEがm_opened_table=0x0につながるため、サーバーが予期せず終了します。
- PS-8660:接続が認証フェーズにある間、INFORMATION_SCHEMAまたはPERFORMANCE_SCHEMAへのクエリが停止します。
- PS-8635:build-idのPercona実装を削除します。
- PS-7934:own_gtids.is_owned_by(thd->owned_gtid, thd->thread_id())のアサーションが失敗しました。
- PS-8613:認証時の顕著なパフォーマンス低下を修正しました。
Percona Server for MySQL 8.0.32-24 リリース情報(Percona社ウェブサイト):
https://docs.percona.com/percona-server/8.0/release-notes/8.0.32-24.html
Perconaサポート・コンサルティング
Perconaサポート・コンサルティングサービスはPercona Serverをご利用頂いているお客様が安心してお使い頂くために専門的なサポートを提供するサービスです。