Functionality added or changed:
        There is a new
        innodb_autoinc_lock_mode system
        variable to configure the locking behavior that
        InnoDB uses for generating auto-increment
        values. The default behavior now is slightly different from
        before, which involves a minor incompatibility for multiple-row
        inserts that specify an explicit value for the auto-increment
        column in some but not all rows. See
        Section 13.6.4.3, “AUTO_INCREMENT Handling in InnoDB”.
      
Bugs fixed:
MySQL Cluster: Replication: 
        (Replication): Multi-master replication setups did not handle
        --log-slave-updates correctly.
       (Bug#30017)
MySQL Cluster: 
        Backups of TIMESTAMP columns made
        with ndb_restore on a MySQL Cluster using
        data nodes hosts of one endian could not be used to restore the
        cluster's data to data node hosts of the other endian.
       (Bug#30134)
Replication: Row-based replication from a pre-5.1.22 MySQL Server to a MySQL 5.1.22 was unstable due to an uninitialized variable. (Bug#31076)
Replication: Operations that used the time zone replicated the time zone only for successful operations, but did not replicate the time zone for errors that need to know it. (Bug#29536)
        For an InnoDB table if a
        SELECT was ordered by the primary
        key and also had a WHERE field = value clause
        on a different field that was indexed, a DESC
        order instruction would be ignored.
       (Bug#31001)
mysql_install_db could fail to find its message file. (Bug#30678)
        Memory corruption occurred for some queries with a top-level
        OR operation in the WHERE
        condition if they contained equality predicates and other
        sargable predicates in disjunctive parts of the condition.
       (Bug#30396)
        CONNECTION_ID() always returned 0
        for the embedded server (libmysqld).
       (Bug#30389)
        The server created temporary tables for filesort operations in
        the working directory, not in the directory specified by the
        tmpdir system variable.
       (Bug#30287)
        Using KILL QUERY
        or KILL
        CONNECTION to kill a
        SELECT statement caused a server
        crash if the query cache was enabled.
       (Bug#30201)
mysqldump from the MySQL 5.1.21 distribution could not be used to create a dump from a MySQL 5.1.20 or older server. (Bug#30123)
Under some circumstances, a UDF initialization function could be passed incorrect argument lengths. (Bug#29804)
        When using a combination of HANDLER... READ
        and DELETE on a table, MySQL
        continued to open new copies of the table every time, leading to
        an exhaustion of file descriptors.
       (Bug#29474)
This regression was introduced by Bug#21587.
        The mysql_list_fields() C API
        function incorrectly set
        MYSQL_FIELD::decimals for some view columns.
       (Bug#29306)
        Tables using the InnoDB storage engine
        incremented AUTO_INCREMENT values incorrectly
        with ON DUPLICATE KEY UPDATE.
       (Bug#28781)
        Nonrange queries of the form SELECT ... FROM ... WHERE
         sometimes were unnecessarily
        blocked waiting for a lock if another transaction was using
        keypart1=constant,
        ...,
        keypartN=constant
        ORDER BY ... FOR UPDATESELECT ... FOR
        UPDATE on the same table.
       (Bug#28570)
        On Windows, symbols for yaSSL and taocrypt were missing from
        mysqlclient.lib, resulting in unresolved
        symbol errors for clients linked against that library.
       (Bug#27861)
Read lock requests that were blocked by a pending write lock request were not allowed to proceed if the statement requesting the write lock was killed. (Bug#21281)

User Comments
Add your own comment.