Amazon Aurora
Aurora のユーザーガイド (API バージョン 2014-10-31)

Aurora MySQL データベースエンジンの更新で修正された MySQL のバグ

以下のセクションでは、Aurora MySQL データベースエンジンの更新で修正された MySQL のバグについて説明します。

Aurora MySQL 2.x データベースエンジンの更新で修正された MySQL のバグ

MySQL 5.7 と互換性のあるバージョンの Aurora には、MySQL 5.7.12 によるすべての MySQL バグ修正が含まれています。次の表は、Aurora MySQL データベースエンジンの更新で修正された追加の MySQL のバグと、どの更新で修正されたかを示しています。

データベースエンジンの更新 Version 修正された MySQL のバグ
Aurora MySQL データベースエンジンの更新 (2018-10-11)

2.03

  • パーティション分割されたテーブルの逆スキャンが、ICP を行う - ORDER BY DESC (バグ #24929748)。

  • JSON_OBJECT は無効な JSON コードを作成する (バグ #26867509)。

  • 大規模な JSON データを挿入すると、膨大な時間がかかる (バグ #22843444)。

  • パーティション分割されたテーブルが 5.6 より 5.7 でより多くのメモリーを使用する (バグ #25080442)。

Aurora MySQL データベースエンジンの更新 (2018-05-03)

2.02

左結合は外部側で不正な結果を返します (バグ #22833364)。

Aurora MySQL 1.x データベースエンジンの更新で修正された MySQL のバグ

MySQL 5.6 と互換性のあるバージョンの Aurora には、MySQL 5.6.10 によるすべての MySQL バグ修正が含まれています。次の表は、Aurora MySQL データベースエンジンの更新で修正された追加の MySQL のバグと、どの更新で修正されたかを示しています。

データベースエンジンの更新 Version 修正された MySQL のバグ
Aurora MySQL データベースエンジンの更新: 2015-08-24

1.1

  • 名前の先頭が数字の InnoDB データベースでは、全文検索 (FTS) パーサーエラーが発生します。(バグ #17607956)

  • InnoDB 全文検索は、名前の尖塔が数字のデータベースでは失敗します。(バグ #17161372)

  • Windows 上の InnoDB データベースの場合、全文検索 (FTS) オブジェクト ID が期待される 16 進形式ではありません。(バグ #16559254)

  • MySQL 5.6 に導入されたコード回帰は、DROP TABLE と ALTER TABLE のパフォーマンスにマイナスの影響を与えました。このため、MySQL Server 5.5.x から 5.6.x の間でパフォーマンスが低下する可能性があります。(バグ #16864741)

Aurora MySQL データベースエンジンの更新: 2015-10-16

1.2、1.3

  • innodb 内でクエリを強制するとアサーションとともにクラッシュすることがある。(バグ #1608883)

  • イベントスケジューラー、イベント実行、または新規接続で新規スレッドの作成に失敗すると、エラーログにメッセージが書き込まれない。(バグ #16865959)

  • 1 つの接続がデフォルトのデータベースを変更すると同時に別の接続が SHOW PROCESSLIST を実行した場合、2 番目の接続が 1 番目の接続のデフォルトのデータベースメモリを表示しようとすると無効なメモリにアクセスする。(バグ #11765252)

  • 設計によるバイナリログの消去が使用中またはアクティブなバイナリログファイルを削除せず、これが発生したときに通知しない。(バグ #13727933)

  • 一部のステートメントで、オプティマイザが不必要なサブクエリ句を削除するとメモリリークが発生することがある。(バグ #15875919)

  • シャットダウン時に、サーバーが初期化されていないミューテックスをロックする場合がある。(バグ #16016493)

  • 複数の列に名前をつける GROUP_CONCAT() および ORDER BY 句を使用した準備済みステートメントが、サーバーを終了させる場合がある。(バグ #16075310)

  • パフォーマンススキーマの計測がスレーブワーカースレッドで見つからない。(バグ #16083949)

  • STOP SLAVE が、ステータス変数 Slave_retried_transactions、Slave_heartbeat_period、Slave_received_heartbeats、Slave_last_heartbeat、または Slave_running の値を取得する SHOW STATUS などのステートメントと同時に発行された場合に、デッドロックを発生させることがある。(バグ #16088188)

  • 検索する用語が引用句で囲まれた語句の場合に、ブールモードを使用した全文クエリの結果がゼロになることがある。(バグ #16206253)

  • サブクエリの結合の ON 句でサブクエリを使用して準備済みステートメントを実行する際に、オプティマイザが冗長サブクエリ句を削除しようとすると、アサーションが立ち上がる。(バグ #16318585)

  • GROUP_CONCAT が不安定、ITEM_SUM::CLEAN_UP_AFTER_REMOVAL でクラッシュが発生する。(バグ #16347450)

  • デフォルトの InnoDB 全文検索 (FTS) ストップワードリストを、INFORMATION_SCHEMA.INNODB_FT_DEFAULT_STOPWORD と同じ構造を持つ InnoDB テーブルを作成することで置き換えようとすると、エラーになる。(バグ #16373868)

  • スレーブのクライアントスレッドが FLUSH TABLES WITH READ LOCK を実行した後、続いてマスターで更新があると、SHOW SLAVE STATUS を実行したときにスレーブがハングアップする。(バグ #16387720)

  • 全文検索で「abc-def」などの区切り検索文字列を解析する場合、InnoDB で MyISAM と同じ単語区切り記号を使用するようになりました。(バグ #16419661)

  • FTS_AST_TERM_SET_WILDCARD がクラッシュする。(バグ #16429306)

  • FTS RQG テストの FTS_AST_VISIT() のセグメンテーション違反。(バグ #16435855)

  • デバッグを構築するために、オプティマイザがサブクエリを指す Item_ref を削除すると、サーバーが終了する。(バグ #16509874)

  • InnoDB テーブルの全文検索が、リテラル句を + または - 演算子と組み合わせた検索に失敗する。(バグ #16516193)

  • オプション --master-info-repository=TABLE relay-log-info-repository=TABLE を付けて autocommit を 0 に設定し、--skip-slave-start を付けてサーバーを起動すると、START SLAVE が失敗する。(バグ #16533802)

  • 非常に大きい InnoDB 全文検索 (FTS) 結果でメモリの消費が大きすぎる。(バグ #16625973)

  • デバッグのビルドで、検索文字列に直接バイナリを使用すると、バイナリに NULL バイトや意味のない文字が含まれている場合があるため、OPT_CHECK_ORDER_BY でアサーションが発生する。(バグ #16766016)

  • 一部のステートメントで、オプティマイザが不必要なサブクエリ句を削除するとメモリリークが発生することがある。(バグ #16807641)

  • スレーブへの新規接続で STOP SLAVE を発行した後で元の接続を使用して SHOW SLAVE STATUS を発行した場合、FLUSH TABLES WITH READ LOCK を発行した後でデッドロックが発生する可能性がある。(バグ #16856735)

  • 無効な区切り記号を使用した GROUP_CONCAT でサーバーが終了する場合がある。(バグ #16870783)

  • SHOW STATUS LIKE "パターン" のステートメントの LOCK_active_mi および active_mi->rli->data_lock ミューテックスで、パターンがそのミューテックス (Slave_heartbeat_period、Slave_last_heartbeat、Slave_received_heartbeats、Slave_retried_transactions、Slave_running) を使用するステータス変数に一致しない場合でも、サーバーが過剰にロックする。(バグ #16904035)

  • ブールモード修飾子を使用した全文検索がアサーションを伴う失敗になる。(バグ #16927092)

  • + ブール演算子を使用した検索で InnoDB テーブルの全文検索が失敗する。(バグ #17280122)

  • 4 ウェイデッドロック: ゾンビ、バイナリログの破棄、プロセスリストの表示、バイナリログの表示。(バグ #17283409)

  • コミットロックを待っている SQL スレッドが強制終了され再スタートされると、トランザクションがスレーブにスキップされる。(バグ #17450876)

  • 「unended」トークンが原因で InnoDB 全文検索失敗が発生する。文字列および文字列長を、文字列比較に渡す必要があります。(バグ #17659310)

  • 多数の分割された InnoDB テーブルを MySQL 5.6 または 5.7 で使用すると、MySQL サーバーの以前のリリースで同じテーブルを使用したときよりも多くのメモリを消費する。(バグ #17780517)

  • 全文クエリで、num_token が max_proximity_item より少ないことを確認しようとして失敗すると、アサーションが発生する。(バグ #18233051)

  • INFORMATION_SCHEMA TABLES および COLUMNS テーブルの特定のクエリが、多量の空の InnoDB がある場合に過剰にメモリを使用する。(バグ #18592390)

  • トランザクションをコミットするときに、特に master_info_repository=TABLE でサーバーを実行している場合により多くのリソースを使用していたスレッドそのものを確認する方法ではなく、フラグを使用してスレッドが作成されたかどうかを確認するようになりました。(バグ #18684222)

  • マスターが DML を実行している間にスレーブのクライアントスレッドが FLUSH TABLES WITH READ LOCK を実行する場合、同じクライアントで SHOW SLAVE STATUS を実行するとブロックされ、デッドロックを発生させる。(バグ #19843808)

  • GROUP_CONCAT() で順序付けを行うと、サーバーが終了する場合がある。(バグ #19880368)

Aurora MySQL データベースエンジンの更新: 2015-12-03

1.4

  • FTSPARSE() のセグメンテーション違反。(バグ #16446108)

  • InnoDB データディクショナリが列名を変更しながら更新されない。(バグ #19465984)

  • 別のデータベースにテーブル名を変更した後に FTS がクラッシュする。(バグ #16834860)

  • 削除されたテーブルでトリガーの準備が失敗するとエラー 1054 が発生する。(バグ #18596756)

  • メタデータを変更するとトリガーの実行で問題が発生する場合がある。(バグ #18684393)

  • 長い UTF8 VARCHAR フィールドに対してマテリアル化が選択されない。(バグ #17566396)

  • ORDER BY で制限を X にした場合に実行プランのパフォーマンスが悪い。(バグ #16697792)

  • バグ #11765744 を 5.1、5.5 および 5.6 にバックポート。(バグ #17083851)

  • SQL/SQL_SHOW.CC が SIG6 になるミューテックスの問題。ソースが頻繁に FILL_VARIABLES になる。(バグ #20788853)

  • バグ #18008907 を 5.5 以上のバージョンにバックポート。(バグ #18903155)

  • MySQL 5.7 にスタックのオーバーフローエラーの修正を適応。(バグ #19678930)

Aurora MySQL データベースエンジンの更新: 2016-01-11

1.5

  • MySQL の全文検索が、データベース名が数字で始まるテーブルに影響する件を一部修正しました。(ポートのバグ #17607956)

Aurora MySQL データベースエンジンの更新: 2016-04-06 1.6
  • アサーション `!M_ORDERED_REC_BUFFER' 失敗のバグ #18694052 修正を 5.6 にバックポート (ポートのバグ #18305270)

  • MEMCPY()、HA_PARTITION::POSITION のセグメンテーション違反 (ポートのバグ # 18383840)

  • PARTITIONING,INDEX_MERGE AND NO PK の結果が正しくない (ポートのバグ # 18167648)

  • EXPORT: ASSERTION IN HA_PARTITION::EXTRA の FLUSH TABLES (ポートのバグ # 16943907)

  • 仮想 HA_ROWS HANDLER::MULTI_RANGE_READ_INFO_CONST におけるサーバークラッシュ (ポートのバグ # 16164031)

  • 範囲オプティマイザが SEL_ARG::RB_INSERT() でクラッシュする (ポートのバグ # 16241773)

Aurora MySQL データベースエンジンの更新: 2016-06-01 1.6.5
  • マスターのクラッシュ回復後スレーブがレプリケーションを続行できない (ポートのバグ #17632285)

Aurora MySQL データベースエンジンの更新: 2016-08-30 1.7
  • LOCK_grant ロックのパーティション分割により安定性を向上しました。(ポート WL #8355)

  • ストアドプロシージャの SELECT でカーソルを開くとセグメンテーション違反が発生します。(ポートのバグ #16499751)

  • MySQL のいくつかの特別な使用法で、誤った結果となります。(バグ #11751794)

  • GET_SEL_ARG_FOR_KEYPART でのクラッシュ – バグ #11751794 のパッチにより発生します。(バグ #16208709)

  • GROUP BY を使った単純なクエリで誤った結果となります。(バグ #17909656)

  • 範囲の述語を使った半結合 (semi-join) クエリで、余分な行が返されます。(バグ #16221623)

  • IN サブクエリの後に ORDER BY 句を追加すると、重複列が返されます。(バグ #16308085)

  • MyISAM で GROUP BY によるルーススキャンのクエリで EXPLAIN を使うとクラッシュします。(バグ #16222245)

  • 引用符付きの INT 述語を使ったルースインデックススキャンでランダムなデータが返されます。(バグ #16394084)

  • オプティマイザがルースインデックススキャンを使用した場合、サーバーが一時テーブルを作成しようとするときに終了する場合があります。(バグ #16436567)

  • COUNT(DISTINCT) は NULL 値をカウントするべきではありませんが、オプティマイザがルースインデックススキャンを使用したときにカウントされます。(バグ #17222452)

  • クエリが MIN()/MAX() の両方と集計関数 (DISTINCT) (たとえば SUM(DISTINCT)) を含む場合に、ルースインデックススキャンを使って実行されると、MIN()/MAX() の結果の値が正しく設定されません。(バグ #17217128)

Aurora MySQL データベースエンジンの更新: 2016-10-18 1.8
  • 複数のインデックスがある列ですべてのインデックスを削除する場合、外部キーの制約に基づいてインデックスが必要なときに、InnoDB は DROP INDEX オペレーションをブロックできませんでした。(バグ #16896810)

  • 外部キーの制約に伴うクラッシュの解決策を追加しました。(バグ #16413976)

  • ストアドプロシージャでカーソルを取得し、同時にテーブルを分析またはフラッシュするときに発生するクラッシュを修正しました。(バグ #18158639)

  • テーブルを変更して AUTO_INCREMENT の値を自動インクリメント列の最大値より小さくしたときに発生する自動インクリメントバグを修正しました。(バグ #16310273)

Aurora MySQL データベースエンジンの更新: 2016-10-26 1.8.1
  • OpenSSL は、LogJam の問題により Diffie-Hellman のキー長パラメータを変更しました。(バグ #18367167)

Aurora MySQL データベースエンジンの更新: 2016-12-14 1.10
  • 派生テーブルの UNION は、「1=0/false」句のある不正な結果を返します。(バグ #69471)

  • サーバーはストアドプロシージャの 2 回目の実行の際、ITEM_FUNC_GROUP_CONCAT::FIX_FIELDS でクラッシュします。(バグ #20755389)

  • キャッシュのサイズが合計サイズの 10% を超えたらすぐに、別のスレッドにキャッシュ同期タスクをオフロードすることで、FTS キャッシュのディスクへの同期中に MySQL のクエリが長時間停止することを回避できます。(バグ #22516559、#73816)

Aurora MySQL データベースエンジンの更新: 2017-02-23 1.11
  • 別の DROP オペレーションと同時に ALTER テーブルの DROP 外部キーを実行すると、テーブルがなくなる。(バグ #16095573)

  • ORDER BY を使用した一部の INFORMATION_SCHEMA クエリで、以前と同じように filesort 最適化が使用されない。(バグ #16423536)

  • FOUND_ROWS () によって返されるテーブルの行数が正しくない。(バグ #68458)

  • 開いている一時テーブルが多すぎると、エラーが発生する代わりに、サーバーに障害が発生する。(バグ #18948649)

Aurora MySQL データベースエンジンの更新: 2017-04-05 1.12
  • 空のときに削除されたテーブルをリロードすると、AUTO INCREMENT 値がリセットされました。(バグ #21454472、バグ #77743)

  • purge_node_t 構造の不一致により、ロールバック時にインデックスレコードが見つかりませんでした。この不一致により、「秒インデックスエントリの更新でエラーが発生しました」、「レコードをパージできませんでした」、「削除されていないインデックスエントリをパージしようとしました」などの警告とエラーメッセージが表示されました。(バグ #19138298、バグ #70214、バグ #21126772、バグ #21065746)

  • qsort オペレーションのスタックサイズの計算が正しくないと、スタックのオーバーフローが発生します。(バグ #73979)

  • ロールバック時にインデックスにレコードが見つかりませんでした。(バグ #70214、バグ #72419)

  • CURRENT_TIMESTAMP 更新時に ALTER TABLE の列 TIMESTAMP を追加すると、ZERO-datas が挿入されます (バグ #17392)

Aurora MySQL データベースエンジンの更新: 2017-05-15 1.13
  • 空のときに削除されたテーブルをリロードすると、AUTO INCREMENT 値がリセットされました。(バグ #21454472、バグ #77743)

  • purge_node_t 構造の不一致により、ロールバック時にインデックスレコードが見つかりませんでした。この不一致により、「秒インデックスエントリの更新でエラーが発生しました」、「レコードをパージできませんでした」、「削除されていないインデックスエントリをパージしようとしました」などの警告とエラーメッセージが表示されました。(バグ #19138298、バグ #70214、バグ #21126772、バグ #21065746)

  • qsort オペレーションのスタックサイズの計算が正しくないと、スタックのオーバーフローが発生します。(バグ #73979)

  • ロールバック時にインデックスにレコードが見つかりませんでした。(バグ #70214、バグ #72419)

  • CURRENT_TIMESTAMP 更新時に ALTER TABLE の列 TIMESTAMP を追加すると、ZERO-datas が挿入されます (バグ #17392)

Aurora MySQL データベースエンジンの更新: 2017-08-07 1.14

派生テーブル (FROM 句のサブクエリ) と結合された全文検索では、サーバーが終了しました。ここで、全文操作が派生テーブルに依存する場合、サーバーは、マテリアライズされたテーブルで全文検索を実行できないことを示すエラーを生成します。(バグ #68751、バグ #16539903)

Aurora MySQL データベースエンジンの更新: 2018-03-13 1.14.4
  • 無視できるイベントが動作せず、テストされない (バグ #74683)

  • NEW->OLD ASSERT FAILURE 'GTID_MODE > 0' (バグ #20436436)

Aurora MySQL データベースエンジンの更新 (2017-10-24) 1.15
  • CREATE USER はプラグインおよびパスワードハッシュを受け入れるが、パスワードハッシュを無視する (バグ #78033)

  • パーティションエンジンは、読み取りビットのセットにフィールドを追加し、パーティションインデックスからソートされたエントリを返せるようにします。これにより、結合バッファでは不要なフィールドまで読み取ろうとします。すべてのパーティションフィールドを read_set に追加するのではなく、read_set の設定済みのプレフィックスフィールドでのみソートするように修正しました。DBUG_ASSERT を追加し、key_cmp を行う場合、少なくとも最初のフィールドが必ず読み取られるようにしました (バグ #16367691)

  • MySQL インスタンスで停止される “doing SYNC index” (バグ #73816)

  • ALTER TABLE CHANGE COLUMN の RBT_EMPTY(INDEX_CACHE->WORDS) のアサート (バグ #17536995)

  • 保存ポイントが関わる場合に InnoDB 全文検索でレコードが見つからない (バグ #70333)

Aurora MySQL データベースエンジンの更新 (2017-11-20) 1.15.1
  • 元に戻す — MySQL インスタンスで停止される “doing SYNC index” (バグ #73816)

  • 元に戻す — ALTER TABLE CHANGE COLUMN の RBT_EMPTY(INDEX_CACHE->WORDS) のアサート (バグ #17536995)

  • 元に戻す — 保存ポイントが関わる場合に InnoDB 全文検索でレコードが見つからない (バグ #70333)

Aurora MySQL データベースエンジンの更新 (2018-03-13) 1.17
  • レプリケーションフィルタが使用されていると LAST_INSERT_ID が不正にレプリケートされる (バグ #69861)

  • クエリは、INDEX_MERGE 設定の有無に応じて異なる結果を返す (バグ #16862316)

  • ストアドルーチン、非効率なクエリプランのクエリ処理の再実行 (バグ #16346367)

  • InnoDB FTS : FTS_CACHE_APPEND_DELETED_DOC_IDS のアサート (バグ #18079671)

  • ALTER TABLE CHANGE COLUMN の RBT_EMPTY(INDEX_CACHE->WORDS) のアサート (バグ #17536995)

  • 保存ポイントが関わる場合に InnoDB 全文検索でレコードが見つからない (バグ #70333、バグ #17458835)

Aurora MySQL データベースエンジンの更新 (2018-09-06) 1.17.6
  • BINARY 列のデフォルト値の名称変更または変更した ALTER TABLE ステートメントの場合、変更はテーブルコピーを使用して実行されており、適切ではありません。(バグ #67141、バグ #14735373、バグ #69580、バグ #17024290)

  • 暗黙的にグループ化された通常のテーブルと派生したテーブルの間の外部結合によって、サーバーが終了する可能性があります。(バグ #16177639)

Aurora MySQL データベースエンジンの更新 (2018-10-08) 1.17.7
  • 外部キー列のインデックスを削除すると、テーブルが見つからなくなります。(バグ #16208542)

  • add_derived_key() のメモリリーク。(バグ #76349)

  • パーティション分割されたテーブルの場合、インデックスマージが使用されたかどうかによって、クエリが異なる結果を返すことがありました。(バグ #16862316)

  • HASH でパーティション分割されたテーブルに対して実行すると、index_merge 最適化 (インデックスマージの最適化を参照) を使用するクエリが無効な結果を返す可能性があります。(バグ #17588348)

Aurora MySQL データベースエンジンの更新 (2019-01-17) 1.17.8
  • バグ #13418638: CREATE TABLE IF NOT EXISTS METADATA LOCK IS TOO RESTRICTIVE

Aurora MySQL データベースエンジンの更新 (2019-02-07) 1.19.0
  • BUG #32917: DETECT ORPHAN TEMP-POOL FILES, AND HANDLE GRACEFULLY

  • BUG #63144 CREATE TABLE IF NOT EXISTS METADATA LOCK IS TOO RESTRICTIVE