-----BEGIN PGP SIGNED MESSAGE-----
MySQL 5.0.13, a new version of the popular Open Source Database Management
System, has been released. The Community Edition is now available in source
and binary form for a number of platforms from our download pages at
http://dev.mysql.com/downloads/ and mirror sites.
Note that not all mirror sites may be up to date at this point in time -
if you can't find this version on some mirror, please try again later or
choose another download site.
This is the first published release candidate (previously known as "gamma
release") in the 5.0 series. All attention will continue to be focused on
fixing bugs and stabilizing 5.0 for the upcoming production release.
We would like to encourage you to give this release a try! Your feedback
is very important to us.
Please refer to our bug database at http://bugs.mysql.com/ for more
details about the individual bugs fixed in this version.
News from the ChangeLog:
Functionality added or changed
* Better detection of connection timeout for replication servers on
Windows allows elimination of extraneous Lost connection errors in the
error log. (Bug #5588 (http://bugs.mysql.com/5588))
* The counters for the Key_read_requests, Key_reads, Key_write_requests,
and Key_writes status variables were changed from unsigned long to
unsigned longlong to accommodate larger variables without rollover.
(Bug #12920 (http://bugs.mysql.com/12920))
* The restriction on the use of PREPARE, EXECUTE, and DEALLOCATE PREPARE
within stored procedures was lifted. The restriction still applies to
stored functions and triggers.
(Bug #10975 (http://bugs.mysql.com/10975),
Bug #7115 (http://bugs.mysql.com/7115),
Bug #10605 (http://bugs.mysql.com/10605))
* A new command line argument was added to mysqld to ignore client
character set information sent during handshake, and use server side
settings instead, to reproduce 4.0 behaviour
(Bug #9948 (http://bugs.mysql.com/9948)):
* OPTIMIZE TABLE and HANDLER now are prohibited in stored procedures and
functions and in triggers. (Bug #12953 (http://bugs.mysql.com/12953),
Bug #12995 (http://bugs.mysql.com/12995))
* InnoDB: The TRUNCATE TABLE statement for InnoDB tables always resets the
counter for an AUTO_INCREMENT column now, regardless of whether there is
a foreign key constraint on the table. (Beginning with 5.0.3, TRUNCATE
TABLE reset the counter, but only if there was no such constraint.)
(Bug #11946 (http://bugs.mysql.com/11946))
* The LEAST() and GREATEST() functions used to return NULL only if all
arguments were NULL. Now they return NULL if any argument is NULL, the
same as Oracle. (Bug #12791 (http://bugs.mysql.com/12791))
* Two new collations have been added for Esperanto: utf8_esperanto_ci and
* Reorder network startup to come after all other initialization,
particularly storage engine startup which can take a long time. This
also prevents MySQL from being run on a privileged port (any port under
1024) unless run as the root user.
(Bug #11707 (http://bugs.mysql.com/11707))
* The Windows binary packages are now compiled with the Microsoft Visual
Studio 2003 compiler instead of Microsoft Visual C++ 6.0
* The binaries compiled with the Intel icc compiler are now built using
icc 9.0 instead of icc 8.1. You will have to install new versions of the
Intel icc runtime libraries, which are available from here:
* Within a stored procedure, fetching a large number of rows in a loop
using a cursor could result in a server crash or an out of memory error.
Also, values inserted within a stored procedure using a cursor were
interpreted as latin1 even if character set variables had been set to a
different character set. (Bug #6513 (http://bugs.mysql.com/6513),
Bug #9819 (http://bugs.mysql.com/9819))
* For a server compiled with yaSSL, clients that used MySQL Connector/J
were not able to establish SSH connections.
(Bug #13029 (http://bugs.mysql.com/13029))
* When used in view definitions, DAYNAME(expr), DAYOFWEEK(expr),
WEEKDAY(expr) were incorrectly treated as though the expression was
TO_DAYS(expr) or TO_DAYS(TO_DAYS(expr)).
(Bug #13000 (http://bugs.mysql.com/13000))
* Incorrect implicit nesting of joins caused the parser to fail on queries
of the form SELECT ... FROM t1 JOIN t2 JOIN t3 ON t1.t1col = t3.t3col
with an Unknown column 't1.t1col' in 'on clause' error.
(Bug #12943 (http://bugs.mysql.com/12943))
* NDB: A cluster shutdown following the crash of a data node would fail to
terminate the remaining node processes, even though ndb_mgm showed the
shutdown request as having been completed. (Bug #10938
(http://bugs.mysql.com/10938), Bug #9996 (http://bugs.mysql.com/9996),
Bug #11623 (http://bugs.mysql.com/11623))
* A column that can be NULL was not handled properly for WITH ROLLUP in a
subquery or view. (Bug #12885 (http://bugs.mysql.com/12885))
* Within a transaction, the following statements now cause an implicit
commit: CREATE FUNCTION, DROP FUNCTION, DROP PROCEDURE, ALTER FUNCTION,
ALTER PROCEDURE, CREATE PROCEDURE. This corrects a problem where these
statements followed by ROLLBACK might not be replicated properly.
(Bug #12870 (http://bugs.mysql.com/12870))
* Simultaneous execution of DML statements and CREATE TRIGGER or DROP
TRIGGER statements on the same table could cause server crashes or
errors. (Bug #12704 (http://bugs.mysql.com/12704))
* If a stored function invoked from a SELECT failed with an error, it
could cause the client connection to be dropped. Now such errors
generate warnings instead so as not to interrupt the SELECT.
(Bug #12379 (http://bugs.mysql.com/12379))
* A concurrency problem for CREATE ... SELECT could cause a server crash.
(Bug #12845 (http://bugs.mysql.com/12845))
* The server incorrectly generated an Unknown table error message when for
attempts to drop tables in the INFORMATION_SCHEMA database. Now it
issues an Access denied message.
(Bug #9846 (http://bugs.mysql.com/9846))
* The server allowed privileges to be granted explicitly for the
INFORMATION_SCHEMA database. Such privileges are always implicit and
should not be grantable. (Bug #10734 (http://bugs.mysql.com/10734))
* The server allowed TEMPORARY tables and stored procedures to be created
in the INFORMATION_SCHEMA database.
(Bug #9683 (http://bugs.mysql.com/9683), Bug #10708 (http://bugs.mysql.com/10708))
* The server failed to disallow SET AUTOCOMMIT in stored functions and
triggers. It is allowed to change the value of AUTOCOMMIT in stored
procedures, but a runtime error might occur if the procedure is invoked
from a stored function or trigger.
(Bug #12712 (http://bugs.mysql.com/12712))
* Using an INOUT parameter with a DECIMAL data type in a stored procedure
caused a server crash. (Bug #12979 (http://bugs.mysql.com/12979))
* Performing an IS NULL check on the MIN() or MAX() of an indexed columns
produced incorrect results. (Bug #12695 (http://bugs.mysql.com/12695))
* The mysql.server script contained incorrect path for the libexec
directory. (Bug #12550 (http://bugs.mysql.com/12550))
* The NDB START BACKUP command could be interrupted by a SHOW command.
(Bug #13054 (http://bugs.mysql.com/13054))
* The LIKE ... ESCAPE syntax produced invalid results when escape
character was larger than one byte.
(Bug #12611 (http://bugs.mysql.com/12611))
* A client connection thread cleanup problem caused the server to crash
when closing the connection if the binary log was enabled.
(Bug #12517 (http://bugs.mysql.com/12517))
* Using AS to rename a column selected from a view in a subquery made it
not possible to refer to that column in the outer query.
(Bug #12993 (http://bugs.mysql.com/12993))
* The character_set_system system variable could not be selected with
(Bug #11775 (http://bugs.mysql.com/11775))
* A view-creation statement of the form CREATE VIEW name AS SELECT ...
FROM tbl_name AS name failed with a Not unique table/alias: 'name'
error. (Bug #6808 (http://bugs.mysql.com/6808))
* UNION [DISTINCT] was not removing all duplicates for multi-byte
character values. (Bug #12891 (http://bugs.mysql.com/12891))
* Multiplying a DECIMAL value within a loop in a stored routine could
incorrectly result in a value of NULL.
(Bug #12938 (http://bugs.mysql.com/12938))
* mysql and mysqldump were ignoring the --defaults-extra-file option. (Bug
* Columns named in the USING() clause of JOIN ... USING() were incorrectly
resolved in case-sensitive fashion.
(Bug #13067 (http://bugs.mysql.com/13067))
* Local variables in stored routines were not always initialized
correctly. (Bug #13133 (http://bugs.mysql.com/13133))
* SHOW FIELDS FROM schemaname.viewname caused error 1046 when no default
schema was set. (Bug #12905 (http://bugs.mysql.com/12905))
* The value of character_set_results could be set to NULL, but returned
the string "NULL" when retrieved.
(Bug #12363 (http://bugs.mysql.com/12363))
* InnoDB: Limit recursion depth to 200 in deadlock detection to avoid
running out of stack space. (Bug #12588 (http://bugs.mysql.com/12588))
* GROUP_CONCAT() ignored an empty string if it was the first value to
occur in the result. (Bug #12863 (http://bugs.mysql.com/12863))
* Outer join elimination was erroneously applied for some queries that
used a NOT BETWEEN condition, an IN(value_list) condition, or an IF()
condition. (Bug #12101 (http://bugs.mysql.com/12101), Bug #12102
* SHOW FIELDS truncated the TYPE column to 40 characters.
(Bug #7142 (http://bugs.mysql.com/7142))
* Use of PREPARE and EXECUTE with a statement that selected from a view in
a subquery could cause a server crash.
(Bug #12651 (http://bugs.mysql.com/12651))
* On HP-UX 11.x (PA-RISC), the -L option caused mysqlimport to crash. (Bug
* If the binary log is enabled, execution of a stored procedure that
modifies table data and uses user variables could cause a server crash
or incorrect information to be written to the binary log.
(Bug #12637 (http://bugs.mysql.com/12637))
* Queries with subqueries, where the inner subquery uses the range or
index_merge access method, could return incorrect results.
(Bug #12720 (http://bugs.mysql.com/12720))
* After changing the character set with SET CHARACTER SET, the result of
the GROUP_CONCAT() function was not converted to the proper character
set. (Bug #12829 (http://bugs.mysql.com/12829))
* A bug introduced in MySQL 5.0.12 caused SHOW TABLE STATUS to display an
Auto_increment value of 0 for InnoDB tables.
(Bug #12973 (http://bugs.mysql.com/12973))
* Foreign keys were not properly enforced in TEMPORARY tables. Foreign
keys now are disallowed in TEMPORARY tables.
(Bug #12084 (http://bugs.mysql.com/12084))
* Replication of LOAD DATA INFILE failed between systems that use
different pathname syntax (such as delimiter characters).
(Bug #11815 (http://bugs.mysql.com/11815))
* Within a stored procedure, a server crash was caused by assigning to a
VARCHAR INOUT parameter the value of an expression that included the
variable itself. (For example, SET c = c.)
(Bug #12849 (http://bugs.mysql.com/12849))
* SELECT ... JOIN ... ON ... JOIN ... USING caused a server crash.
(Bug #12977 (http://bugs.mysql.com/12977))
* Using GROUP BY when selecting from a view in some cases could cause
incorrect results to be returned.
(Bug #12922 (http://bugs.mysql.com/12922))
* A lock wait timeout caused InnoDB to roll back the entire current
transaction. Now it rolls back only the most recent SQL statement.
(Bug #12308 (http://bugs.mysql.com/12308))
* myisampack did not properly pack BLOB values larger than 2^24 bytes.
(Bug #4214 (http://bugs.mysql.com/4214))
* Incorrect results could be returned from a view processed using a
temporary table. (Bug #12941 (http://bugs.mysql.com/12941))
* The server crashed when one thread resized the query cache while another
thread was using it. (Bug #12848 (http://bugs.mysql.com/12848))
* mysqld_multi now quotes arguments on command lines that it constructs to
avoid problems with arguments that contain shell metacharacters.
(Bug #11280 (http://bugs.mysql.com/11280))
* InnoDB: A consistent read could return inconsistent results due to a bug
introduced in MySQL 5.0.5. (Bug #12947 (http://bugs.mysql.com/12947))
* Deadlock occurred when several account management statements were run
(particularly between FLUSH PRIVILEGES/SET PASSWORD and GRANT/REVOKE
statements). (Bug #12423 (http://bugs.mysql.com/12423))
* The Windows installer made a change to one of the mysql.proc table
files, causing stored routine functionality to be compromised. The
Windows installer now never overwrites files in the MySQL data
directory. During an upgrade from one version to another, a file in the
data directory will not be overwritten even if it has not been modified
since it was put there by an older installer.
If you have already lost access to stored routines because of this
problem, you can get them back using the following procedure:
+ Stop the server.
+ In the mysql\data directory under your MySQL installation
directory, and replace the proc.frm file with corresponding file
from the version of MySQL that you were using before you upgraded.
+ Start the server
+ Start the mysql command-line client (use the root account or
another account that has full database privileges) and execute the
mysql_fix_privilege_tables.sql script that upgrades the grant
tables to the current structure. Instructions for doing this are
given in Section 2.10.8, "Upgrading the Grant Tables."
After this, all stored routine functionality should work.
(Bug #12820 (http://bugs.mysql.com/12820))
* On Windows, the server was preventing tables from being created if the
table name was a prefix of a forbidden name. For example, nul is a
forbidden name because it's the same as a Windows device name, but a
table with the name of n or nu was being forbidden as well.
(Bug #12325 (http://bugs.mysql.com/12325))
* InnoDB was too permissive with LOCK TABLE ... READ LOCAL and alowed new
inserts into the table. Now READ LOCAL is equivalent to READ for InnoDB.
This will cause slightly more locking in mysqldump, but makes InnoDB
table dumps consistent with MyISAM table dumps.
(Bug #12410 (http://bugs.mysql.com/12410))
* Use of the mysql client HELP command from within a stored routine caused
a “packets out of order” error and a lost connection. Now HELP is
detected and disallowed within stored routines.
(Bug #12490 (http://bugs.mysql.com/12490))
* Use of yaSSL for a secure client connection caused LOAD DATA LOCAL
INFILE to fail. (Bug #11286 (http://bugs.mysql.com/11286))
* SHOW CREATE PROCEDURE and SHOW CREATE FUNCTION no longer qualify the
routine name with the database name, for consistency with the behavior
of SHOW CREATE TABLE. (Bug #10362 (http://bugs.mysql.com/10362))
* A UNION of long utf8 VARCHAR columns was sometimes returned as a column
with a LONGTEXT data type rather than VARCHAR. This could prevent such
queries from working at all if selected into a MEMORY table because the
MEMORY storage engine does not support the TEXT data types.
(Bug #12537 (http://bugs.mysql.com/12537))
* If a client has opened an InnoDB table for which the .ibd file is
missing, InnoDB would not honor a DROP TABLE statement for the table.
(Bug #12852 (http://bugs.mysql.com/12852))
* ALTER TABLE ... DISCARD TABLESPACE for non-InnoDB table caused the
client to lose the connection. (The server was not returning the error
properly.) (Bug #12207 (http://bugs.mysql.com/12207))
* DO IFNULL(NULL, NULL) and SELECT CAST(IFNULL(NULL, NULL) AS DECIMAL)
caused a server crash. (Bug #12841 (http://bugs.mysql.com/12841))
* When using a cursor, a SELECT statement that uses a GROUP BY clause
could return incorrect results. (Bug #11904 (http://bugs.mysql.com/11904))
* The SYSDATE() function now returns the time at which it was invoked. In
particular, within a stored routine or trigger, SYSDATE() returns the
time at which it executes, not the time at which the stored routine or
triggering statement began to execute.
(Bug #12480 (http://bugs.mysql.com/12480))
* CREATE VIEW inside a stored procedure caused a server crash if the table
underlying the view had been deleted.
(Bug #12468 (http://bugs.mysql.com/12468))
* A memory leak resulting from repeated SELECT ... INTO statements inside
a stored procedure could cause the server to crash.
(Bug #11333 (http://bugs.mysql.com/11333))
Lenz Grimmer <lenz@stripped>
Senior Production Engineer
MySQL GmbH, http://www.mysql.de/
Are you MySQL certified? http://www.mysql.com/certification/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)
Comment: For info see http://quantumlab.net/pine_privacy_guard/
-----END PGP SIGNATURE-----
|• MySQL 5.0.13-rc has been released||Lenz Grimmer||26 Sep|