Version Historie vonMySQL Server 5.5.11

Functionality added or changed:

  • Previously, for queries that were aborted due to a sort problem or terminated with KILL in the middle of a sort, the server wrote the message Sort aborted to the error log. Now the server writes more information about the cause of the error. These causes include:
Insufficient disk space in tmpdir prevented tmpfile from being created 
Insufficient memory for sort_buffer_size to be allocated 
Somebody ran KILL id in the middle of a filesort 
The server was shutdown while some queries were sorting 
A transaction got rolled back or aborted due to lock wait timeout or deadlock 
Unexpected errors, such as source table or even tmp table was corrupt processing of a subquery failed which was also sorting 

(Bug #30771, Bug #11747102)

  • For the Windows Installer, debug information files and the embedded MySQL server have been removed from the standard MSI distribution file to reduce the download size for the majority of users.

If these files are needed, the Zip distribution must be downloaded separately and be extracted in the installation directory, which is most probably C:\Program Files\MySQL\MySQL Server 5.5 on English systems.

Please note that upon product de-installation, these extracted files from the Zip distribution must be removed from the system manually.

  • The undocumented SHOW NEW MASTER statement has been removed.

Bugs fixed:

  • Partitioning: A problem with a previous fix for poor performance of INSERT ON DUPLICATE KEY UPDATE statements on tables having many partitions caused the handler function for reading a row from a specific index to fail to store the ID of the partition last used. This caused some statements to fail with Can't find record errors. (Bug #59297, Bug #11766232)
  • An assertion was raised if an XA COMMIT was issued when an XA transaction had already encountered an error (such as a deadlock) that required the transaction to be rolled back. (Bug #59986, Bug #11766788)
  • On some systems, debug builds of comp_err.c could fail due to an uninitialized variable. (Bug #59906, Bug #11766729)
  • The server read one byte too many when trying to process an XML string lacking a closing quote (') or double quote (") character used as an argument for UpdateXML() or ExtractValue(). (Bug #59901, Bug #11766725)

See also Bug #44332, Bug #11752979.

  • Attempting to create a spatial index on a CHAR column longer than 31 bytes led to an assertion failure if the server was compiled with safemutex support. (Bug #59888, Bug #11766714)
  • Aggregation followed by a subquery could produce an incorrect result. (Bug #59839, Bug #11766675)
  • An incorrect character set pointer passed to my_strtoll10_mb2() caused an assertion to be raised. (Bug #59648, Bug #11766519)
  • mysqldump did not quote database names in ALTER DATABASE statements in its output, which could cause an error at reload time for database names containing a dash. (Bug #59398, Bug #11766310)
  • The MYSQL_HOME environment variable was being ignored. (Bug #59280, Bug #11766219)
  • If a multiple-table update updated a row through two aliases and the first update physically moved the row, the second update failed to locate the row. This resulted in different errors depending on storage engine, although these errors did not accurately describe the problem:
    • MyISAM: Got error 134 from storage engine
    • InnoDB: Can't find record in 'tbl'

For MyISAM, which is nontransactional, the update executed first was performed but the second was not. In addition, for two equal multiple-table update statements, one could succeed and the other fail depending on whether the record actually moved, which is inconsistent.

Now such an update returns an error if it will update a table through multiple aliases, and perform an update that may physically more the row in at least one of these aliases. (Bug #57373, Bug #11764529, Bug #55385, Bug #11762751)

  • SHOW WARNINGS output following EXPLAIN EXTENDED could include unprintable characters. (Bug #57341, Bug #11764503)
  • When CASE ... WHEN arguments had different character sets, 8-bit values could be referenced as utf16 or utf32 values, causing an assertion to be raised. (Bug #44793, Bug #11753363)
  • Bitmap functions used in one thread could change bitmaps used by other threads, causing an assertion to be raised. (Bug #43152, Bug #11752069)