Documentation Home
MySQL 5.0 Release Notes
Related Documentation Download these Release Notes
PDF (US Ltr) - 2.1Mb
PDF (A4) - 2.1Mb

MySQL 5.0 Release Notes  /  Changes in MySQL 5.0.14 (Not released)

Changes in MySQL 5.0.14 (Not released)

Functionality Added or Changed

  • Replication: Multiple-table UPDATE and DELETE statements that do not affect any rows are now written to the binary log and will replicate. (Bug #13348, Bug #12844)

  • Range scans can now be performed for queries on VIEWs such as column IN (<constants>) and column BETWEEN ConstantA AND ConstantB. (Bug #13317)

  • The limit of 255 characters on the input buffer for mysql on Windows has been lifted. The exact limit depends on what the system permits, but can be up to 64KB characters. A typical limit is 16KB characters. (Bug #12929)

  • Added the myisam_stats_method, which controls whether NULL values in indexes are considered the same or different when collecting statistics for MyISAM tables. This influences the query optimizer as described in MyISAM Index Statistics Collection. (Bug #12232)

  • The CHAR() function now takes into account the character set and collation given by the character_set_connection and collation_connection system variables. For an argument n to CHAR(), the result is n mod 256 for single-byte character sets. For multibyte character sets, n must be a valid code point in the character set. Also, the result string from CHAR() is checked for well-formedness. For invalid arguments, or a result that is not well-formed, MySQL generates a warning (or, in strict SQL mode, an error). (Bug #10504)

  • Re-enabled the --delayed-insert option for mysqldump, which now checks for each table dumped whether its storage engine supports DELAYED inserts. (Bug #7815)

  • RENAME TABLE now works for views as well, as long as you do not try to rename a view into a different database. (Bug #5508)

  • Configure-time checking for the availability of multibyte macros and functions in the bundled readline library. This improves handling of multibyte character sets in the mysql client. (Bug #3982)

  • When an InnoDB foreign key constraint is violated, the error message now indicates which table, column, and constraint names are involved. (Bug #3443)

Bugs Fixed

  • MySQL Cluster: A trigger updating the value of an AUTO_INCREMENT column in an NDB table would insert an error code rather than the expected value into the column. (Bug #13961)

  • MySQL Cluster: If ndb_restore could not find a free mysqld process, it crashed. (Bug #13512)

  • MySQL Cluster: Adding an index to a table with a large number of columns (more then 100) crashed the storage node. (Bug #13316)

  • MySQL Cluster: BIT columns and following columns in NDB tables were corrupt when dumped by mysqldump. (Bug #13152)

  • MySQL Cluster: Queries on NDB tables that were executed using index_merge could produce incorrect results. (Bug #13081)

  • MySQL Cluster: Receipt of several ENTER SINGLE USER MODE commands by multiple ndb_mgmd processes within a short period of time resulted in cluster shutdown. (Bug #13053)

  • MySQL Cluster: Multiple ndb_mgmd processes in a cluster did not know each other's IP addresses. (Bug #12037)

  • MySQL Cluster: With two mgmd processes in a cluster, ndb_mgm output for SHOW would display the same IP address for both processes, even when they were on different hosts. (Bug #11595)

  • MySQL Cluster: LOAD DATA INFILE with a large data file failed. (Bug #10694)

  • MySQL Cluster: When deleting a great many (tens of thousands of) rows at once from an NDB table, an improperly dereferenced pointer could cause the mysqld process to crash. (Bug #9282)

  • Replication: The --replicate-rewrite-db and --replicate-do-table options did not work for statements in which tables were aliased to names other than those listed by the options. (Bug #11139)

  • Certain joins using Range checked for each record in the query execution plan could cause the server to crash. (Bug #24776)

  • Joins nested under NATURAL or USING joins were sometimes not initialized properly, causing a server crash. (Bug #13545)

  • After running configure with the --with-embedded-privilege-control option, the embedded server failed to build. (Bug #13501)

  • The optimizer chose a less efficient execution plan for col_name BETWEEN const AND const than for col_name = const, even though the two expressions are logically equivalent. Now the optimizer can use the ref access method for both expressions. (Bug #13455)

  • Locking a view with the query cache enabled and query_cache_wlock_invalidate enabled could cause a server crash. (Bug #13424)

  • A HAVING clause that references an unqualified view column name could crash the server. (Bug #13411)

  • The --skip-innodb-doublewrite option disables use of the InnoDB doublewrite buffer. However, having this option in effect when creating a new MySQL installation prevented the buffer from even being created, resulting in a server crash later. (Bug #13367)

  • Calling the FORMAT() function with a DECIMAL column value caused a server crash when the value was NULL. (Bug #13361)

  • Comparisons involving row constructors containing constants could cause a server crash. (Bug #13356)

  • Aggregate functions sometimes incorrectly were permitted in the WHERE clause of UPDATE and DELETE statements. (Bug #13180)

  • NATURAL joins and joins with USING against a view could return NULL rather than the correct value. (Bug #13127)

  • For queries with DISTINCT and WITH ROLLUP, the DISTINCT should be applied after the rollup operation, but was not always. (Bug #12887)

  • It was possible to create a view that executed a stored function for which you did not have the EXECUTE privilege. (Bug #12812)

  • Shared-memory connections were not working on Windows. (Bug #12723)

  • The server was not rejecting FLOAT(M,D) or DOUBLE(M,D) columns specifications when M was less than D. (Bug #12694)

  • CHECKSUM TABLE locked InnoDB tables and did not use a consistent read. (Bug #12669)

  • Incorrect creation of DECIMAL local variables in a stored procedure could cause a server crash. (Bug #12589)

  • For queries for which the optimizer determined a join type of Range checked for each record (as shown by EXPLAIN, the query sometimes could cause a server crash, depending on the data distribution. (Bug #12291)

  • After running configure with the --without-server option, the distribution failed to build. (Bug #11680, Bug #13550)

  • Use of a user-defined function within the HAVING clause of a query resulted in an Unknown column error. (Bug #11553)

  • The server crashed when processing a view that invoked the CONVERT_TZ() function. (Bug #11416)

  • When SELECT ... FOR UPDATE or SELECT ... LOCK IN SHARE MODE for an InnoDB table were executed from within a stored function or a trigger, they were converted to a nonlocking consistent read. (Bug #11238)

  • Queries against a MERGE table that has a composite index could produce incorrect results. (Bug #9112)

  • MySQL programs in binary distributions for Solaris 8/9/10 x86 systems would not run on Pentium III machines. (Bug #6772)

  • Nested handlers within stored procedures didn't work. (Bug #6127)