MySQL 5.0.12 ベータ版がリリースされました。


最も普及しているオープンソースデータベース管理システムであるのMySQL 5.0.12 ベータ版がリリースされました。コミュニティーエディションは、http://dev.mysql.com/downloads/とミラーサイトのダウンロード・ページから多くのプラットフォームのためのソースおよびバイナリで、現在利用可能です。






Functionality added or changed:

* Recursive triggers are detected and disallowed. (Bug #11896 (http://bugs.mysql.com/11896),Bug#12644(http://bugs.mysql.com/12644))
* Natural joins and joins with USING, including outer join variants, now are processed according to the SQL:2003 standard. (Bug #4789 (http://bugs.mysql.com/4789), Bug #6136 (http://bugs.mysql.com/6136), Bug #6276 (http://bugs.mysql.com/6276), Bug #6495 (http://bugs.mysql.com/6495), Bug #6558 (http://bugs.mysql.com/6558), Bug #9978 (http://bugs.mysql.com/9978), Bug #10646 (http://bugs.mysql.com/10646),Bug#10972(http://bugs.mysql.com/10972), Bug #11710 (http://bugs.mysql.com/11710))
* SHOW OPEN TABLES now supports FROM and LIKE clauses. (Bug #12183(http://bugs.mysql.com/12183))
* SHOW TABLE STATUS FROM INFORMATION_SCHEMA now sorts output by table name the same as it does forother databases. (Bug #12315 (http://bugs.mysql.com/12315))
* SHOW ENGINE INNODB STATUS now can display longer query strings. (Bug #7819 (http://bugs.mysql.com/7819))
* Added the SLEEP() function, which pauses for the number of seconds given by its argument. (Bug #6760 (http://bugs.mysql.com/6760))
* Trying to drop the default keycache by setting @@global.key_buffer_size to zero now returns a warning that the default keycache cannot be dropped. (Bug #10473 (http://bugs.mysql.com/10473))
* The stability of cursors when used with InnoDB tables was greatly improved. (Bug #11832 (http://bugs.mysql.com/11832), Bug #12243 (http://bugs.mysql.com/12243),Bug#11309(http://bugs.mysql.com/11309))
* It is no longer possible to issue FLUSH commands from within storedfunctions or triggers. See Section I.1, "Restrictions on StoredRoutines and Triggers" for details.(Bug #12280 (http://bugs.mysql.com/12280),Bug#12307 (http://bugs.mysql.com/12307))
* INFORMATION_SCHEMA objects are now reported as a SYSTEM VIEW table type. (Bug #11711 (http://bugs.mysql.com/11711))

Bugs fixed:

* An optimizer estimate of zero rows for a non-empty InnoDB table usedin a left or right join could cause incomplete rollback for the table.(Bug #12779 (http://bugs.mysql.com/12779))
* Interleaved execution of stored procedures and functions could be written to the binary log incorrectly, causing replication slaves to get out of sync. (Bug #12335 (http://bugs.mysql.com/12335))
* A query of the form SHOW TABLE STATUS FROM db_name WHERE name IN (select_query) would crash the server. (Bug #12636 (http://bugs.mysql.com/12636))
* Users created using an IP address or other alias rather than a hostname listed in /etc/hosts could not set their own passwords. (Bug #12302 (http://bugs.mysql.com/12302))
* Using DESCRIBE on a view after renaming a column in one of the view's base tables caused the server to crash. (Bug #12533(http://bugs.mysql.com/12533))
* DELETE or UPDATE for an indexed MyISAM table could fail. This was dueto a change in end-space comparison behavior from 4.0 to 4.1. (Bug #12565 (http://bugs.mysql.com/12565))
* Joins on VARCHAR columns of different lengths could produce incorrectresults. (Bug #11398 (http://bugs.mysql.com/11398))
* A “Duplicate column name” error no longer occurs when selecting from a view defined as SELECT * from a join that uses a USING clause on tables that have a common column name. (Bug #6558 (http://bugs.mysql.com/6558))
* Invocations of the SLEEP() function incorrectly could get optimizedaway for statements in which it occurs. Statements containing SLEEP() incorrectly could be stored in the query cache. (Bug #12689 (http://bugs.mysql.com/12689))
* NDB Cluster: An ALTER TABLE command caused loss of data stored priorto the issuing of the command.(Bug #12118(http://bugs.mysql.com/12118))
* Query cache is switched off if a thread (connection) has tables locked. This prevents invalid results where the locking thread inserts values between a second thread connecting and selecting from the table. (Bug #12385 (http://bugs.mysql.com/12385))
* NOW(), CURRENT_TIME and values generated by timestamp columns are now constant for the duration of a stored function or trigger. This prevents the breaking of statements-based replication. (Bug #12480(http://bugs.mysql.com/12480),Bug#12481(http://bugs.mysql.com/12481))
* Some statements executed on a master server caused the SQL thread on a slave to run out of memory. (Bug #12532 (http://bugs.mysql.com/12532))
* A SELECT DISTINCT query with a constant value for one of the columns would return only a single row. (Bug #12625(http://bugs.mysql.com/12625))
* NDB Cluster: Cluster failed to take character set data into account when recomputing hashes (and thus could not locate records for updating or deletion) following a configuration change and node restart. (Bug #12220 (http://bugs.mysql.com/12220))
* NDB Cluster: Wrong error message displayed when cluster management server closed port while mysqld was connecting. (Bug #10950(http://bugs.mysql.com/10950))
* A view was allowed to depend on a function that referred to a temporary table. (Bug #10970 (http://bugs.mysql.com/10970))
* Prepared statement parameters could cause errors in the binary log if the character set was cp932. (Bug #11338 (http://bugs.mysql.com/11338))
* The CREATE_OPTIONS column of INFORMATION_SCHEMA.TABLES showed incorrect options for tables in INFORMATION_SCHEMA. (Bug #12397 (http://bugs.mysql.com/12397))
* MEMORY tables using B-Tree index on 64-bit platforms could produce false table is full errors. (Bug #12460 (http://bugs.mysql.com/12460))
* Issuing FLUSH INSTANCES followed by STOP INSTANCE caused instance manager to crash. (Bug #10957 (http://bugs.mysql.com/10957))
* Duplicate instructions in stored procedures resulted in incorrect execution when the optimizer optimized the duplicate code away. (Bug #12168 (http://bugs.mysql.com/12168))
* SHOW TABLES FROM returned wrong error message if the schema specified did not exist. (Bug #12591 (http://bugs.mysql.com/12591))
* ROW() function returned incorrect result when comparison involved NULL values. (Bug #12509 (http://bugs.mysql.com/12509))
* Views with multiple UNION and UNION ALL produced incorrect results. (Bug #10624 (http://bugs.mysql.com/10624))
* Stored procedures with particularly long loops could crash server due to memory leak. (Bug #12297 (http://bugs.mysql.com/12297), Bug #11247 (http://bugs.mysql.com/11247))
* Trigger and stored procedure execution could break replication. (Bug #12482 (http://bugs.mysql.com/12482))
* A server crash could result from an update of a view defined as a join, even though the update only updated a single table. (Bug #12569 (http://bugs.mysql.com/12569))
* On Windows when the --innodb_buffer_pool_awe_mem_mb option has been given, the server detects whether AWE support is available and has been compiled into the server, and displays an appropriate error message if not. (Bug #6581 (http://bugs.mysql.com/6581))
* The NUMERIC_SCALE column of the INFORMATION_SCHEMA.COLUMNS table should be returned as 0 for integer columns. It was being returned as NULL. (Bug #12301 (http://bugs.mysql.com/12301)) The COLUMN_DEFAULT column of the INFORMATION_SCHEMA.COLUMNS table should be returned as NULL if a column has no default value. An empty string was being returned if the column was defined as NOT NULL. (Bug #12518 (http://bugs.mysql.com/12518))
* Slave I/O threads were considered to be in the running state when launched (rather than after successfully connecting to the master server), resulting in incorrect SHOW SLAVE STATUS output. (Bug #10780 (http://bugs.mysql.com/10780))
* Column names in subqueries must be unique, but were not being checked for uniqueness. (Bug #11796 (http://bugs.mysql.com/11796))
* On Windows, the server could crash during shutdown if both replication threads and normal client connection threads were active. (Bug #11796 (http://bugs.mysql.com/11796))
* Some subqueries of the form SELECT ... WHERE ROW(...) IN (subquery) were being handled incorrectly. (Bug #11867 (http://bugs.mysql.com/11867))
* Selecting from a view after INSERT statements for the view's underlying table yielded different results than subsequent selects. (Bug #12382 (http://bugs.mysql.com/12382))
* The mysql_info() C API function could return incorrect data when executed as part of a multi-statement that included a mix of statements that do and do not return information. (Bug #11688 (http://bugs.mysql.com/11688))
* When restoring INFORMATION_SCHEMA as the default database after failing to execute a stored procedure in an inaccessible database, the server returned a spurious ERROR 42000: Unknown database 'information_schema' message. (Bug #12318 (http://bugs.mysql.com/12318))
* InnoDB: Limit recursion depth to 200 in deadlock detection to avoid running out of stack space. (Bug #12588 (http://bugs.mysql.com/12588))
* Renamed the rest() macro in my_list.h to list_rest() to avoid name clashes with user code. (Bug #12327 (http://bugs.mysql.com/12327))
* DATE_ADD() and DATE_SUB() were converting invalid dates to NULL in TRADITIONAL SQL mode rather than rejecting them with an error. (Bug #10627 (http://bugs.mysql.com/10627))
* A trigger that included a SELECT statement could cause a server crash. (Bug #11587 (http://bugs.mysql.com/11587))
* An incorrect conversion from double to ulonglong caused indexes not to be used for BDB tables on HP-UX. (Bug #10802 (http://bugs.mysql.com/10802))
* myisampack failed to delete .TMD temporary files when run with -T option. (Bug #12235 (http://bugs.mysql.com/12235))
* Added portability check for Intel compiler to address a problem compiling InnoDB code. (Bug #11510 (http://bugs.mysql.com/11510))
* XA allowed two active transactions to be started with the same XID. (Bug #12162 (http://bugs.mysql.com/12162))
* Concatenating USER()/DATEBASE() with a column produces invalid results. (Bug #12351 (http://bugs.mysql.com/12351))
* Creating a view that included the TIMESTAMPDIFF() function resulted in invalid view. (Bug #12298 (http://bugs.mysql.com/12298))
* Comparison of InnoDB multi-part primary keys that include VARCHAR columns can result in incorrect results. (Bug #12340 (http://bugs.mysql.com/12340))
* For PKG installs on Mac OS X, the preinstallation and postinstallation scripts were being run only for new installations and not for upgrade installations, resulting in an incomplete installation process. (Bug #11380 (http://bugs.mysql.com/11380))
* Using cursors and nested queries for the same table, corrupted results were returned for the outer query. (Bug #11909 (http://bugs.mysql.com/11909))
* User variables were not automatically cast for comparisons, causing queries to fail if the column and connection character sets differed. Now when mixing strings with different character sets but the same coercibility, allow conversion if one character set is a superset of the other. (Bug #10892 (http://bugs.mysql.com/10892))
* Selecting from a view defined as a join over many tables could result in a server crash due to miscalculation of the number of conditions in the WHERE clause. (Bug #12470 (http://bugs.mysql.com/12470))
* Pathame values for options such as ---basedir or --datadir didn't work on Japanese Windows machines for directory names containing multibyte characters having a second byte of 0x5C (‘\’). (Bug #5439 (http://bugs.mysql.com/5439))
* A race condition between server threads could cause a crash if one thread deleted a stored routine while another thread was executing a stored routine. (Bug #12228 (http://bugs.mysql.com/12228))
* Mishanding of comparison for rows containg NULL values against rows produced by an IN subquery could cause a server crash. (Bug #12392 (http://bugs.mysql.com/12392))
* Inserting NULL into a GEOMETRY column for a table that has a trigger could result in a server crash if the table was subsequently dropped. (Bug #12281 (http://bugs.mysql.com/12281))
* A failure to obtain a lock for an IN SHARE MODE query could result in a server crash. (Bug #12082 (http://bugs.mysql.com/12082))
* SELECT ... INTO var_name within a trigger could cause a server crash. (Bug #11973 (http://bugs.mysql.com/11973))
* INSERT ... SELECT ... ON DUPLICATE KEY UPDATE could fail with an erroneous “Column 'col_name' specified twice” error. (Bug #10109 (http://bugs.mysql.com/10109))
* SHOW TABLE STATUS sometimes reported a Row_format value of Dynamic for MEMORY tables, though such tables always have a format of Fixed. (Bug #3094 (http://bugs.mysql.com/3094))
* A query using a LEFT JOIN, an IN subquery on the outer table, and an ORDER BY clause, caused the server to crash when cursors were enabled. (Bug #11901 (http://bugs.mysql.com/11901))
* Using a stored procedure that referenced tables in the INFORMATION_SCHEMA database would return an empty result set. (Bug #10055 (http://bugs.mysql.com/10055), Bug #12278 (http://bugs.mysql.com/12278))
* Columns defined as TINYINT(1) redefined as TINYINT(4) when incorporated into a VIEW. (Bug #11335 (http://bugs.mysql.com/11335))
* ISO-8601 formatted dates were not being parsed correctly. (Bug #7308 (http://bugs.mysql.com/7308))
* FLUSH TABLES WITH READ LOCK combined with LOCK TABLE .. WRITE caused deadlock. (Bug #9459 (http://bugs.mysql.com/9459))
* NULL column definitions read incorrectly for inner tables of nested outer joins. (Bug #12154 (http://bugs.mysql.com/12154))
* GROUP_CONCAT ignores the DISTINCT modifier when used in a query joining multiple tables where one of the tables has a single row. (Bug #12095 (http://bugs.mysql.com/12095))
* UNION query with FULLTEXT could cause server crash. (Bug #11869 (http://bugs.mysql.com/11869))