MySQL 5.1.36 リリース!
投稿日時 2009-7-3 15:05:07 | トピック: MySQL 5.1
| MySQL 5.1.36 がリリースされました。 これは MySQL 5.1 シリーズの最新バージョンです。
このバージョンには、MyNAのメーリングリストで報告され、ML内の見事なやりとりによってパッチ提案まで進んだ、「sjis系文字に UPPER(), LOWER() を処理すると、2バイト文字であることを無視して変換してしまう(=文字化けが発生する)」という問題への対応が含まれています。 http://www.mysql.gr.jp/mysqlml/mysql/msg/14789
-------------------------------------------------- - Lettercase conversion in multibyte cp932 or sjis character sequences could produce incorrect results. (Bug#44352: http://bugs.mysql.com/44352) --------------------------------------------------
ダウンロードはこちらから: http://dev.mysql.com/downloads/
-------------- 以下チェンジログ: ■機能の追加と変更(5.1.36): - Important Change: Replication: Previously, incident log events were represented as comments in the output from mysqlbinlog, making them effectively silent when playing back the binlog. (An incident log event represents an incident that could cause the contents of the database to change without that event being recorded in the binary log.) This meant that, if the SQL were applied to a server, it could potentially lead to the master and the slave having different data. To make it possible to handle incident log events without breaking applications that expect the previous behavior, the nonsense statement RELOAD DATABASE is added to the SQL output for that incident log event, which causes an error. To use this functionality currently requires hand editing of the dump file and handling of each case on an individual basis by a database administrator before applying the output to a server. (Bug#44442: http://bugs.mysql.com/44442)
- The time zone tables for Windows available at timezones.html have been updated. (Bug#39923: http://bugs.mysql.com/39923)
- The mysqltest program now has a move_file from_file to_file command for renaming files. This should be used in test cases rather than invoking an external command that might be platform specific. (Bug#39542: http://bugs.mysql.com/39542)
■バグ修正(5.1.36): - Incompatible Change: The server can load plugins under the control of startup options. For example, many storage engines can be built in pluggable form and loaded when the server starts. In the following descriptions, plugin_name stands for a plugin name such as innodb. Previously, plugin options were handled like other boolean options (see Section 4.2.3.2, "Program Option Modifiers"). That is, any of these options enabled the plugin:
--plugin_name --plugin_name=1 --enable-plugin_name
And these options disabled the plugin:
--plugin_name=0 --disable-plugin_name --skip-plugin_name
However, use of a boolean option for plugin loading did not provide control over what to do if the plugin failed to start properly: Should the server exit, or start with the plugin disabled? The actual behavior has been that the server starts with the plugin disabled, which can be problematic. For example, if InnoDB fails to start, existing InnoDB tables become inaccessible, and attempts to create new InnoDB tables result in tables that use the default storage engine unless the NO_ENGINE_SUBSTITUTION SQL mode has been enabled to cause an error to occur instead. Now, there is a change in the options used to control plugin loading, such that they have a tristate format:
+ --plugin_name=OFF Do not enable the plugin.
+ --plugin_name[=ON] Enable the plugin. If plugin initialization fails, start the server anyway, but with the plugin disabled. Specifying the option as --plugin_name without a value also enables the plugin.
+ --plugin_name=FORCE Enable the plugin. If plugin initialization fails, do not start the server. In other words, force the server to run with the plugin or not at all.
The values OFF, ON, and FORCE are not case sensitive. Suppose that CSV and InnoDB have been built as pluggable storage engines and that you want the server to load them at startup, subject to these conditions: The server is allowed to run if CSV initialization fails, but must require that InnoDB initialization succeed. To accomplish that, use these lines in an option file:
[mysqld] csv=ON innodb=FORCE
This change is incompatible with the previous implementation if you used options of the form --plugin_name=0 or --plugin_name=1, which should be changed to --plugin_name=OFF or --plugin_name=ON, respectively. --enable-plugin_name is still supported and is the same as --plugin_name=ON. --disable-plugin_name and --skip-plugin_name are still supported and are the same as --plugin_name=OFF. (Bug#19027: http://bugs.mysql.com/19027)
- Replication: When using row-based logging, the length of an event for which the field metadata exceeded 255 bytes in size was incorrectly calculated. This could lead to corruption of the binary log, or cause the server to hang. (Bug#42749: http://bugs.mysql.com/42749) See also Bug#44548: http://bugs.mysql.com/44548, Bug#44672: http://bugs.mysql.com/44672, Bug#44752: http://bugs.mysql.com/44752.
- Replication: The warning Statement is not safe to log in statement format, issued in situations when it cannot be determined that a statement or other database event can be written reliably to the binary log using the statement-based format, has been changed to Statement may not be safe to log in statement format. (Bug#42415: http://bugs.mysql.com/42415)
- Replication: When stopping and restarting the slave while it was replicating temporary tables, the slave server could crash or raise an assertion failure. This was due to the fact that, although temporary tables were saved between slave thread restarts, the reference to the thread being used (table->in_use) was not being properly updated when restarting, continuing to reference the old thread instead of the new one. This issue affected statement-based replication only. (Bug#41725: http://bugs.mysql.com/41725)
- ALTER TABLE on a view crashed the server. (Bug#44860: http://bugs.mysql.com/44860)
- UNCOMPRESSED_LENGTH() returned a garbage result when passed a string shorter than 5 bytes. Now UNCOMPRESSED_LENGTH() returns NULL and generates a warning. (Bug#44796: http://bugs.mysql.com/44796)
- Several Valgrind warnings were silenced. (Bug#44774: http://bugs.mysql.com/44774, Bug#44792: http://bugs.mysql.com/44792)
- Selecting RAND(N) function where N is a column of a constant table (table with a single row) failed with a SIGFPE signal. (Bug#44768: http://bugs.mysql.com/44768)
- Conversion of a string to a different character set could use the same buffer for input and output, leading to incorrect results or warnings. (Bug#44743: http://bugs.mysql.com/44743, Bug#44766: http://bugs.mysql.com/44766)
- mysqld_safe could fail to find the logger program. (Bug#44736: http://bugs.mysql.com/44736)
- A Valgrind warning related to transaction processing was silenced. (Bug#44664: http://bugs.mysql.com/44664)
- innochecksum could incorrectly determine the input file name from the arguments. (Bug#44484: http://bugs.mysql.com/44484)
- Incorrect time was reported at the end of mysqldump output. (Bug#44424: http://bugs.mysql.com/44424)
- Caching of GROUP BY expressions could lead to mismatches between compile-time and runtime calculations and cause a server crash. (Bug#44399: http://bugs.mysql.com/44399)
- Lettercase conversion in multibyte cp932 or sjis character sequences could produce incorrect results. (Bug#44352: http://bugs.mysql.com/44352)
- InnoDB was missing DB_ROLL_PTR information in Table Monitor COLUMNS output. (Bug#44320: http://bugs.mysql.com/44320)
- Assertion failure could occur for duplicate-key errors in INSERT INTO ... SELECT statements. (Bug#44306: http://bugs.mysql.com/44306)
- On 64-bit Windows systems, myisamchk did not handle key_buffer_size values larger than 4GB. (Bug#43940: http://bugs.mysql.com/43940)
- EXPLAIN EXTENDED could crash for UNION queries in which the last SELECT was not parenthesized and included an ORDER BY clause. (Bug#43612: http://bugs.mysql.com/43612)
- Multiple-table updates for InnoDB tables could produce incorrect results. (Bug#43580: http://bugs.mysql.com/43580)
- For DELETE statements with ORDER BY var, where var was a global system variable with a NULL value, the server could crash. (Bug#42778: http://bugs.mysql.com/42778)
- Builds linked against OpenSSL had a memory leak in association with use of X509 certificates. (Bug#42158: http://bugs.mysql.com/42158)
- There was a race condition when changing innodb_commit_concurrency at runtime from zero to nonzero or from nonzero to zero. Now this variable cannot be changed at runtime from zero to nonzero or vice versa. The value can still be changed from one nonzero value to another. (Bug#42101: http://bugs.mysql.com/42101)
- SELECT ... INTO @var could produce values different from SELECT ... without the INTO clause. (Bug#42009: http://bugs.mysql.com/42009)
- mysql_zap did not work on Mac OS X. (Bug#41883: http://bugs.mysql.com/41883)
- For views created with a column list clause, column aliases were not substituted when selecting through the view using a HAVING clause. (Bug#40825: http://bugs.mysql.com/40825)
- A multiple-table DELETE involving a table self-join could cause a server crash. (Bug#39918: http://bugs.mysql.com/39918)
- Creating an InnoDB table with a comment containing a '#' character caused foreign key constraints to be omitted. (Bug#39793: http://bugs.mysql.com/39793)
- The mysql option --ignore-spaces was nonfunctional. (Bug#39101: http://bugs.mysql.com/39101)
- If a query was such as to produce the error 1054 Unknown column '...' in 'field list', using EXPLAIN EXTENDED with the query could cause a server crash. (Bug#37362: http://bugs.mysql.com/37362)
- If the MYSQL_HISTFILE environment variable was set to /dev/null, the mysql client overwrote the /dev/null device file as a normal file. (Bug#34224: http://bugs.mysql.com/34224)
- mysqld_safe mishandled certain parameters if they contained spaces. (Bug#33685: http://bugs.mysql.com/33685)
- mysqladmin kill did not work for thread IDs larger than 32 bits. (Bug#32457: http://bugs.mysql.com/32457)
- Several client programs failed to interpret --skip-password as "send no password." (Bug#28479: http://bugs.mysql.com/28479)
- Output from mysql --html did not encode the <, >, or & characters. (Bug#27884: http://bugs.mysql.com/27884)
- mysql_convert_table_format did not prevent converting tables to MEMORY or BLACKHOLE tables, which could result in data loss. (Bug#27149: http://bugs.mysql.com/27149)
|
|