Released on 24 Oct 2008
MySQL 5.0.72 Changelog

This is a Monthly Rapid Update release of the MySQL Enterprise Server 5.0.

This section documents all changes and bugfixes that have been applied since the last MySQL Enterprise Server release (5.0.70). If you would like to receive more fine-grained and personalized update alerts about fixes that are relevant to the version and features you use, please consider subscribing to MySQL Enterprise (a commercial MySQL offering). For more details please see

Bugs Fixed

  • Incompatible Change: In connection with view creation, the server created arc directories inside database directories and maintained useless copies of .frm files there. Creation and renaming procedures of those copies as well as creation of arc directories has been discontinued.

    This change does cause a problem when downgrading to older server versions which manifests itself under these circumstances:

    1. Create a view v_orig in MySQL 5.0.72 or higher.

    2. Rename the view to v_new and then back to v_orig.

    3. Downgrade to an older 5.0.x server and run mysql_upgrade.

    4. Try to rename v_orig to v_new again. This operation fails.

    As a workaround to avoid this problem, use either of these approaches:

    • Dump your data using mysqldump before downgrading and reload the dump file after downgrading.

    • Instead of renaming a view after the downgrade, drop it and recreate it.

    The downgrade problem introduced by the fix for this bug has been addressed as Bug #40021. (Bug #17823)

  • mc.exe is no longer needed to compile MySQL on Windows. This makes it possible to build MySQL from source using Visual Studio Express 2008. (Bug #40280)

  • The server could crash during a sort-order optimization of a dependent subquery. (Bug #39844)

  • The server returned a column type of VARBINARY rather than DATE as the result from the COALESCE(), IFNULL(), IF(), GREATEST(), or LEAST() functions or CASE expression if the result was obtained using filesort in an anonymous temporary table during the query execution. (Bug #39283)

  • References to local variables in stored procedures are replaced with NAME_CONST(name, value) when written to the binary log. However, an illegal mix of collation error might occur when executing the log contents if the value's collation differed from that of the variable. Now information about the variable collation is written as well. (Bug #39182)

  • Some recent releases for Solaris 10 were built on Solaris 10 U5, which included a new version of that does not work on U4 or earlier. To correct this, Solaris 10 builds now are created on machines that do not have that upgraded, so that they will work on Solaris 10 installations both with and without the upgraded (Bug #39074)

  • Column names constructed due to wild-card expansion done inside a stored procedure could point to freed memory if the expansion was performed after the first call to the stored procedure. (Bug #38823)

  • If delayed insert failed to upgrade the lock, it did not free the temporary memory storage used to keep newly constructed BLOB values in memory, resulting in a memory leak. (Bug #38693)

  • A server crash resulted from concurrent execution of a multiple-table UPDATE that used a NATURAL or USING join together with FLUSH TABLES WITH READ LOCK or ALTER TABLE for the table being updated. (Bug #38691)

  • On ActiveState Perl, --start-and-exit started but did not exit. (Bug #38629)

  • Stored procedures involving substrings could crash the server on certain platforms due to invalid memory reads. (Bug #38469)

  • The server crashed if an argument to a stored procedure was a subquery that returned more than one row. (Bug #37949)

  • When analyzing the possible index use cases, the server was incorrectly reusing an internal structure, leading to a server crash. (Bug #37943)

  • A SELECT with a NULL NOT IN condition containing a complex subquery from the same table as in the outer select caused an assertion failure. (Bug #37894)

  • On a 32-bit server built without big tables support, the offset argument in a LIMIT clause might be truncated due to a 64-bit to 32-bit cast. (Bug #37075)

  • Host name values in SQL statements were not being checked for '@', which is illegal according to RFC952. (Bug #35924)

  • mysql_install_db failed on machines that had the host name set to localhost. (Bug #35754)

  • Dynamic plugins failed to load on i5/OS. (Bug #35743)

  • XA transaction rollbacks could result in corrupted transaction states and a server crash. (Bug #28323)

  • The Questions status variable is intended as a count of statements sent by clients to the server, but was also counting statements executed within stored routines. (Bug #24289)

  • For access to the INFORMATION_SCHEMA.VIEWS table, the server did not check the SHOW VIEW and SELECT privileges, leading to inconsistency between output from that table and the SHOW CREATE VIEW statement. (Bug #22763)

  • mysqld_safe would sometimes fail to remove the pid file for the old mysql process after a crash. As a result, the server failed to start due to a false A mysqld process already exists... error. (Bug #11122)