![]() |
![]() |
MySQL 5.1.54 リリースノート (日本語翻訳)
機能の追加または変更:
・ IBMDB2I ストレージエンジンのサポートが削除された(Bug#58079)。
・ pstack ライブラリが機能していなかったため、 configure の--with-pstackオプションと共に削除された。 mysqld の--enable-pstackオプションは廃止され、MySQL5.5では削除される(Bug#57210)。
修正されたバグ:
・ パフォーマンス : InnoDB ストレージエンジン : InnoDB テーブルに対して複数の ANALYZETABLE または SHOWTABLESTATUS ステートメントが同時に実行された場合の同時並行性が改善された(Bug#53046)。
・ InnoDB ストレージエンジン : ROW_FORMAT=COMPRESSED または ROW_FORMAT=DYNAMIC で作成された InnoDB テーブルにおいて、 READUNCOMMITTED アイソレーションレベルを使用したクエリを実行する際に、オフページストレージを利用する BLOB などの大きなカラムが同時に挿入された場合、サーバが表明違反で停止する可能性があった(Bug#57799)。
・ InnoDB ストレージエンジン : 既存の InnoDB テーブルが、 ALTERTABLE ステートメント中の KEY_BLOCK_SIZE 句によって暗黙的に ROW_FORMAT=COMPRESSED に変更される可能性があった。現在は、 ALTERTABLE ステートメントに ROW_FORMAT=COMPRESSED 句が明示的に指定されている場合のみ、行フォーマットがCOMPRESSEDに変更される。
デフォルトでないその他の有効な ROW_FORMAT パラメータと KEY_BLOCK_SIZE の両方が指定されている場合は、 ROW_FORMAT パラメータが優先される。 KEY_BLOCK_SIZE によって ROW_FORMAT=COMPRESSED が有効になるのは、 ROW_FORMAT が CREATETABLE ステートメントおよび ALTERTABLE ステートメントのいずれにも指定されていない場合か、 DEFAULT と指定されている場合のみである。 KEY_BLOCK_SIZE 句と ROW_FORMAT 句で矛盾が生じる場合、 innodb_strict_mode がオフであれば KEY_BLOCK_SIZE は無視され、 innodb_strict_mode がオンの場合は、ステートメントによってエラーが生じる(Bug#56632)。
・ InnoDB ストレージエンジン : innodb_strict_mode の設定にかかわらず、 InnoDB テーブルに対する CREATETABLE ステートメントおよび ALTERTABLE ステートメントで KEY_BLOCK_SIZE=0 句が許可される。ゼロ値によって、 KEY_BLOCK_SIZE テーブルパラメータが ROW_FORMAT パラメータに応じて、あらかじめ指定されていなかったようにデフォルト値にリセットされる。ROW_FORMAT=COMPRESSEDの場合、デフォルト値は8である。それ以外の場合は、KEY_BLOCK_SIZEは使用されず、テーブルパラメータと共に保存されることもない。
この修正の結果、 innodb_strict_mode が有効になっている時は ROW_FORMAT=FIXED は許可されない(Bug#56628)。
・ InnoDB ストレージエンジン : InnoDB の起動メッセージにバッファプールの初期化の開始時間と終了時間、およびバッファプールの合計サイズが含まれるようになった(Bug#48026)。
・ パーティショニング : AUTO_INCREMENT カラムで INSERT...ONDUPLICATEKEYUPDATE column =0 ステートメントを実行すると、デバッグサーバがクラッシュしていた(Bug#57890)。
・ パーティショニング :テーブルパーティションに対して操作を行う ALTERTABLE ステートメントが、影響を受けたテーブルのロック中に失敗した場合に、サーバがクラッシュする可能性があった(Bug#56172)。
・ コンパイルに関するいくつかの問題が修正された(Bug#57992、Bug#57993、Bug#57994、Bug#57995、Bug#57996、Bug#57997、Bug#58057)。
・ NULLで終了しない文字列を UpdateXML() または ExtractValue() に渡すと、サーバが表明を発行して停止する可能性があった(Bug#57279)。
・ IndexMergeアクセスメソッドとテンポラリファイルを使用して実行されるクエリによって、不正確な結果が返される可能性があった(Bug#56862)。
・ 同一の変数を二重に割り当てた時のメモリの重複に関するValgrind警告が修正された(Bug#56138)。
・ ストアドプロシージャでエラーが発生した場合、異なるデフォルトのデータベースにセッションが残ってしまう可能性があった(Bug#54375)。
・ TIME_TO_SEC() 関数の結果によるグループ化によって、サーバがクラッシュしたり、不正確な結果が生じる可能性があった。 BLOB を返す関数によるグループ化によって、予期しない“Duplicateentry”エラーおよび不正確な結果が生じる可能性があった(Bug#52160)。
・ SHOW ステートメントによって使用される find_files() 関数によって、冗長で不必要なメモリ割り当てが行われる可能性があった(Bug#51208)。
・ Windowsのサンプルオプションファイルに、Linuxにより適した値が含まれていた(Bug#50021)。
・ RENAMETABLE 操作が失敗した場合、 FLUSHTABLESWITHREADLOCK が完了しない可能性があった(Bug#47924)。