MySQL Forums
Forum List  »  Announcements

MySQL Community Server 5.6.24 has been released
Posted by: Vishal Chaudhary
Date: April 07, 2015 04:53AM

Dear MySQL users,

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

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

http://dev.mysql.com/doc/refman/5.6/en/mysql-nutshell.html

     Starting with 5.6.11, Microsoft Windows packages for MySQL 5.6
     are available both as a "full" installer and as a "web" installer.
     The full installer is significantly larger and comes bundled with
     the latest software releases available. This bundle makes it easy
     to download and configure a full server and development suite.

     The web installer doesn't come bundled with any actual products
     and instead relies on download-on-demand to fetch only the
     products you choose to install. This makes the initial download
     much smaller but increases install time as the individual products
     will need to be downloaded.

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

  http://dev.mysql.com/doc/refman/5.6/en/installing.html

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

  http://dev.mysql.com/downloads/

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:

  https://wikis.oracle.com/display/mysql/Contributing

The following section lists the changes in the MySQL 5.6 since
the release of MySQL 5.6.23. It may also be viewed
online at

http://dev.mysql.com/doc/relnotes/mysql/5.6/en/news-5-6-24.html

Enjoy!


Changes in MySQL 5.6.24 (2015-04-06)

   Functionality Added or Changed

     * CMake support was updated to handle CMake version 3.1.
       (Bug #20344207)

     * The server now includes its version number when it writes
       the initial "starting" message to the error log, to make
       it easier to tell which server instance error log output
       applies to. This value is the same as that available from
       the version system variable. (Bug #74917, Bug #20052694)

     * ALTER TABLE did not take advantage of fast alterations
       that might otherwise apply to the operation to be
       performed, if the table contained temporal columns found
       to be in pre-5.6.4 format (TIME, DATETIME, and TIMESTAMP
       columns without support for fractional seconds
       precision). Instead, it upgraded the table by rebuilding
       it. Two new system variables enable control over
       upgrading such columns and provide information about
       them:

          + avoid_temporal_upgrade controls whether ALTER TABLE
            implicitly upgrades temporal columns found to be in
            pre-5.6.4 format. This variable is disabled by
            default. Enabling it causes ALTER TABLE not to
            rebuild temporal columns and thereby be able to take
            advantage of possible fast alterations.

          + show_old_temporals controls whether SHOW CREATE
            TABLE output includes comments to flag temporal
            columns found to be in pre-5.6.4 format. Output for
            the COLUMN_TYPE column of the
            INFORMATION_SCHEMA.COLUMNS table is affected
            similarly. This variable is disabled by default.
       Both variables are deprecated and will be removed in a
       future MySQL release. (Bug #72997, Bug #18985760)

     * Statement digesting as done previously by the Performance
       Schema is now done at the SQL level regardless of whether
       the Performance Schema is compiled in and is available to
       other aspects of server operation that could benefit from
       it. The default space available for digesting is 1024
       bytes, but can be changed at server startup using the
       max_digest_length system variable.
       References: See also Bug #18304086, Bug #20015246.

   Bugs Fixed

     * InnoDB: A TRUNCATE TABLE operation on a temporary table
       raised an assertion. The temporary table object was
       incompletely constructed when reloaded from SYS_TABLES.
       (Bug #20527363, Bug #72080)

     * InnoDB: A full-text phrase search returned an incorrect
       result. An empty string was handled incorrectly when
       tokenizing a newly inserted row. (Bug #20465273, Bug
       #75755)

     * InnoDB: Optimizing a FULLTEXT index raised an assertion.
       The last optimized word of a FULLTEXT index is stored in
       the CONFIG table value column which is defined as
       CHAR(50). An assertion was raised when the last optimized
       word was greater than 50 characters in length. The CONFIG
       table value column is defined as CHAR(200) as of MySQL
       5.6.24 and MySQL 5.7.6.
       If your innodb_ft_max_token_size setting is greater than
       50, it is recommended that you recreate existing InnoDB
       FULLTEXT indexes after upgrading to MySQL 5.6.24 or MySQL
       5.7.6 to avoid this issue. FULLTEXT indexes created after
       upgrading to MySQL 5.6.24 or MySQL 5.7.6 are unaffected.
       (Bug #20418326)

     * InnoDB: An InnoDB memcached extra_col_value[] array was
       freed without checking the allocated flag, causing a
       server exit. (Bug #20400373)

     * InnoDB: A DML operation performed while a flushing
       operation was in progress raised a memcached-related
       assertion. (Bug #20390277)

     * InnoDB: The memcached process_arithmetic_command raised
       an assertion. The wrong error code was returned for a
       nonexistent decr key. (Bug #20386835)

     * InnoDB: The expiration time (exptime) defined using the
       memcached set command was ignored. InnoDB memcached set
       the expiration time to an interval value instead of a
       system time value. (Bug #20381342, Bug #70055)

     * InnoDB: An assertion was raised when the full-text search
       fts_savepoint_release() function released a named
       transaction savepoint and all subsequent savepoints. Only
       the initial savepoint should be released. (Bug #20341916)

     * InnoDB: A full-text search optimization operation raised
       an assertion. (Bug #20281800)

     * InnoDB: Due to a regression introduced in MySQL 5.6.20,
       mysqld stop did not stop the mysqld server process while
       the InnoDB memcached plugin was active. (Bug #20078646,
       Bug #74956)
       References: This bug is a regression of Bug #18409840.

     * InnoDB: An ALTER TABLE ... RENAME failure on a table with
       a FULLTEXT index raised an assertion. (Bug #20043707)

     * InnoDB: A severe error occurred during the log apply
       phase of an online ALTER TABLE operation that was
       converting a table with a UTF-8 charset to
       ROW_FORMAT=REDUNDANT. (Bug #19843246)

     * InnoDB: When dummy tables are created, the autoinc_mutex
       member of the of the dict_table_t object was created
       unnecessarily. Similarly, the zip_pad.mutex object of
       dict_index_t object was created unnecessarily for dummy
       indexes. To avoid unnecessary mutex contention,
       autoinc_mutex and zip_pad.mutex objects are now allocated
       and initialized on the first lock attempt. (Bug
       #19788198, Bug #73361)

     * InnoDB: An ALTER TABLE ... RENAME operation raised an
       invalid assertion. The assertion code used an incorrect
       transaction object. (Bug #18523599)
       References: This bug is a regression of Bug #17447500.

     * InnoDB: A memcached append operation on an INT column
       caused a segmentation fault. append operations on INT
       columns are not supported and are now blocked. (Bug
       #75200, Bug #20209756)

     * Partitioning: A number of ALTER TABLE statements that
       attempted to add partitions, columns, or indexes to a
       partitioned table while a write lock was in effect for
       this table were not handled correctly. (Bug #74451, Bug
       #74478, Bug #74491, Bug #74560, Bug #74746, Bug #74841,
       Bug #74860, Bug #74869, Bug #19856162, Bug #19864284, Bug
       #19873019, Bug #19891663, Bug #19990815, Bug #20026661,
       Bug #20031966, Bug #20033503, Bug #19827845)

     * Partitioning: Executing an ALTER TABLE on a partitioned
       table on which a write lock was in effect could cause
       subsequent SQL statements on this table to fail. (Bug
       #74288, Bug #74634, Bug #19784790, Bug #19918805)
       References: See also Bug #19856162, Bug #74451.

     * Replication: When replicating from a 5.7.6 or later
       server to a 5.6.23 or earlier server, if the older
       version applier thread encountered an
       Anonymous_gtid_log_event it caused an assert. The fix
       ensures that these new log events added in MySQL 5.7.6
       and later do not cause this problem with 5.6.24 and later
       slaves. If gtid_mode is OFF and the applier thread
       encounters a Gtid_log_event, the applier thread aborts
       with an error. If gtid_mode is ON and the applier thread
       encounters a Anonymous_gtid_log_event, the applier thread
       aborts with an error. (Bug #20436436)

     * Replication: When the automatic_sp_privileges variable is
       set, the server automatically grants the EXECUTE and
       ALTER ROUTINE privileges to the creator of a stored
       routine, if the user does not already have these
       privileges. When a privileged user creates a procedure
       with DEFINER as a non privileged user on a master, the
       current user is considered to be a privileged user and
       the mysql.procs_priv table is not updated. When such a
       statement was replicated to slave, the non-privileged
       DEFINER was considered as the current user on the slave
       and privileges were being allocated. This caused a
       difference in the privileges that were being allocated on
       the master and the slave. The fix ensures that creater of
       the stored routine is added to the binary log, and the
       slave now checks first if the user exists before granting
       privileges. To maintain compatibility with previous
       versions, the DEFINER is used when the INVOKER is not
       available. As part of this fix, anonymous users can be
       used to replicate from master to slave. (Bug #20049894)

     * Replication: When using a slave configured to use a
       special character set such as UTF-16, UTF-32, or UCS-2,
       the receiver (I/O) thread failed to connect. The fix
       ensures that in such a situation, if a slave's character
       set is not supported then default to using the latin1
       character set. (Bug #19855907)

     * Replication: When gtid_mode=ON and slave_net_timeout was
       set to a low value, the slave I/O thread could appear to
       hang. This was due to the slave heartbeat not being sent
       regularly enough when the dump thread found many events
       that could be skipped. The fix ensures that the heartbeat
       is sent correctly in such a situation. (Bug #74607, Bug
       #19975697)

     * CMake failed to detect the OpenSSL version properly for
       recent versions of OpenSSL (the format of the version
       string changed). (Bug #20756770)

     * For execution of prepared statements, no check was made
       whether an audit log plugin returned an error, so
       statement success could erroneously be returned. (Bug
       #20567900)

     * Corrections were made for a number of code issues that
       resulted in compiler warnings about array bounds,
       possibly uninitialized variables, and variables being set
       but not used. (Bug #20458574)

     * Following execution of a GRANT ... WITH GRANT OPTION
       statement, execution of a prepared statement with a view
       could cause a server exit. (Bug #20030284)

     * NULL as an expression was not recognized as a literal for
       calculation of Performance Schema statement digests. (Bug
       #20015246)

     * A user with a name of event_scheduler could view the
       Event Scheduler process list without the PROCESS
       privilege. (Bug #20007583)

     * Trying to create a user after dropping columns from the
       mysql.user table could result in a server exit. (Bug
       #19910140)

     * Ordering by a GROUP_CONCAT() result could cause a server
       exit. (Bug #19880368, Bug #20730220)

     * A malformed mysql.proc table row could result in a server
       exit for DROP DATABASE of the database associated with
       the proc row. (Bug #19875331)

     * SHOW GRANTS after connecting using a proxy user could
       display the password hash of the proxied user. (Bug
       #19817663)

     * Large values of the transaction_prealloc_size system
       variable could cause the server to allocate excessive
       amounts of memory. The maximum value has been adjusted
       down to 128K. A similar change was made for
       transaction_alloc_block_size. Transactions can still
       allocate more than 128K if necessary; this change reduces
       the amount that can be preallocated, as well as the
       maximum size of the incremental allocation blocks. (Bug
       #19770858, Bug #20730053)

     * Certain queries on the
       INFORMATION_SCHEMA.INNODB_FT_CONFIG table could cause a
       server exit. (Bug #19703520)

     * A server exit could occur for queries that compared two
       rows using the <=> operator and the rows belonged to
       different character sets. (Bug #19699237, Bug #20730155)

     * Certain InnoDB errors caused stored function and trigger
       condition handlers to be ignored. (Bug #19683834, Bug
       #20094067)

     * The optimizer could raise an assertion due to incorrectly
       associating an incorrect field with a temporary table.
       (Bug #19612819, Bug #20730129)

     * Audit log filtering was not applied to connection events.
       (Bug #19509398)

     * With audit_log_connection_policy=ERRORS, successful
       COM_QUIT events were errroneously written to the audit
       log. (Bug #19509373)

     * The value of the audit_log_events system variable did not
       equal the sum of the other audit log counters. (Bug
       #19509336)

     * The audit_log_events_filtered system variable did not
       increment when audit log events were filtered. (Bug
       #19509263)

     * Many new features were added to the audit log plugin in
       MySQL 5.6.20, but the version number was not increased.
       The version has been bumped to 1.1. (Bug #19502900)

     * The server could exit due to an optimizer failure to
       allocate enough memory for resolving outer references.
       (Bug #18782905, Bug #19892803)

     * If the audit log file was found to be corrupt at server
       startup, an appropriate error message was not always
       written. Also, if the plugin is loaded, it will be
       initialized regardless of whether the log was corrupt,
       except in the case that renaming the log file fails. (Bug
       #14584292)

     * Creating a FEDERATED table with an AUTO_INCREMENT column
       using a LIKE clause results in a server exit. (Bug
       #12671631)

     * The group_concat_max_len system variable could be set to
       its maximum value at runtime, but not in an option file.
       (Bug #74037, Bug #19670915)

     * A server warning error message referred to the obsolete
       table_cache system variable rather than to
       table_open_cache. Thanks to Daniƫl van Eeden for the
       patch to fix some of the instances. (Bug #73373, Bug
       #19285052, Bug #75081, Bug #20135780)

     * In the DIGEST_TEXT column of Performance Schema statement
       events tables, references to system variables of the form
       @@var_name were stored as @ @ var_name. (Bug #71634, Bug
       #18304086)

     * If the WITH_SSL CMake option was specified with an
       incorrect path to the SSL installation or the path to an
       unsupported (too old) SSL installation, the option was
       implicitly changed to the bundled value and yaSSL was
       used instead. Now CMake exits with an error so the user
       knows that the option value must be changed. (Bug #69744,
       Bug #17162055)

     * mysql_real_connect() could close a file descriptor twice
       if the server was not running. (Bug #69423, Bug
       #19226740)

     * Notification of events for the general log were received
       by the audit log plugin only of the general query log was
       enabled. Now notifications are posted regardless of
       whether the general query log is enabled. (Bug #60782,
       Bug #12368204, Bug #20536590)


On behalf of Oracle/MySQL RE Team
Vishal Chaudhary

Options: ReplyQuote


Subject
Views
Written By
Posted
MySQL Community Server 5.6.24 has been released
5535
April 07, 2015 04:53AM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.