Dear MySQL users,

MySQL Server 5.6.30, a new version of the popular Open Source
Database Management System, has been released. MySQL 5.6.30 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

For information on installing MySQL 5.6.30 on new servers or upgrading
to MySQL 5.6.30 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/mysql/

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.29. It may also be viewed
online at

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

Enjoy!

Changes in MySQL 5.6.30 (2016-04-11)

   Security Notes

     * The linked OpenSSL library for the MySQL Commercial
       Server has been updated to version 1.0.1s. Issues fixed
       in the new version are described at
       http://www.openssl.org/news/vulnerabilities.html.
       This change does not affect the Oracle-produced MySQL
       Community build of MySQL Server, which uses the yaSSL
       library instead. (Bug #22685885, Bug #22923458)

     * MySQL client programs now support an --ssl-mode option
       that enables you to specify the security state of the
       connection to the server. The default value is DISABLED
       (establish an unencrypted connection).
       --ssl-mode=REQUIRED) can be specified to require a secure
       connection, or fail if a secure connection cannot be
       obtained.
       These clients support --ssl-mode: mysql, mysqladmin,
       mysqlcheck, mysqldump, mysqlimport, mysqlshow, mysqlpump,
       mysqlslap, mysqltest, mysql_upgrade.
       For more information, see Command Options for Secure
       Connections
       (http://dev.mysql.com/doc/refman/5.6/en/secure-connection
       -options.html).

   Bugs Fixed

     * InnoDB; Partitioning: When OPTIMIZE TABLE rebuilt a
       partitioned InnoDB table, it placed the resulting
       partition tablespace files (*.ibd files) in the default
       data directory instead of the directory specified using
       the DATA DIRECTORY option. (Bug #75112, Bug #20160327)

     * InnoDB: Running REPLACE operations on multiple
       connections resulted in a hang. (Bug #22530768, Bug
       #79185)

     * InnoDB: MySQL stalled when syncing the InnoDB full-text
       index cache. (Bug #22516559, Bug #16510576, Bug #73816)

     * InnoDB: A CREATE TABLE ... DATA DIRECTORY operation
       failed to create a table while innodb_flush_method was
       set to O_DIRECT. (Bug #22180006, Bug #79200)
       References: This bug is a regression of Bug #21113036.

     * InnoDB: The innodb_open_files setting could exceed the
       open files limit. (Bug #22111472)

     * Replication: Issuing STOP SLAVE caused a spurious Error
       reading packet from server: Lost connection to MySQL
       server during query message to be written to the error
       log. With this fix, when connection to the master is
       lost, the abort_slave flag is checked and the error
       message is printed only if the flag is not set. (Bug
       #22305605, Bug #79504)
       References: See also Bug #12977988, Bug #22290309.

     * Replication: In Slave_worker::write_info(), DBUG_ENTER()
       had "Master_info::write_info" as its argument instead of
       "Slave_worker::write_info". This fix corrects the
       argument. Thanks to Stewart Smith for the patch. (Bug
       #21658067, Bug #78133)

     * Replication: When a multi-threaded slave stopped with an
       error, the same error message was printed three times.
       Now, the SQL thread's kill acceptance status is saved,
       and only printed once. (Bug #21198611, Bug #77237)

     * Replication: mysqlbinlog --verbose displayed BINARY
       (http://dev.mysql.com/doc/refman/5.6/en/binary-varbinary.
       html) and VARBINARY
       (http://dev.mysql.com/doc/refman/5.6/en/binary-varbinary.
       html) data as ordinary strings, causing any single quote
       ("'") or backslash ("\") among the data to be printed as
       such, which was confusing to the users and, in the case
       of a backslash, caused the next character to be skipped.
       This fix makes mysqlbinlog print the characters'
       hexadecimal values ("\x27" for single quote and "\x5c"
       for backslash) instead. (Bug #20836250)

     * Replication: The test case main.merge failed when the
       variables binlog_format was set to "ROW," as the server
       tried to get information for table creation for a child
       table before it was opened. With this fix, the server
       skips getting information for the table in the situation.
       (Bug #20574550)

     * Replication: If a query on a master generated an error
       and partial results were written to the binary log, for
       example due to a DROP TABLE IF EXISTS statement applying
       to multiple tables that would break foreign key
       constraints, when a slave configured with replication
       filters encountered the query it could be incorrectly
       binary logged. This caused errors such as:
       Last_SQL_Error: Query caused different errors on master
       and slave. Error on master: message (format)='Cannot
       delete or update a parent row: a foreign key constraint
       fails' error code=1217 ; Error on slave: actual
       message='no error', error code=0. Default database:
       'db1'. Query: 'DROP TABLE IF EXISTS `table1` /* generated
       by server */'
       There were two fixes required for this bug.

          + If a DROP TABLE statement used to drop a single
            table fails, to avoid partial results causing this
            bug the query is not written to the binary log. If a
            DROP TABLE statement used to drop a list of tables
            fails, any partial results it generates are written
            to the binary log with an error.

          + When a query that generates an error as expected was
            received by a slave but it was skipped due to
            replication filters, the slave was incorrectly
            checking the error. The fix for Bug #76493 ensures
            that this comparison of the expected error from the
            master with the actual error from the slave does not
            happen.
       (Bug #77684, Bug #21435502)
       References: See also Bug #20797764.

     * Integer overflow could occur during client handshake
       processing, leading to a server exit. (Bug #22722946)

     * The System-V initialization script for RHEL6 or older
       failed to enable the mysqld service by default. (Bug
       #22600974)

     * When ExtractValue() found no match for the supplied
       expression, it returned NULL instead of an empty string
       as expected.
       This issue affected MySQL 5.6.28 and 5.6.29 only. (Bug
       #22552615)

     * Improper host name checking in X509 certificates could
       permit man-in-the-middle attacks. (Bug #22295186, Bug
       #22738607)

     * A boolean mode full-text search caused a segmentation
       fault. (Bug #22176795)

     * Concurrent selecting and flushing of a FEDERATED table
       while killing connections accessing it could result in a
       server exit. (Bug #21918190)

     * Executing GRANT PROXY statements after altering the
       definition of the mysql.user system table could result in
       a server exit. (Bug #21699037)

     * Certain error messages included part of the SQL statement
       that produced them, possibly exposing data. (Bug
       #21682356)

     * The Performance Schema assumed that tables named using a
       #sql prefix were temporary and could be ignored. But it
       is possible to create nontemporary tables using that
       prefix. The Performance Schema now uses table attributes
       other than the name to identify temporary tables. (Bug
       #21105475, Bug #22532368, Bug #79934)

     * Character set conversion operations on NULL parameters to
       prepared statements could cause a server exit. (Bug
       #18823979)

     * Loose Index Scan was not chosen for queries that had an
       equality condition. (Bug #18109609)

     * A MySQL 5.6 server exited during startup if used with a
       5.7 data directory due to the change in 5.7 of the
       mysql.plugin table from MyISAM to InnoDB. A safe shutdown
       now occurs in this circumstance. (Bug #79290, Bug
       #22216779)

     * For INSERT and UPDATE operations that caused FOREIGN KEY
       constraint violations, errors were reported rather than
       warnings when the IGNORE keyword was used. (Bug #78853,
       Bug #22037930)

     * For some queries, an Index Merge access plan was chosen
       over a range scan when the cost for the range scan was
       the same or less. (Bug #77209, Bug #21178196)

     * Certain queries could raise an assertion when a internal
       string operation produced a NULL pointer rather than an
       empty string. (Bug #74500, Bug #19875294, Bug #13358486,
       Bug #79988, Bug #22551116)

     * EXPLAIN for SELECT ... FOR UPDATE statements acquired
       locks. (Bug #72858, Bug #18899860)

     * Processlist state information was not updated correctly
       for LOAD DATA INFILE and could show a state different
       from executing. (Bug #69375, Bug #16912362)

On Behalf of the MySQL/ORACLE RE Team
Hery Ramilison


--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/mysql

Reply via email to