MySQL は、INSERT INTO t1 SELECT ... FROM t2
WHERE ...
で、t2
にテーブルレベルの読み取りロックが設定されていた。このロックが設定されなくなった。
バグ修正: 32 ビットコンピュータで、InnoDB のログファイルを結合した大きさが 2 GB 以上であると、InnoDB が誤った位置にログを書き込んでいた。このため、クラッシュリカバリと InnoDB ホットバックアップがログスキャンで失敗する可能性があった。
バグ修正: インデックスカーソルのリストアが、理論的に失敗する可能性があった。
バグ修正: btr0sea.c
の関数
btr_search_info_update_slow
でのアサートが、3
つのスレッドの競合で理論的に失敗する可能性があった。
バグ修正:
主キーのインデックスツリーの高さが 1
である BLOB
テーブルで、パージによってハングが発生する可能性があった。現象:
btr_free_externally_stored_field()
に設定された
X-ラッチによって発生するセマフォ待ち。
バグ修正: MySQL が、SELECT
ステートメントの途中でクエリを推定すると、btr0sea.c
の適応的なハッシュインデックスラッチで
InnoDB がハングする可能性があった。
バグ修正:
適応的なハッシュインデックスの検索がパージまたは挿入と同時に実行された場合に、InnoDB
がテーブルの破損を報告し、page_dir_find_owner_slot()
でアサートする可能性があった。
バグ修正: Windows 2000
のあるファイルシステムスナップショットツールによって、InnoDB
のファイル書き込みがエラー 33
ERROR_LOCK_VIOLATION
で失敗する可能性があった。
同期書き込みで、InnoDB が書き込みを 1
秒間隔で 100 回再試行するようになった。
未解決のバグ: MySQL
レプリケーションで、SET
FOREIGN_KEY_CHECKS=0
が適切にレプリケートされない。この修正は
4.0.11 で行われ、3.23
に移植される可能性は低い。
InnoDB page0cur.c
の関数
page_cur_search_with_match
で、InnoDB
が同じページから永久的に動かなくなるバグが修正された。
このバグは、テーブルに複数のページがある場合のみ発生する。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.