List:Announcements« Previous MessageNext Message »
From:Joerg Bruehe Date:March 7 2011 7:44pm
Subject:MySQL Database Server 5.1.56 has been released
View as plain text  
Dear MySQL users,

MySQL Server 5.1.56, a new version of the popular Open Source
Database Management System, has been released. MySQL 5.1.56 is
recommended for use on production systems.

For an overview of what's new in MySQL 5.1, please see

For information on installing MySQL 5.1.56 on new servers or upgrading
to MySQL 5.1.56 from previous MySQL releases, please see

MySQL Server is available in source and binary form for a number of
platforms from our download pages at

Not all mirror sites may be up to date at this point in time, so if you
can't find this version on some mirror, please try again later or choose
another download site.

We welcome and appreciate your feedback, bug reports, bug fixes,
patches, etc.:

For information on open issues in MySQL 5.1, please see the errata
list at

The following section lists the changes in the MySQL source code since
the previous released version of MySQL 5.1. It may also be viewed
online at

Changes in MySQL 5.1.56 (01 March 2011):

   Functionality added or changed:

     * mysqldump --xml now displays comments from column definitions.
       (Bug #13618)

   Bugs fixed:

     * InnoDB Storage Engine: InnoDB returned values for
       "rows examined" in the query plan that were higher than
       expected. NULL values were treated in an inconsistent way. The
       inaccurate statistics could trigger "false positives" in
       combination with the MAX_JOIN_SIZE setting, because the
       queries did not really examine as many rows as reported.
       (Bug #30423)

     * Partitioning: Trying to use the same column more than once in
       the partitioning key when partitioning a table by KEY caused
       mysqld to crash. Such duplication of key columns is now
       expressly disallowed, and fails with an appropriate error.
       (Bug #53354, Bug #57924)

     * Replication: When using the statement-based logging format,
       affecting transactional tables that did not fail were not
       written to the binary log if they did not insert any rows.
       (With statement-based logging, all successful statements
       should be logged, whether they do or do not cause any rows to
       be changed.) (Bug #59338)

     * Replication: Formerly, STOP SLAVE stopped the slave I/O thread
       first and then stopped the slave SQL thread; thus, it was
       possible for the I/O thread to stop after replicating only
       part of a transaction which the SQL thread was executing, in
       wich case---if the transaction could not be rolled back
       safely---the SQL thread could hang.
       Now, STOP SLAVE stops the slave SQL thread first and then
       stops the I/O thread; this guarantees that the I/O thread can
       fetch any remaining events in the transaction that the SQL
       thread is executing, so that the SQL thread can finish the
       transaction if it cannot be rolled back safely. (Bug #58546)

     * A query of the following form returned an incorrect result,
       where the values for col_name in the result set were entirely
       replaced with NULL values:
           SELECT DISTINCT col_name ... ORDER BY col_name DESC;
       (Bug #59308, Bug #11766241)

     * DELETE or UPDATE statements could fail if they used DATE or
       DATETIME values with a year, month, or day part of zero.
       (Bug #59173)

     * The ESCAPE clause for the LIKE operator allows only
       expressions that evaluate to a constant at execution time, but
       aggregrate functions were not being rejected. (Bug #59149)

     * Memory leaks detected by Valgrind, some of which could cause
       incorrect query results, were corrected. (Bug #59110, Bug

     * mysqlslap failed to check for a NULL return from
       mysql_store_result() and crashed trying to process the result
       set. (Bug #59109)

     * In debug builds, SUBSTRING_INDEX(FORMAT(...), FORMAT(...))
       could cause a server crash. (Bug #58371)

     * When mysqldadmin was run with the --sleep and --count options,
       it went into an infinite loop executing the specified command.
       (Bug #58221)

     * Some string manipulating SQL functions use a shared string
       object intended to contain an immutable empty string. This
       object was used by the SQL function SUBSTRING_INDEX() to
       return an empty string when one argument was of the wrong
       datatype. If the string object was then modified by the SQL
       function INSERT(), undefined behavior ensued. (Bug #58165, Bug

     * Parsing nested regular expressions could lead to recursion
       resulting in a stack overflow crash. (Bug #58026, Bug

     * The mysql client went into an infinite loop if the standard
       input was a directory. (Bug #57450)

     * The expression const1 BETWEEN const2 AND field was optimized
       incorrectly and produced incorrect results.
       (Bug #57030, Bug #11764215)

     * Some RPM installation scripts used a hardcoded value for the
       data directory, which could result in a failed installation
       for users who have a nonstandard data directory location. The
       same was true for other configuration values such as the PID
       file name. (Bug #56581, Bug #11763817)

     * On FreeBSD and OpenBSD, the server incorrectly checked the
       range of the system date, causing legal values to be rejected.
       (Bug #55755, Bug #11763089)

     * When using ExtractValue() or UpdateXML(), if the XML to be
       read contained an incomplete XML comment, MySQL read beyond
       the end of the XML string when processing, leading to a crash
       of the server. (Bug #44332)


Joerg Bruehe
Senior Release Engineer, MySQL Build Team, Oracle

Joerg Bruehe,  MySQL Build Team,  joerg.bruehe@stripped
ORACLE Deutschland B.V. & Co. KG,   Komturstrasse 18a,   D-12099 Berlin
Geschaeftsfuehrer: Juergen Kunz, Marcel v.d. Molen, Alexander v.d. Ven
Amtsgericht Muenchen: HRA 95603

MySQL Database Server 5.1.56 has been releasedJoerg Bruehe7 Mar