Quantcast
Channel: MySQL Forums - Announcements
Viewing all 1041 articles
Browse latest View live

MySQL Enterprise Monitor 3.0.27 has been released (no replies)

$
0
0
MySQL Enterprise Monitor 3.0.27 is now available for download on the
My Oracle Support (MOS) web site.

This is a maintenance release that includes a few enhancements and
fixes a number of bugs. You can find more information on the contents
of this release in the change log:

http://dev.mysql.com/doc/relnotes/mysql-monitor/3.0/en/news-3-0-27.html
(also included at the end of this note for convenience)

You will find binaries for the new release on My Oracle Support:

https://support.oracle.com

Choose the "Patches & Updates" tab, and then choose the "Product or
Family (Advanced Search)" side tab in the "Patch Search" portlet.

IMPORTANT: MySQL Enterprise Monitor (MEM) 3.2 offers many significant
improvements over MEM 3.0 and 3.1 and we highly recommend that you
consider upgrading. More information on MEM 3.2 is available here:

What's New in MySQL Enterprise Monitor 3.2
http://dev.mysql.com/doc/mysql-monitor/3.2/en/mem-comparison-3-2.html

MySQL Enterprise Monitor
http://www.mysql.com/products/enterprise/monitor.html

MySQL Enterprise Monitor Frequently Asked Questions
http://dev.mysql.com/doc/mysql-monitor/3.2/en/mem-faq.html

MySQL Enterprise Monitor Change History
http://dev.mysql.com/doc/relnotes/mysql-monitor/3.2/en/

More information on MySQL Enterprise and the Enterprise Monitor can be
found here:

http://www.mysql.com/products/enterprise/
http://www.mysql.com/products/enterprise/monitor.html
http://www.mysql.com/products/enterprise/query.html
http://forums.mysql.com/list.php?142

If you are not a MySQL Enterprise customer and want to try the Monitor
and Query Analyzer using our 30-day free customer trial, go to
http://www.mysql.com/trials, or contact Sales at
http://www.mysql.com/about/contact.

Thanks and Happy Monitoring!

- The MySQL Enterprise Tools Development Team

==========

Changes in MySQL Enterprise Monitor 3.0.27

Functionality Added or Changed

* The required privileges for configuring a non-bundled repository
were updated in this release. (Bug #21534737)

* The MySQL server, bundled with the MySQL Enterprise Service Manager,
has been upgraded to MySQL 5.6.31.

* The Tomcat server, bundled with the MySQL Enterprise Service
Manager, has been upgraded to 7.0.69.

* The OpenSSL libraries used by the MySQL Enterprise Monitor
installers and MySQL Enterprise Monitor Aggregator have been
upgraded to 1.0.1t.

* The bundled Tomcat Native library is updated to support OpenSSL
1.0.1t.

* The bundled JRE was updated to 1.8.0_102 for both the Agent and
Service Manager.

Bugs Fixed

* The documentation did not specify the correct format for the ssl-ca-
keystore-path parameter. It was listed as a file path, but is a URL.
For example:

ssl-ca-keystore-path=file:///mysql/enterprise/agent/etc/mykeystore
(Bug #24386496)

* The InnoDB Redo Log Pending Writes graph was not displayed for MySQL
5.7 instances. (Bug #23563358)

* The LDAP and SSL documentation did not contain information on how to
connect to LDAP servers which implement AES256. (Bug #23507489)

* LDAP configuration was not validated when saved. As a result, if the
LDAP connection information was incorrectly configured,
NullPointerExceptions were logged, and it was not possible to
connect to the LDAP server. (Bug #23299288)

* The help text of the Binary Log Space Exceeds Specified Limit
advisor was updated. (Bug #2078129)

* Selecting the From/To filter field on the Overview page selected the
Graph Time Range drop-down list instead. It was possible to navigate
to the From/To filter field using the tab button, only.

MySQL Community Server 5.6.33 has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Server 5.6.33, a new version of the popular Open Source
Database Management System, has been released. MySQL 5.6.33 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.33 on new servers or upgrading
to MySQL 5.6.33 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.32. It may also be viewed
online at

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

Enjoy!


==============================================================================
Changes in MySQL 5.6.33 (2016-09-06)


     * Test Suite Notes

     * Functionality Added or Changed

     * Bugs Fixed

   Test Suite Notes

     * In mysql-test-run.pl, a limit of 50 was imposed on the
       number of workers for parallel testing, which on systems
       with more than 50 CPUs resulted in exhaustion of unique
       thread IDs. The ID-exhaustion problem has been corrected,
       and the limit of 50 on number of workers has been lifted.
       Thanks to Daniel Black for the patch on which this change
       was based. Additionally, these changes were made:

          + To avoid idle workers, the number of parallel
            workers now is limited to the number of tests.

          + Previously, if --parallel=auto was given and the
            MTR_MAX_PARALLEL environment variable was not set, a
            limit of 8 was imposed on the number of parallel
            workers. This limit has been lifted.
       (Bug #22342399, Bug #79585)

   Functionality Added or Changed

     * CMake support for compiling with Solaris Studio 12.5 was
       added. (Bug #82249, Bug #24303829, Bug #81274, Bug
       #23212938)

   Bugs Fixed

     * InnoDB: An operation that dropped and created a full-text
       search table raised an assertion. (Bug #24315031)

     * InnoDB: Accessing full-text search auxiliary tables while
       dropping the indexed table raised an assertion. (Bug
       #24009272)

     * InnoDB: An online DDL operation on a table with indexed
       BLOB columns raised an assertion during logging of table
       modifications. (Bug #23760086)

     * For mysqld_safe, the argument to --malloc-lib now must be
       one of the directories /usr/lib, /usr/lib64,
       /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In
       addition, the --mysqld and --mysqld-version options can
       be used only on the command line and not in an option
       file. (Bug #24464380)

     * It was possible to write log files ending with .ini or
       .cnf that later could be parsed as option files. The
       general query log and slow query log can no longer be
       written to a file ending with .ini or .cnf. (Bug
       #24388753)

     * Privilege escalation was possible by exploiting the way
       REPAIR TABLE used temporary files. (Bug #24388746)

     * If the basedir system variable was set at server startup
       from the command line or option file, the value was not
       normalized (on Windows, / was not replaced with /). (Bug
       #23747899, Bug #82125)

     * In-place ALTER TABLE operations which when executed
       separately caused no table rebuild could when combined
       into a single statement result in a table rebuild. (Bug
       #23475211, Bug #81587)

     * A blank server name in CREATE SERVER statements produced
       a server exit rather than an error. (Bug #23295288)

     * A prepared statement that used a parameter in the select
       list of a derived table that was part of a join could
       cause a server exit. (Bug #22392374, Bug #24380263)

     * MEDIUMINT columns used in operations with long integer
       values could result in buffer overflow. (Bug #19984392)

     * A spurious ER_NO_SUCH_TABLE error could occur when
       attempting to execute a prepared CREATE TABLE ... SELECT
       statement that used a temporary table in the FROM clause
       and called a stored function. The same error could occur
       for a nonprepared version of the statement if used in a
       stored procedure when the procedure was re-executed. (Bug
       #16672723, Bug #68972)

     * EINTR handling in the client library has been fixed so
       that interrupted read and write calls are retried.
       Previously, EINTR was ignored. (Bug #82019, Bug
       #23703570)

MySQL Release Engineering

MySQL Connector/NET 7.0.5 m4 Development Release has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Connector/Net 7.0.5 is the second development release that expands
cross-platform support to Linux and OS X when using Microsoft's .NET Core
framework. Now, .NET developers can use the X DevAPI with .NET Core and
Entity Framework Core (EF Core) 1.0 to create server applications that run
on Windows, Linux and OS X. We are very excited about this change and
really look forward to your feedback on it!

MySQL Connector/Net 7.0.5 is also the fourth development release of MySQL
Connector/Net to add support for the new X DevAPI.  The X DevAPI enables
application developers to write code that combines the strengths of the
relational and document models using a modern, NoSQL-like syntax that
does not assume previous experience writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see
http://dev.mysql.com/doc/x-devapi-userguide/en/index.html. For more
information about how the X DevAPI is implemented in Connector/Net, see
http://dev.mysql.com/doc/dev/connector-net.

Please note that the X DevAPI requires at least MySQL Server version
5.7.12 or higher with the X Plugin enabled. For general documentation
about how to get started using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

To download MySQL Connector/Net 7.0.5 M4, see the "Development
Releases" tab at http://dev.mysql.com/downloads/connector/net/

Changes in MySQL Connector/Net 7.0.5 (2016-09-06, Milestone 4)

   Functionality Added or Changed

     * Added support for snapshot change-tracking by recording
       the original values of an entity when it is retrieved
       from the database, and support to access the tracked
       state of entities through DbContext.Entry and
       DbContext.ChangeTracker.

     * Added concurrency tokens and shadow properties to the set
       of conventions used to build an Entity Framework Core
       model based on the shape of entity classes.

     * The .NET Core version of the driver now supports
       connections to MySQL servers configured to use SSL (TSL
       for 5.7) through the MySqlConnection class or a DbContext
       with Entity Framework 6.x or Entity Framework Core.

     * Entity Framework Core support for eager loading can be
       used to load related data from MySQL as part of the
       initial query.

    * Added X DevAPI support for following connections options:

          + ssl-enable: enables the use of SSL as required.
            mysqlx://user:password@192.2.0.1/?ssl-enable

          + ssl-ca: path to a local file that contains a list of
            trusted TLS/SSL CAs as PFX file. This option uses an
            implicit ssl-enable.
            mysqlx://user:password@server.example.com/?ssl-ca=(c
            :\cas.pfx)

          + ssl-ca-pwd: specifies the CA certificate password.
            mysqlx://user:password@server.example.com/?ssl-ca=(c
            :\cas.pfx)&ssl-ca-pwd=password

Nuget packages are available at:

https://www.nuget.org/packages/MySql.Data/7.0.5-IR2
https://www.nuget.org/packages/MySql.Web/7.0.5-IR2
https://www.nuget.org/packages/MySql.Data.Entity/7.0.5-IR2
 

Enjoy and thanks for the support!

On behalf of the MySQL Release Team
-Sreedhar S 

MySQL Connector/J 6.0.4 m3 Development Release has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Connector/J 6.0.4 m3 Development Release is a developer milestone
release for the 6.0.x series.
This release includes the following new features and changes, also described
in more detail on
http://dev.mysql.com/doc/relnotes/connector-j/en/news-6-0-4.html.

As always, we recommend that you check the "CHANGES" file in the download
archive to be aware of changes in behavior that might affect your application.

To download MySQL Connector/J 6.0.4 M3, see the "Development
Releases" tab at http://dev.mysql.com/downloads/connector/j/


Enjoy!

   Changes in MySQL Connector/J 6.0.4 (2016-09-06, Milestone 3)

   Version 6.0.4 Milestone 3 is the third development release of
   the 6.0 branch of MySQL Connector/J, providing an insight
   into upcoming features. It is suitable for use with MySQL
   server versions 5.5, 5.6, and 5.7. It supports the Java
   Database Connectivity (JDBC) 4.2 API.

   Functionality Added or Changed

     * Connector/J now supports the shorthand notation "*" in
       SQL expressions (for example, SELECT COUNT(*) FROM
       mytable) for connections using the X Protocol. (Bug
       #21790242)

   Bugs Fixed

     * On Windows platforms, SSL connections to MySQL servers
       using the X Protocol hung. (Bug #24301468)

     * Connector/J could not be installed as an OSGi bundle,
       because in the Manifest of the Connector/J JAR file, the
       variable name for the OSGi version number was wrong. (Bug
       #23743947, Bug #82046)

     * When Connector/J tried to read from a column of the BIT
       (http://dev.mysql.com/doc/refman/5.7/en/bit-type.html)
       data type, an ArrayIndexOutOfBoundsException resulted.
       (Bug #23644816, Bug #81755, Bug #22931433)

     * A memory leakage occurred when the connection properties
       cachePrepStmts and useServerPrepStmts were both set to be
       true and server-side prepared statements were set as
       non-poolable, which resulted in the prepared statement
       being not closable by the client, and the number of
       prepared statements then kept on increasing.
       When the memory leakage described above occurred, it did
       not make Connector/J fail, as Connector/J switched to
       using client-side prepared statements when the maximum
       number of prepared statements was reached. However, when
       rewriteBatchedStatements was also set to true, the switch
       to client-side prepared statements did not occur, and
       Connector/J threw the MySQLSyntaxErrorException ("Can't
       create more than max_prepared_stmt_count statements")
       when the client wanted to create more prepared statements
       than allowed.
       This fix corrected the way prepared statements are
       handled in order to avoid both of the problems described
       above. (Bug #22954007, Bug #80615)

     * Connector/J failed to connect to a server when using a
       blank password. (Bug #21690043)

Documentation
--------------
Online: http://dev.mysql.com/doc/connector-j/6.0/en/index.html

Reporting Bugs
---------------
We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

On behalf of the MySQL Release Team
-Sreedhar S

MySQL Shell 1.0.5 m3 Development Release has been released (no replies)

$
0
0

Dear MySQL users,

MySQL Shell 1.0.5 M3 is the third development release of the
MySQL for MySQL Shell 1.0 series.

The MySQL Shell is an interactive JavaScript and Python command-line
interface, supporting development and administration for the MySQL
Server. The MySQL Shell enables developers to use a new Create Read
Update Delete (CRUD) API. MySQL Shell is a component of the MySQL
Server.

This is a Developer Release, so we are looking forward to getting your
feedback on the MySQL Shell as well as the new API and all the other new
features.

The MySQL Shell provides

     * Both Interactive and Batch operations

     * JavaScript, Python, and SQL language modes

     * Document and Relational Models

     * CRUD Document and Relational API via scripting

     * Output results in Traditional Table, JSON, and Tab Separated formats

     * Global and Stored Sessions

     * And much more


To download the MySQL Shell
http://dev.mysql.com/downloads/shell

To learn more about MySQL Shell, a component of the MySQL Server, see
http://dev.mysql.com/doc/refman/5.7/en/mysql-shell.html

To learn more about using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html

For MySQL Shell Tutorials
JavaScript - http://dev.mysql.com/doc/refman/5.7/en/mysqlx-shell-tutorial-javascript.html
Python - http://dev.mysql.com/doc/refman/5.7/en/mysqlx-shell-tutorial-python.html

User documentation for the new X DevAPI
http://dev.mysql.com/doc/x-devapi-userguide/en/index.html

For more information about how the X DevAPI is implemented in MySQL Shell,
and its usage, see http://dev.mysql.com/doc/dev/mysqlsh-devapi/

Changes in MySQL Shell 1.0.5 ( 2016-09-06, Milestone 3)

   Bugs Fixed

     * If the connection to a MySQL Server was interrupted,
       issuing \status failed unless followed by a ;. (Bug
       #81278, Bug #23213616)

     * Columns specified as TIME were being displayed by MySQL
       Shell as BOOLEAN. (Bug #81260, Bug #23210710)

     * Attempting to access a Session object that no longer
       existed could cause MySQL Shell to halt unexpectedly. In
       such a situation now an error message is displayed.

     * Previously JavaScript modules were imported as follows:
       var mysqlx=require('mysqlx').mysqlx;
       var mysql=require('mysql').mysql;

       As part of improvements to the way modules are added to
       MySQL Shell, modules are now imported as follows:
       var mysqlx=require('mysqlx');
       var mysql=require('mysql');

On behalf of the MySQL Release Team
Balasubramanian Kandasamy

MySQL Community Server 5.5.52 has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Server 5.5.52 is a new version of the 5.5 production release of
the world's most popular open source database. MySQL 5.5.52 is
recommended for use on production systems.

MySQL 5.5 includes several high-impact enhancements to improve the
performance and scalability of the MySQL Database, taking advantage of
the latest multi-CPU and multi-core hardware and operating systems. In
addition, with release 5.5, InnoDB is now the default storage engine for
the MySQL Database, delivering ACID transactions, referential integrity
and crash recovery by default.

MySQL 5.5 also provides a number of additional enhancements including:

   - Significantly improved performance on Windows, with various Windows
     specific features and improvements
   - Higher availability, with new semi-synchronous replication and
     Replication Heartbeat
   - Improved usability, with Improved index and table partitioning,
     SIGNAL/RESIGNAL support and enhanced diagnostics, including a new
     Performance Schema monitoring capability.

For a more complete look at what's new in MySQL 5.5, please see the
following resources:

MySQL 5.5 is GA, Interview with Tomas Ulin:

   http://dev.mysql.com/tech-resources/interviews/thomas-ulin-mysql-55.html

Documentation:

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

If you are running a MySQL production level system, we would like to
direct your attention to MySQL Enterprise Edition, which includes the
most comprehensive set of MySQL production, backup, monitoring,
modeling, development, and administration tools so businesses can
achieve the highest levels of MySQL performance, security and uptime.

   http://mysql.com/products/enterprise/

For information on installing MySQL 5.5.52 on new servers, please see
the MySQL installation documentation at

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

For upgrading from previous MySQL releases, please see the important
upgrade considerations at:

   http://dev.mysql.com/doc/refman/5.5/en/upgrading.html

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

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

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

   http://dev.mysql.com/doc/relnotes/mysql/5.5/en/news-5-5-52.html

Enjoy!


Changes in MySQL 5.5.52 (2016-09-06)

    Bugs Fixed

      * Replication: mysqlbinlog --read-from-remote-server log1
        log2 was opening a new connection for log2 without freeing the
        connection used for log1. Thanks to Laurynas Biveinis for the
        contribution. (Bug #81675, Bug #23540182)

      * For mysqld_safe, the argument to --malloc-lib now must be
        one of the directories /usr/lib, /usr/lib64,
        /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In
        addition, the --mysqld and --mysqld-version options can be used
        only on the command line and not in an option file. (Bug
        #24464380)

      * It was possible to write log files ending with .ini or
        .cnf that later could be parsed as option files. The general
        query log and slow query log can no longer be written to a file
        ending with .ini or .cnf. (Bug #24388753)

      * Privilege escalation was possible by exploiting the way
        REPAIR TABLE used temporary files. (Bug #24388746)

      * Certain internal character-handling functions could fail
        to handle a too-large character and cause a server exit.  (Bug
        #23296299)

      * A blank server name in CREATE SERVER statements produced
        a server exit rather than an error. (Bug #23295288)

      * The optimizer failed to check a function return value for
        an area calculation, leading to a server exit. (Bug #23280059)

      * A prepared statement that used a parameter in the select
        list of a derived table that was part of a join could cause a
        server exit. (Bug #22392374, Bug #24380263)

      * MEDIUMINT columns used in operations with long integer
        values could result in buffer overflow. (Bug #19984392)

      * EINTR handling in the client library has been fixed so
        that interrupted read and write calls are retried.  Previously,
        EINTR was ignored. (Bug #82019, Bug #23703570)

On behalf of Oracle MySQL Release Engineering Team,
Nawaz Nazeer Ahamed

MySQL Community Server 5.7.15 has been released (no replies)

$
0
0
Dear MySQL users,

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

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

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

For information on installing MySQL 5.7.15 on new servers, please see
the MySQL installation documentation at

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

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

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

MySQL Server 5.7.15 is also available from our repository for Linux
platforms, go here for details:

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

Windows packages are available via the Installer for Windows or .ZIP
(no-install) packages for more advanced needs. The point and click
configuration wizards and all MySQL products are available in the
unified Installer for Windows:

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

5.7.15 also comes with a web installer as an alternative to the full
installer.

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.

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

http://bugs.mysql.com/report.php

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

http://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-15.html

Enjoy!

Changes in MySQL 5.7.15 (2016-09-06)

    Security Notes

      * The validate_password plugin now supports the capability
        of rejecting passwords that match the current session
        user name, either forward or in reverse. To enable
        control over this capability, the plugin exposes a
        validate_password_check_user_name system variable. By
        default, this variable is disabled; the default will
        change to enabled in MySQL 8.0. For more information, see
        Password Validation Plugin Options and Variables
 (http://dev.mysql.com/doc/refman/5.7/en/validate-password-options-variables.html).

    Test Suite Notes

      * In mysql-test-run.pl, a limit of 50 was imposed on the
        number of workers for parallel testing, which on systems
        with more than 50 CPUs resulted in exhaustion of unique
        thread IDs. The ID-exhaustion problem has been corrected,
        and the limit of 50 on number of workers has been lifted.
        Thanks to Daniel Black for the patch on which this change
        was based. Additionally, these changes were made:

           + To avoid idle workers, the number of parallel
             workers now is limited to the number of tests.

           + Previously, if --parallel=auto was given and the
             MTR_MAX_PARALLEL environment variable was not set, a
             limit of 8 was imposed on the number of parallel
             workers. This limit has been lifted.
        (Bug #22342399, Bug #79585)

    Functionality Added or Changed

      * InnoDB: A new dynamic configuration option,
        innodb_deadlock_detect, can be used to disable deadlock
        detection. On high concurrency systems, deadlock
        detection can cause a slowdown when numerous threads wait
        for the same lock. At times, it may be more efficient to
        disable deadlock detection and rely on the
        innodb_lock_wait_timeout setting for transaction rollback
        when a deadlock occurs. (Bug #23477773)

      * The systemd support script for the unit file
        (mysqld_pre_systemd) now assists in creating the error
        log file only if its location matches the pattern
        /var/log/mysql*.log. In other cases, the error log
        directory must be writable or the error log must be
        present and writable for the user running the mysqld
        process. Also, mysqld_pre_systemd now avoids creating
        insecure temporary files. (Bug #24516262)

      * The CMake WITH_LZ4 option has been added to control which
        LZ4 library is used during compilation. By default
        WITH_LZ4 is set to bundled, so the library provided with
        MySQL is used. Setting WITH_LZ4 to system uses the LZ4
        library from the operating system. (Bug #23607230)

    Bugs Fixed

      * InnoDB: An ALTER TABLE ... ENCRYPTION='Y', ALGORITHM=COPY
        operation on a table residing in the system tablespace
        raised an assertion. (Bug #24381804)

      * InnoDB: Creating an encrypted table on a Fusion-io disk
        with an innodb_flush_method setting of O_DIRECT caused a
        fatal error. (Bug #24329079, Bug #82073)

      * InnoDB: An operation that dropped and created a full-text
        search table raised an assertion. (Bug #24315031)

      * InnoDB: Accessing full-text search auxiliary tables while
        dropping the indexed table raised an assertion. (Bug
        #24009272)

      * InnoDB: An online DDL operation on a table with indexed
        BLOB columns raised an assertion during logging of table
        modifications. (Bug #23760086)

      * InnoDB: In some cases, code that locates a buffer pool
        chunk corresponding to given pointer returned the wrong
        chunk.
        Thanks to Alexey Kopytov for the patch. (Bug #23631471,
        Bug #79378)

      * Replication: The addition of the
        transaction-write-set-extraction=XXH64 option uses xxHash
        symbols from liblz4. Although the xxHash symbols are
        exported by liblz4, the header file is not part of the
        API, so compilation failed when building with
        WITH_LZ4=system. The fix ensures that xxHash is built
        separately from liblz4 so that it is available both when
        using the system and bundled LZ4 libraries. (Bug #82426,
        Bug #24399819)
        References: See also: Bug #23607230.

      * Replication: mysqlbinlog --read-from-remote-server log1
        log2 was opening a new connection for log2 without
        freeing the connection used for log1. Thanks to Laurynas
        Biveinis for the contribution. (Bug #81675, Bug
        #23540182)

      * Replication: The MTR binary log test suite failed to
        clean up copied files. Thanks to Daniel Black for the
        contribution. (Bug #80881, Bug #23016254)

      * Replication: With binlog_row_image=FULL, when updating
        single tables temporary tables were unnecessarily being
        used. The fix ensures single table update follows the
        same pattern as multi-table update. (Bug #79867, Bug
        #22510353)

      * mysqld_safe attempted to read my.cnf in the data
        directory, although that is no longer a standard option
        file location. (Bug #24482156)

      * For mysqld_safe, the argument to --malloc-lib now must be
        one of the directories /usr/lib, /usr/lib64,
        /usr/lib/i386-linux-gnu, or /usr/lib/x86_64-linux-gnu. In
        addition, the --mysqld and --mysqld-version options can
        be used only on the command line and not in an option
        file. (Bug #24464380)

      * It was possible to write log files ending with .ini or
        .cnf that later could be parsed as option files. The
        general query log and slow query log can no longer be
        written to a file ending with .ini or .cnf. (Bug
        #24388753)

      * Privilege escalation was possible by exploiting the way
        REPAIR TABLE used temporary files. (Bug #24388746)

      * The client library failed to build on Solaris using the
        Cstd library. (Bug #24353920)

      * If the basedir system variable was set at server startup
        from the command line or option file, the value was not
        normalized (on Windows, / was not replaced with /). (Bug
        #23747899, Bug #82125)

      * kevent statement timer subsystem deinitialization was
        revised to avoid a mysqld hang during shutdown on OS X
        10.12. (Bug #23744004, Bug #82097)

      * For accounts for which multiple GRANT statements applied,
        mysqlpump could fail to dump them all. (Bug #23721446)

      * The MYSQL_ADD_PLUGIN macro had a spelling error that
        caused MYSQL_SERVER not to be defined. (Bug #23508762,
        Bug #81666)

      * In-place ALTER TABLE operations which when executed
        separately caused no table rebuild could when combined
        into a single statement result in a table rebuild. (Bug
        #23475211, Bug #81587)

      * For keyring plugins, the data access layer is now created
        only as necessary, not once per operation, which improves
        keyring performance. (Bug #23337926)

      * A blank server name in CREATE SERVER statements produced
        a server exit rather than an error. (Bug #23295288)

      * The optimizer failed to check a function return value for
        an area calculation, leading to a server exit. (Bug
        #23280059)

      * The server could fail to free memory allocated for
        execution of queries that used generated columns. (Bug
        #23205454)
        References: This issue is a regression of: Bug #22392268.

      * mysqlpump output for triggers that contained multiple
        statements in the trigger body failed to load correctly.
        (Bug #23072245)

      * Queries that satisfied the following conditions could
        return different results than in MySQL 5.6: 1) A subquery
        appeared in the select list; 2) The subquery contained a
        WHERE condition that referenced a value in the outer
        query; 3) The outer query contained a GROUP BY that
        required creation of a temporary table. (Bug #23049975)

      * Passwords that were rejected by the validate_password
        plugin were written by the server to the error log as
        cleartext. (Bug #22922023)

      * A prepared statement that used a parameter in the select
        list of a derived table that was part of a join could
        cause a server exit. (Bug #22392374, Bug #24380263)

      * MEDIUMINT columns used in operations with long integer
        values could result in buffer overflow. (Bug #19984392)

      * A spurious ER_NO_SUCH_TABLE error could occur when
        attempting to execute a prepared CREATE TABLE ... SELECT
        statement that used a temporary table in the FROM clause
        and called a stored function. The same error could occur
        for a nonprepared version of the statement if used in a
        stored procedure when the procedure was re-executed. (Bug
        #16672723, Bug #68972)

      * EINTR handling in the client library has been fixed so
        that interrupted read and write calls are retried.
        Previously, EINTR was ignored. (Bug #82019, Bug
        #23703570)

On Behalf of the MySQL/ORACLE RE Team
Hery Ramilison 

MySQL Community Server 8.0.0-dmr has been released (part 1/3) (no replies)

$
0
0
Dear MySQL users,

MySQL Server 8.0.0-dmr (Milestone Release) is a new version of the world's
most popular open source database. This is the first public milestone
release of MySQL 8.0.

[Since this is the first announcement of MySQL 8.0, it is longer than
usual. Due to size limitations it is split in 3 parts. This is part 1.]

http://dev.mysql.com/doc/mysql-development-cycle/en/development-milestone-releases.html

As with any other pre-production release, caution should be taken when
installing on production level systems or systems with critical data.

Note that 8.0.0-dmr includes all features in MySQL 5.7.

For information on installing MySQL 8.0.0-dmr on new servers, please see
the MySQL installation documentation at

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

MySQL Server 8.0.0-dmr is available in source and binary form for a number of
platforms from the "Development Releases" selection of our download
pages at

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

MySQL Server 8.0.0-dmr is also available from our repository for Linux
platforms, go here for details:

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

Windows packages are available via the Installer for Windows:

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

along with .ZIP (no-install) packages for more advanced needs.

8.0.0-dmr also comes with a web installer as an alternative to the full
installer.

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.

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

http://bugs.mysql.com/report.php

The following section lists the changes in MySQL 8.0.0-dmr since 5.7.

http://dev.mysql.com/doc/relnotes/mysql/8.0/en/news-8-0-0.html

Enjoy!


Changes in MySQL 8.0.0 (2016-09-12, Development Milestone Release)

   Note

   This is a milestone release, for use at your own risk.
   Significant development changes take place in milestone
   releases and you may encounter compatibility issues, such as
   data format changes that require attention in addition to the
   usual procedure of running mysql_upgrade. For example, you
   may find it necessary to dump your data with mysqldump before
   the upgrade and reload it afterward.

     * Account Management Notes

     * C API Notes

     * Character Set Support

     * Compilation Notes

     * Component Notes

     * Configuration Notes

     * Data Dictionary Notes

     * Data Type Notes

     * Doxygen Notes

     * Optimizer Notes

     * Packaging Notes

     * Parser Notes

     * Performance Schema Notes

     * Security Notes

     * Spatial Data Support

     * Test Suite Notes

     * Functionality Added or Changed

     * Bugs Fixed

   Account Management Notes

     * MySQL now supports roles, which are named collections of
       privileges. Roles can be created and dropped. Roles can
       have privileges granted to and revoked from them. Roles
       can be granted to and revoked from user accounts. The
       active applicable roles for an account can be selected
       from among those granted to the account, and can be
       changed during sessions for that account. For more
       information, see Roles
       (http://dev.mysql.com/doc/refman/8.0/en/roles.html).

     * The grant tables in the mysql system database are now
       InnoDB (transactional) tables. Previously, these were
       MyISAM (nontransactional) tables. This change applies to
       these tables: user, db, tables_priv, columns_priv,
       procs_priv, proxies_priv.
       The change of grant table storage engine underlies an
       accompanying change to the behavior of account-management
       statements. Previously, an account-management statement
       that named multiple users could succeed for some users
       and fail for others. Now, each statement is transactional
       and either succeeds for all named users or rolls back and
       has no effect if any error occurs. The statement is not
       written to the binary log unless it succeeds. This
       behavior applies to these statements: ALTER USER, CREATE
       ROLE, CREATE USER, DROP ROLE, DROP USER, GRANT, RENAME
       USER, REVOKE. (SET PASSWORD is not listed. It applies to
       at most one user and was effectively transactional
       already.)
       If you upgrade to this MySQL release from an earlier
       version, you must run mysql_upgrade (and restart the
       server) to incorporate these changes into the mysql
       system database.
       Note
       If MySQL is upgraded from an older version but the grant
       tables have not been upgraded from MyISAM to InnoDB, the
       server considers them read only and account-management
       statements produce an error.
       Due to the change of storage engine from MyISAM to
       InnoDB, SELECT without ORDER BY on grant tables can
       produce different row orders than previously. However,
       SELECT without ORDER BY is not guaranteed to produce any
       particular order, so this is not an incompatibility as
       such. Rather, it is an application design issue that must
       be addressed.

   C API Notes

     * The libmysqlclient shared library major version number is
       increased from 20 (used in MySQL 5.7) to 21 for MySQL
       8.0. (Bug #77600, Bug #21363863)

   Character Set Support

     * The utf8mb4 Unicode character set has a new general
       collation named utf8mb4_0900_ai_ci. utf8mb4 also has
       several new language-specific collations with
       characteristics similar to utf8mb4_0900_ai_ci except that
       language-specific rules take precedence where applicable.
       The language-specific collations are indicated by ISO
       639-1 language codes in the collation name, as shown in
       the following table. In two cases the language code has
       an additional item that denotes a variant (German phone
       book order, Traditional Spanish).

       Table 1 utf8mb4 UCA 9.0.0 Collations

              Language                  Collation
       Croatian                utf8mb4_hr_0900_ai_ci
       Czech                   utf8mb4_cs_0900_ai_ci
       Danish                  utf8mb4_da_0900_ai_ci
       Esperanto               utf8mb4_eo_0900_ai_ci
       Estonian                utf8mb4_et_0900_ai_ci
       German phone book order utf8mb4_de_pb_0900_ai_ci
       Hungarian               utf8mb4_hu_0900_ai_ci
       Icelandic               utf8mb4_is_0900_ai_ci
       Latvian                 utf8mb4_lv_0900_ai_ci
       Lithuanian              utf8mb4_lt_0900_ai_ci
       Polish                  utf8mb4_pl_0900_ai_ci
       Classical Latin         utf8mb4_la_0900_ai_ci
       Romanian                utf8mb4_ro_0900_ai_ci
       Slovak                  utf8mb4_sk_0900_ai_ci
       Slovenian               utf8mb4_sl_0900_ai_ci
       Modern Spanish          utf8mb4_es_0900_ai_ci
       Traditional Spanish     utf8mb4_es_trad_0900_ai_ci
       Swedish                 utf8mb4_sv_0900_ai_ci
       Turkish                 utf8mb4_tr_0900_ai_ci
       Vietnamese              utf8mb4_vi_0900_ai_ci

       utf8mb4_0900_ai_ci also works as an accent insensitive,
       case insensitive collation for the languages in the
       following table.

       Table 2 Languages for Which utf8mb4_0900_ai_ci is
       Suitable

             Language Name       Language Code
       German (dictionary order) de
       English                   en
       French                    fr
       Irish Gaelic              ga
       Indonesian                id
       Italian                   it
       Luxembourgian             lb
       Malay                     ms
       Dutch                     nl
       Portuguese                pt
       Swahili                   sw
       Zulu                      zu

       utf8mb4_da_0900_ai_ci also works as an accent
       insensitive, case insensitive collation for the languages
       in the following table.

       Table 3 Languages for Which utf8mb4_da_0900_ai_ci is
       Suitable

         Language Name   Language Code
       Norwegian         no
       Norwegian Bokmål  nb
       Norwegian Nynorsk nn
       The nonlanguage-specific utf8mb4_0900_ai_ci and
       language-specific utf8mb4_LANG_0900_ai_ci Unicode
       collations each have these characteristics:

          + The collation is based on Unicode Collation
            Algorithm (UCA) 9.0.0 (_0900), is accent insensitive
            (_ai), and case insensitive (_ci).

          + The collation works for all characters in the range
            [U+0, U+10FFFF].

          + If the collation is not language specific, it sorts
            all characters, including supplemental characters,
            in default order (described following). If the
            collation is language specific, it sorts characters
            of the language correctly according to
            language-specific rules, and characters not in the
            language in default order.

          + By default, the collation sorts characters having a
            code point listed in the DUCET table (Default
            Unicode Collation Element Table) according to the
            weight value assigned in the table. The collation
            sorts characters not having a code point listed in
            the DUCET table using their implicit weight value,
            which is constructed according to the UCA.

          + Characters in contraction sequences are treated as
            separate characters.

   Compilation Notes

     * CMake support now permits linking with the GNU gold
       linker if it is available; specify the -DUSE_LD_GOLD=1
       option. (Bug #23759968)

     * For building MySQL on Windows, the toolchain now prefers
       64-bit tools when possible (previously 32-bit). This
       speeds up linking and avoids issues related to limited
       address space with the 32-bit linker. (Bug #22900585)

     * The WITH_EXTRA_CHARSETS CMake option has been removed.
       MySQL builds are configured with all character sets by
       default now. Users who want fewer character sets can edit
       cmake/character_sets.cmake directly and recompile the
       server. (Bug #80005, Bug #22552125)

     * MySQL source code now permits and uses C++11 features. To
       enable a good level of C++11 support across all supported
       platforms, the following minimum compiler versions now
       apply:

          + GCC: 4.8 or higher

          + Clang: 3.4 or higher (Xcode 7 on OS X)

          + Solaris Studio: 12.4 or higher (Solaris client build
            only)

          + Visual Studio: 2015

          + CMake: On Windows, the required Visual Studio
            version results in a required CMake version of 3.2.3
            or higher
       On Solaris, the stlport library is no longer used. This
       makes the SUNPRO_CXX_LIBRARY CMake option obsolete, so it
       has been removed.

   Component Notes

     * MySQL Server now includes a component-based
       infrastructure for improving server extensibility:

          + A component provides services that are available to
            the server and other components. (With respect to
            service use, the server is a component, equal to
            other components.) Components interact with each
            other only through the services they provide.

          + The INSTALL COMPONENT and UNINSTALL COMPONENT
            statements provide an SQL interface for component
            manipulation at runtime.

          + A loader service registers installed components in
            the mysql.component system table, and installs
            registered components during the startup sequence
            for subsequent server restarts.
       For general information about the component
       infrastructure and its SQL-level interface, see Server
       Components
       (http://dev.mysql.com/doc/refman/8.0/en/server-components.html).
       For information about the internal implementation
       of components, see
       http://dev.mysql.com/doc/dev/mysql-server/.

   Configuration Notes

     * Incompatible Change; InnoDB: Prior to MySQL 8.0, enabling
       innodb_read_only did not prevent table creation for
       storage engines other than InnoDB. As of MySQL 8.0,
       enabling innodb_read_only prevents table creation for all
       storage engines. Table creation operations modify data
       dictionary tables in the mysql system database, but those
       tables use the InnoDB storage engine and cannot be
       modified if innodb_read_only is enabled. (Bug #21611899)

     * The hardcoded memory page size of 8KB for the
       memory-mapped transaction coordinator was too small for
       platforms such as ARM64 and PowerPC where the page size
       is much larger. The server now invokes a system call to
       get the page size of the current platform rather than
       using a hardcoded value. A consequence for the
       --log-tc-size option is that the minimum and default
       values are now 6 times the page size. Also, the value
       must be a multiple of the page size. Thanks to Alexey
       Kopytov for the patch. (Bug #23014086, Bug #80818)

     * MySQL now supports a SET PERSIST variant of SET statement
       syntax for making configuration changes at runtime that
       also persist across server restarts. Like SET GLOBAL, SET
       PERSIST is permitted for any global system variable that
       is dynamic (settable at runtime). The statement changes
       the runtime variable value, but also writes the variable
       setting to an option file named mysqld-auto.cnf in the
       data directory. At startup, the server processes this
       file after all other option files. For more information,
       see SET Syntax for Variable Assignment
       (http://dev.mysql.com/doc/refman/8.0/en/set-variable.html).
       To make information available showing how each system
       variable was most recently set, the Performance Schema
       now includes a variables_info table that lists each
       system variable, and the source from which it got that
       value. See Performance Schema variables_info Table
       (http://dev.mysql.com/doc/refman/8.0/en/variables-info-table.html).
       If you upgrade to this MySQL release from an earlier
       version, you must run mysql_upgrade (and restart the
       server) to incorporate this change into the Performance
       Schema.

     * The deprecated mysql_install_db program has been removed
       from MySQL distributions. Data directory initialization
       should be performed by invoking mysqld with the
       --initialize or --initialize-insecure option instead. In
       addition, the deprecated --bootstrap option for mysqld
       that was used by mysql_install_db has been removed, and
       the INSTALL_SCRIPTDIR CMake option that controlled the
       installation location for mysql_install_db has been
       removed.
       Version 1 test suite code previously was located in the
       mysql-test/lib/v1 directory of MySQL source
       distributions. This code used mysql_install_db and has
       been removed. The MYSQL_INSTALL_DB environment variable
       and a value of 1 for the MTR_VERSION environment variable
       are no longer supported.

   Data Dictionary Notes

     * Incompatible Change: MySQL Server now incorporates a
       global data dictionary containing information about
       database objects in transactional tables. In previous
       MySQL releases, dictionary data was stored in metadata
       files and nontransactional system tables.
       Important
       A data dictionary-enabled server entails some general
       operational differences; see Data Dictionary Usage
       Differences
(http://dev.mysql.com/doc/refman/8.0/en/data-dictionary-usage-differences.html).
       Also, for upgrades to MySQL 8.0
       from MySQL 5.7, the upgrade procedure differs somewhat
       from previous MySQL releases and requires that you verify
       the upgrade readiness of your installation by checking
       specific prerequisites. For more information, see
       Upgrading MySQL
       (http://dev.mysql.com/doc/refman/8.0/en/upgrading.html),
       particularly Verifying Upgrade Prerequisites for Your
       MySQL 5.7 Installation
(http://dev.mysql.com/doc/refman/8.0/en/upgrading.html#upgrade-prerequisites).
       InnoDB continues to use its own data dictionary in the
       MySQL 8.0.0 release.
       The following list briefly describes the main
       implications of this change:

          + The .frm metadata files previously associated with
            base tables and views no longer exist. Metadata
            previously stored in .frm files is now stored in
            data dictionary tables.
            Similarly, trigger metadata previously stored in
            .TRG and .TRN files is stored in a data dictionary
            table and those files no longer exist.

          + With the removal of .frm files, the 64KB table
            definition size limit imposed by the .frm file
            structure is removed.

          + With the removal of .frm files, the
            INFORMATION_SCHEMA.TABLES VERSION field now reports
            a hardcoded value of 10, which is the last .frm file
            version used in MySQL 5.7.

          + A new dictionary object cache that serves the MySQL
            data dictionary stores previously accessed data
            dictionary objects in memory to enable object reuse
            and minimize disk I/O. An LRU-based eviction
            strategy is used to evict least recently used
            objects from memory. The cache comprises several
            partitions that store different object types. For
            more information, see Dictionary Object Cache
  (http://dev.mysql.com/doc/refman/8.0/en/data-dictionary-object-cache.html).

          + New internal data dictionary APIs enable the server,
            internal storage engines, and plugins to access and
            store data in the MySQL data dictionary. Internal
            data dictionary APIs are introduced for handling of
            schemas, tablespaces, tablespace files, tables,
            partitioned tables, table partition data, triggers,
            stored routines, events, table objects, views,
            character sets, and collations.

          + Data dictionary tables are invisible, but in most
            cases there are corresponding INFORMATION_SCHEMA
            tables that can be queried. Conceptually, the
            INFORMATION_SCHEMA provides a view through which
            MySQL exposes data dictionary metadata.
            INFORMATION_SCHEMA queries for database objects are
            now, in general, more efficient because they use
            information from data dictionary table rather than
            requiring directory or file scans under the data
            directory.
            A new system variable, information_schema_stats,
            controls whether to use column statistics cached in
            INFORMATION_SCHEMA tables or the latest statistics
            directly from storage engines.

          + The foreign_keys and foreign_key_column_usage tables
            now store foreign key information. The standard SQL
            way to obtain foreign key information is by using
            the INFORMATION_SCHEMA REFERENTIAL_CONSTRAINTS and
            KEY_COLUMN_USAGE tables; these tables are now
            implemented as views on the foreign_keys,
            foreign_key_column_usage, and other data dictionary
            tables.
            For some foreign key errors, the server now produces
            more appropriate and more informative error
            messages.
            Note
            Incompatibility: Previously, MySQL supported foreign
            key names longer than 64 characters. Foreign key
            names as stored in the foreign_keys and
            foreign_key_column_usage tables are a maximum of 64
            characters, per the SQL standard, so longer foreign
            key names are no longer permitted.

          + Because the data dictionary provides information
            about database objects, the server no longer checks
            directory names in the data directory to find
            databases. Consequently, the --ignore-db-dir option
            and ignore_db_dirs system variable are extraneous
            and have been removed. Update system configurations
            and application programs accordingly.

          + System table changes:
               o Many system tables have been converted from
                 MyISAM (nontransactional) tables to InnoDB
                 (transactional) tables. For example, as
                 discussed elsewhere in these release notes, the
                 grant tables are now InnoDB tables. Other
                 examples follow.
               o The func table that stores user-defined
                 function information in the mysql system
                 database now is an InnoDB (transactional)
                 table. Previously, it was a MyISAM
                 (nontransactional) table.
                 In consequence of this change, CREATE FUNCTION
                 and DROP FUNCTION statements cause an implicit
                 commit, even when used for user-defined
                 functions (see Statements That Cause an
                 Implicit Commit
             (http://dev.mysql.com/doc/refman/8.0/en/implicit-commit.html)).
                 Previously, they caused an
                 implicit commit when used for stored functions,
                 but not for user-defined functions.
               o Previously, information about stored routines
                 and events was stored in the proc and event
                 tables of the mysql system database. Those
                 tables are no longer used. Instead, information
                 about stored routines and events is stored in
                 the routines, events, and parameters data
                 dictionary tables in the mysql system database.
                 The old tables used the MyISAM
                 (nontransactional) storage engine. The new
                 tables use the InnoDB (transactional) engine.
                 Creating a stored routine that contained
                 illegal characters previously produced a
                 warning. This is now an error.
               o To permit access to system tables (for example,
                 time zone or log tables) to be distinguished
                 from access to nonsystem tables, the server
                 uses the Locking system tables and Opening
                 system tables thread states rather than the
                 System lock and Opening tables thread states.
                 See General Thread States
      (http://dev.mysql.com/doc/refman/8.0/en/general-thread-states.html).

          + InnoDB changes:
               o Persistent InnoDB tablespaces now include
                 transactional storage for Serialized Dictionary
                 Information (SDI), which is metadata in
                 serialized form that describes objects such as
                 tables, columns, and indexes. Along with the
                 disappearance of .frm and trigger metadata
                 files, mentioned previously, you might notice
                 the appearance of .SDI files. These are
                 serialized data information files. SDI
                 transactional storage is reserved for an
                 in-progress feature not yet fully implemented.
               o A new command-line utility, ibd2sdi, is used to
                 extract serialized dictionary information (SDI)
                 from persistent InnoDB tablespaces. SDI data is
                 not present in persistent InnoDB tablespaces in
                 this release. The ibd2sdi utility is reserved
                 for future use.
               o InnoDB startup code was refactored to support
                 MySQL initialization changes related to the
                 MySQL data dictionary feature.

          + Upgrade and downgrade implications:
               o To upgrade to MySQL 8.0 from MySQL 5.7, you
                 must perform the upgrade procedure described at
                 Upgrading MySQL
                 (http://dev.mysql.com/doc/refman/8.0/en/upgrading.html).
               o Downgrading from MySQL 8.0 to MySQL 5.7 is only
                 supported using the logical downgrade method (a
                 mysqldump downgrade). In-place downgrades are
                 not supported.
       (Bug #80481, Bug #22811659)

   Data Type Notes

     * Bit functions and operators comprise BIT_COUNT(),
       BIT_AND(), BIT_OR(), BIT_XOR(), &, |, ^, ~, <<, and >>.
       Prior to MySQL 8.0, bit functions and operators required
       BIGINT (64-bit integer) arguments and returned BIGINT
       values. Non-BIGINT arguments were converted to BIGINT
       prior to performing the operation and truncation could
       occur. Now bit functions and operators permit binary
       string type arguments (BINARY, VARBINARY, and the BLOB
       types) and return a value of like type, which enables
       them to take arguments and produce return values larger
       than 64 bits.
       Permitting binary arguments to bit functions and
       operators makes it easier not only to manipulate larger
       values, but to perform operations on certain types of
       data, such as UUID and IPv6 values.
       An implication of this change in behavior is that bit
       operations on binary arguments might produce a different
       result in MySQL 8.0 than in 5.7. For more information
       about the change, including how to prepare in MySQL 5.7
       for potential incompatibilities between MySQL 5.7 and
       8.0, see Bit Functions and Operators
       (http://dev.mysql.com/doc/refman/5.7/en/bit-functions.html),
       in MySQL 5.7 Reference Manual
       (http://dev.mysql.com/doc/refman/5.7/en/).

   Doxygen Notes

     * The MySQL source code has been updated to use Doxygen for
       the internal documentation. The generated content for
       this milestone is available at
       http://dev.mysql.com/doc/dev/mysql-server/8.0.0. This is
       a work in progress.

   Optimizer Notes

     * InnoDB: The storage engine interface now enables the
       optimizer to provide information about the size of the
       record buffer to be used for scans that the optimizer
       estimates will read multiple rows. The buffer size can
       vary based on the size of the estimate. InnoDB uses this
       variable-size buffering capability to reduce the overhead
       of latching and B-tree navigation. Previously, InnoDB
       used a small, fixed-size buffer.

     * The optimizer now supports table-level hints for
       specifying whether derived tables or views should be
       merged into the outer query block rather than
       materialized using an internal temporary table. Examples:
SELECT /*+ MERGE(dt) */ * FROM (SELECT * FROM t1) AS dt;
SELECT /*+ NO_MERGE(dt) */ * FROM (SELECT * FROM t1) AS dt;

       For more information, see Optimizer Hints
       (http://dev.mysql.com/doc/refman/8.0/en/optimizer-hints.html).
       (Bug #79554, Bug #22328100)

     * MySQL now supports invisible indexes. An invisible index
       is not used by the optimizer at all, but is otherwise
       maintained normally. Indexes are visible by default.
       Invisible indexes make it possible to test the effect of
       removing an index on query performance, without making a
       destructive change that must be undone should the index
       turn out to be required. This feature applies to InnoDB
       tables, for indexes other than primary keys.
       To control whether an index is invisible explicitly for a
       new index, use a VISIBLE or INVISIBLE keyword as part of
       the index definition for CREATE TABLE, CREATE INDEX, or
       ALTER TABLE. To alter the invisibility of an existing
       index, use a VISIBLE or INVISIBLE keyword with the ALTER
       TABLE ... ALTER INDEX operation. For more information,
       see Invisible Indexes
       (http://dev.mysql.com/doc/refman/8.0/en/invisible-indexes.html).

     * The mysql system database now contains a column_stats
       table designed to store statistics about column values.
       For more information, see Optimizer Statistics
       (http://dev.mysql.com/doc/refman/8.0/en/optimizer-statistics.html).

   Packaging Notes

     * Development milestone releases in previous MySQL series
       were numbered using a suffix of -mN, to indicate
       development milestone N. In MySQL 8.0, development
       releases use the suffix -dmr. For example, this release
       of MySQL is numbered 8.0.0-dmr. (Bug #80408, Bug
       #22748154)

     * As a consequence of the use of C++11 features described
       elsewhere in these release notes, the following packaging
       changes have been made:

          + Support for Red Hat Enterprise Linux 5 and Oracle
            Linux 5 RPMs has been dropped

          + Generic binary tarball builds have been moved to Red
            Hat Enterprise Linux 6

   Parser Notes

     * The parser rules for CREATE TABLE were refactored to be
       context independent and improve maintainability and
       extendibility. Several user-visible effects resulted from
       this work:

          + For generated columns, including NOT NULL NULL
            resulted in a column that included the NOT NULL
            attribute, which differed from nongenerated columns.
            Such definitions now use the final attribute NULL,
            resulting in a nullable column (consistent with
            nongenerated columns).

          + CREATE TEMPORARY TABLE no longer permits multiple
            instances of TEMPORARY.

          + Previously, PARSE_GCOL_EXPR was a keyword and could
            not be used as a label in stored programs. It is no
            longer a keyword and can be used as a label.

          + Messages for some syntax errors are more precise
            with respect to the location of the error within the
            statement.

     * The parser rules for SELECT and UNION were refactored to
       be more consistent (the same SELECT syntax applies
       uniformly in each such context) and reduce duplication.
       Several user-visible effects resulted from this work:

          + NATURAL JOIN permits an optional INNER keyword
            (NATURAL INNER JOIN), in compliance with standard
            SQL.

          + Right-deep joins without parentheses are permitted
            (for example, ... JOIN ... JOIN ... ON ... ON), in
            compliance with standard SQL.

          + The parser accepts parentheses around query
            expressions. For example, (SELECT ... UNION SELECT
            ...) is permitted.

          + The parser better conforms to the documented
            permitted placement of the SQL_CACHE and
            SQL_NO_CACHE query modifiers.

          + Left-hand nesting of unions, previously permitted
            only in subqueries, is now permitted in top-level
            statements. For example, this statement is now
            accepted as valid:
(SELECT 1 UNION SELECT 1) UNION SELECT 1;


MySQL Community Server 8.0.0-dmr has been released (part 2/3) (no replies)

$
0
0
[This is part 2 of the announcement]

   Performance Schema Notes

     * Incompatible Change: The Performance Schema now
       instruments server errors (and warnings), and exposes
       statistical information about them through a set of
       summary tables:

          + The error instrument controls whether error
            information is collected (enabled by default).

          + Several tables contain error information, summarized
            in various ways:
            events_errors_summary_global_by_error,
            events_errors_summary_by_account_by_error,
            events_errors_summary_by_host_by_error,
            events_errors_summary_by_thread_by_error,
            events_errors_summary_by_user_by_error.

          + The performance_schema_error_size system variable
            controls the number of instrumented errors.
       For more information, see Performance Schema Error
       Summary Tables
       (http://dev.mysql.com/doc/refman/8.0/en/error-summary-tables.html)
       If you upgrade to this MySQL release from an earlier
       version, you must run mysql_upgrade (and restart the
       server) to incorporate these changes into the
       performance_schema database.
       In consequence of the preceding changes, two server error
       symbols were renamed:
       ER_CANT_SET_ENFORCE_GTID_CONSISTENCY_ON_WITH_ONGOING_GTID
       _VIOLATING_TRANSACTIONS is now
       ER_CANT_ENFORCE_GTID_CONSISTENCY_WITH_ONGOING_GTID_VIOLAT
       ING_TX and
       ER_SET_ENFORCE_GTID_CONSISTENCY_WARN_WITH_ONGOING_GTID_VI
       OLATING_TRANSACTIONS is now
       ER_ENFORCE_GTID_CONSISTENCY_WARN_WITH_ONGOING_GTID_VIOLAT
       ING_TX.
       Also, several server error codes were found to be no
       longer used in the server and have been removed as
       obsolete. Applications that test specifically for any of
       these errors should be updated:
ER_BINLOG_READ_EVENT_CHECKSUM_FAILURE
ER_BINLOG_ROW_RBR_TO_SBR
ER_BINLOG_ROW_WRONG_TABLE_DEF
ER_CANT_ACTIVATE_LOG
ER_CANT_CHANGE_GTID_NEXT_IN_TRANSACTION
ER_CANT_CREATE_FEDERATED_TABLE
ER_CANT_CREATE_SROUTINE
ER_CANT_DELETE_FILE
ER_CANT_GET_WD
ER_CANT_SET_GTID_PURGED_WHEN_GTID_MODE_IS_OFF
ER_CANT_SET_WD
ER_CANT_WRITE_LOCK_LOG_TABLE
ER_CREATE_DB_WITH_READ_LOCK
ER_CYCLIC_REFERENCE
ER_DB_DROP_DELETE
ER_DELAYED_NOT_SUPPORTED
ER_DIFF_GROUPS_PROC
ER_DISK_FULL
ER_DROP_DB_WITH_READ_LOCK
ER_DROP_USER
ER_DUMP_NOT_IMPLEMENTED
ER_ERROR_DURING_CHECKPOINT
ER_ERROR_ON_CLOSE
ER_EVENTS_DB_ERROR
ER_EVENT_CANNOT_DELETE
ER_EVENT_CANT_ALTER
ER_EVENT_COMPILE_ERROR
ER_EVENT_DATA_TOO_LONG
ER_EVENT_DROP_FAILED
ER_EVENT_MODIFY_QUEUE_ERROR
ER_EVENT_NEITHER_M_EXPR_NOR_M_AT
ER_EVENT_OPEN_TABLE_FAILED
ER_EVENT_STORE_FAILED
ER_EXEC_STMT_WITH_OPEN_CURSOR
ER_FAILED_ROUTINE_BREAK_BINLOG
ER_FLUSH_MASTER_BINLOG_CLOSED
ER_FORM_NOT_FOUND
ER_FOUND_GTID_EVENT_WHEN_GTID_MODE_IS_OFF__UNUSED
ER_FRM_UNKNOWN_TYPE
ER_GOT_SIGNAL
ER_GRANT_PLUGIN_USER_EXISTS
ER_GTID_MODE_REQUIRES_BINLOG
ER_GTID_NEXT_IS_NOT_IN_GTID_NEXT_LIST
ER_HASHCHK
ER_INDEX_REBUILD
ER_INNODB_NO_FT_USES_PARSER
ER_LIST_OF_FIELDS_ONLY_IN_HASH_ERROR
ER_LOAD_DATA_INVALID_COLUMN_UNUSED
ER_LOGGING_PROHIBIT_CHANGING_OF
ER_MALFORMED_DEFINER
ER_MASTER_KEY_ROTATION_ERROR_BY_SE
ER_NDB_CANT_SWITCH_BINLOG_FORMAT
ER_NEVER_USED
ER_NISAMCHK
ER_NO_CONST_EXPR_IN_RANGE_OR_LIST_ERROR
ER_NO_FILE_MAPPING
ER_NO_GROUP_FOR_PROC
ER_NO_RAID_COMPILED
ER_NO_SUCH_KEY_VALUE
ER_NO_SUCH_PARTITION__UNUSED
ER_OBSOLETE_CANNOT_LOAD_FROM_TABLE
ER_OBSOLETE_COL_COUNT_DOESNT_MATCH_CORRUPTED
ER_ORDER_WITH_PROC
ER_PARTITION_SUBPARTITION_ERROR
ER_PARTITION_SUBPART_MIX_ERROR
ER_PART_STATE_ERROR
ER_PASSWD_LENGTH
ER_QUERY_ON_MASTER
ER_RBR_NOT_AVAILABLE
ER_SKIPPING_LOGGED_TRANSACTION
ER_SLAVE_CHANNEL_DELETE
ER_SLAVE_MULTIPLE_CHANNELS_HOST_PORT
ER_SLAVE_MUST_STOP
ER_SLAVE_WAS_NOT_RUNNING
ER_SLAVE_WAS_RUNNING
ER_SP_GOTO_IN_HNDLR
ER_SP_PROC_TABLE_CORRUPT
ER_SQL_MODE_NO_EFFECT
ER_SR_INVALID_CREATION_CTX
ER_TABLE_NEEDS_UPG_PART
ER_TOO_MUCH_AUTO_TIMESTAMP_COLS
ER_UNEXPECTED_EOF
ER_UNION_TABLES_IN_DIFFERENT_DIR
ER_UNSUPPORTED_BY_REPLICATION_THREAD
ER_UNUSED1
ER_UNUSED2
ER_UNUSED3
ER_UNUSED4
ER_UNUSED5
ER_UNUSED6
ER_VIEW_SELECT_DERIVED_UNUSED
ER_WRONG_MAGIC
ER_WSAS_FAILED


     * Previously, the DIGEST and DIGEST_TEXT columns in the
       Performance Schema events_statements_current table were
       populated only after statement execution ended. Now, the
       columns are populated just after parsing and before
       statement execution begins. This enables monitoring
       applications to access statement digest information during
       statement execution. (Bug #23336542)

     * Performance Schema tables now include indexes, which
       gives the optimizer access to execution plans other than
       full table scans and makes queries more efficient.
       Performance Schema table indexes are predefined and
       cannot be dropped, added, or altered. They are like hash
       indexes and do not provide row ordering.

     * The size of the ROLE column of the setup_actors
       Performance Schema table was increased from 16 to 32
       characters.

   Security Notes

     * The validate_password_check_user_name system variable is
       now enabled by default rather than disabled. This means
       that when the validate_password plugin is enabled, by
       default it now rejects passwords that match the current
       session user name.

     * The client-side --ssl and --ssl-verify-server-cert
       options have been removed. Use --ssl-mode=REQUIRED
       instead of --ssl=1 or --enable-ssl. Use
       --ssl-mode=DISABLED instead of --ssl=0, --skip-ssl, or
       --disable-ssl. Use --ssl-mode=VERIFY_IDENTITY instead of
       --ssl-verify-server-cert options. (The server-side --ssl
       option remains unchanged.)
       For the C API, MYSQL_OPT_SSL_ENFORCE and
       MYSQL_OPT_SSL_VERIFY_SERVER_CERT options for
       mysql_options() correspond to the client-side --ssl and
       --ssl-verify-server-cert options and have been removed.
       Use MYSQL_OPT_SSL_MODE with an option value of
       SSL_MODE_REQUIRED or SSL_MODE_VERIFY_IDENTITY instead.

   Spatial Data Support

     * Spatial functions for import and export of Well-Known
       Text (WKT) values used MySQL 'GEOMETRYCOLLECTION()'
       nonstandard syntax rather than OpenGIS
       'GEOMETRYCOLLECTION EMPTY' standard syntax. Now both
       syntaxes are understood for import and the standard
       syntax is used for export. (Bug #23632147, Bug #81964)

     * The required version of the Boost library for server
       builds has been raised from 1.59.0 to 1.60.0. (Bug
       #79380, Bug #22253921)

     * The ST_X() and ST_Y() spatial functions now permit an
       optional second argument that specifies an X or Y
       coordinate value, respectively. With two arguments, the
       function result is the point value from the first
       argument with the appropriate coordinate modified. In
       addition, ST_X() and ST_Y() with a single argument now
       are stricter and produce an ER_UNEXPECTED_GEOMETRY_TYPE
       error rather than returning NULL if the argument is a
       valid geometry but not a point. For more information, see
       Point Property Functions
  (http://dev.mysql.com/doc/refman/8.0/en/gis-point-property-functions.html).

     * The ST_SRID() spatial function now permits an optional
       second argument that specifies a SRID value. With two
       arguments, the function result is the geometry value from
       the first argument with its SRID modified according to
       the second argument. For more information, see General
       Geometry Property Functions
 (http://dev.mysql.com/doc/refman/8.0/en/gis-general-property-functions.html).

     * MySQL now supports spatial reference systems other than
       SRID 0. (Specifically, georeferenced 2D projections.)
       Information about supported reference systems is stored
       in the st_spatial_reference_systems data dictionary
       table.

     * In MySQL 5.7, several spatial functions available under
       multiple names were deprecated to move in the direction
       of making the spatial function namespace more consistent,
       the goal being that each spatial function name begin with
       ST_ if it performs an exact operation, or with MBR if it
       performs an operation based on minimum bounding
       rectangles. The deprecated functions have now been
       removed to leave only the corresponding ST_ and MBR
       functions:

          + These functions are removed in favor of the MBR
            names: Contains(), Disjoint(), Equals(),
            Intersects(), Overlaps(), Within().

          + These functions are removed in favor of the ST_
            names: Area(), AsBinary(), AsText(), AsWKB(),
            AsWKT(), Buffer(), Centroid(), ConvexHull(),
            Crosses(), Dimension(), Distance(), EndPoint(),
            Envelope(), ExteriorRing(), GeomCollFromText(),
            GeomCollFromWKB(), GeomFromText(), GeomFromWKB(),
            GeometryCollectionFromText(),
            GeometryCollectionFromWKB(), GeometryFromText(),
            GeometryFromWKB(), GeometryN(), GeometryType(),
            InteriorRingN(), IsClosed(), IsEmpty(), IsSimple(),
            LineFromText(), LineFromWKB(), LineStringFromText(),
            LineStringFromWKB(), MLineFromText(),
            MLineFromWKB(), MPointFromText(), MPointFromWKB(),
            MPolyFromText(), MPolyFromWKB(),
            MultiLineStringFromText(), MultiLineStringFromWKB(),
            MultiPointFromText(), MultiPointFromWKB(),
            MultiPolygonFromText(), MultiPolygonFromWKB(),
            NumGeometries(), NumInteriorRings(), NumPoints(),
            PointFromText(), PointFromWKB(), PointN(),
            PolyFromText(), PolyFromWKB(), PolygonFromText(),
            PolygonFromWKB(), SRID(), StartPoint(), Touches(),
            X(), Y().

          + GLength() is removed in favor of ST_Length().

   Test Suite Notes

     * mysql-test-run.pl now supports a --do-suite option, which
       is similar to --do-test but permits specifying entire
       suites of tests to run. (Bug #24350345)

     * The mysqltest rmdir command fails if the directory to be
       removed contains any files or directories. To enable
       recursive removal of a directory as well as its contents,
       if any, mysqltest now supports a force-rmdir command.
       (Bug #24316799)

     * Two new test suite options make it easier to debug test
       cases:

          + mysql-test-run.pl supports a --mysqltest=options
            option that enables options to be passed to
            mysqltest.

          + mysqltest supports a --trace-exec option that causes
            it to immediately print output from executed
            programs to stdout.
       mysql-test-run.pl now recognizes the MTR_CTEST_TIMEOUT
       environment variable. If set, the value is a timeout in
       seconds to pass to ctest unit test commands. (Bug
       #21821049, Bug #21278845)

     * For test cases in the MySQL test suite, it was previously
       possible to use symbolic error names for the --error
       command only for server errors. This is now also possible
       for client errors. For example:
--error CR_SERVER_GONE_ERROR

       (Bug #21048973)

     * The mysqltest program now has a copy_files_wildcard
       command that copies all files that match a pattern from a
       source directory to a destination directory. See
       mysqltest Commands
       (http://dev.mysql.com/doc/mysqltest/2.0/en/mysqltest-commands.html).
       (Bug #82111, Bug #23743035)

   Functionality Added or Changed

     * Incompatible Change; Partitioning: The generic
       partitioning handler has been removed from the MySQL
       server. As part of this change, mysqld no longer supports
       the --partition and --skip-partition options, and the
       server can no longer be built using
       -DWITH_PARTITION_STORAGE_ENGINE. partition is also no
       longer displayed in the output of SHOW PLUGINS, or shown
       in the INFORMATION_SCHEMA.PLUGINS table.
       In order to support partitioning of a given table, the
       storage engine used for the table must now provide its
       own ("native") partitioning handler. InnoDB is the only
       storage engine supported in MySQL 8.0 which includes a
       native partitioning handler. An attempt to create
       partitioned tables in MySQL 8.0 using any other storage
       engine fails. (The NDB storage engine used by MySQL
       Cluster also provides its own partitioning handler, but
       is currently not supported by MySQL 8.0.)
       Affects on upgrades.  The direct upgrade of a partitioned
       table using a storage engine other than InnoDB (such as
       MyISAM) from MySQL 5.7 (or earlier) to MySQL 8.0 is not
       supported. There are two options for upgrading such a
       table to be compatible with MySQL 8.0, listed here:

          + Remove the table's partitioning; you can do this
            without any data loss by executing an ALTER TABLE
            ... REMOVE PARTITIONING statement.

          + Change the storage engine used for the table to
            InnoDB, using ALTER TABLE ... ENGINE=INNODB; this
            leaves the table's partitioning in place. At least
            one of these operations must be performed for any
            partitioned non-InnoDB table, prior to upgrading the
            server to MySQL 8.0. Otherwise, such a table cannot
            be used following the upgrade.
       An analogous situation is met when importing databases
       from a dump file that was created in MySQL 5.7 or earlier
       using mysqldump into a MySQL 8.0 server, due to the fact
       that table creation statements that would result in a
       partitioned table using a storage engine without such
       support fail with an error in MySQL 8.0. For this reason
       you must ensure that any statements in the dump file
       creating partitioned tables do not also specify an
       unsupported storage engine. You can do this either by
       removing any references to partitioning from CREATE TABLE
       statements that use a value for the STORAGE ENGINE option
       other than InnoDB, or by specifying the storage engine as
       InnoDB (or allowing InnoDB to be used by default).
       For more information, see Partitioning Limitations
       Relating to Storage Engines
(http://dev.mysql.com/doc/refman/8.0/en/partitioning-limitations-storage-engines.html).

     * Important Change; InnoDB: The following InnoDB file
       format configuration parameters were deprecated in MySQL
       5.7.7 and are now removed:

          + innodb_file_format

          + innodb_file_format_check

          + innodb_file_format_max

          + innodb_large_prefix
       File format configuration parameters were necessary for
       creating tables compatible with earlier versions of
       InnoDB in MySQL 5.1. Now that MySQL 5.1 has reached the
       end of its product lifecycle, the parameters are no
       longer required.
       The FILE_FORMAT column was removed from the
       INNODB_SYS_TABLES and INNODB_SYS_TABLESPACES Information
       Schema tables.

     * InnoDB: The innodb_buffer_pool_debug option permits
       multiple buffer pool instances when the buffer pool is
       less than 1GB in size, ignoring the 1GB minimum buffer
       pool size constraint imposed on
       innodb_buffer_pool_instances. (Bug #24287290)

     * InnoDB: A new dynamic configuration option,
       innodb_deadlock_detect, can be used to disable deadlock
       detection. On high concurrency systems, deadlock
       detection can cause a slowdown when numerous threads wait
       for the same lock. At times, it may be more efficient to
       disable deadlock detection and rely on the
       innodb_lock_wait_timeout setting for transaction rollback
       when a deadlock occurs. (Bug #23477773)

     * InnoDB: The libinnodb_zipdecompress.a library allows
       external tools to use the page_zip_decompress_low()
       function to decompress InnoDB pages. (Bug #21405300, Bug
       #77664)

     * InnoDB: To address contention that could occur under some
       workloads, the buffer pool mutex was removed and replaced
       by several list and hash protecting mutexes. Also,
       several buffer pool related variables no longer require
       buffer pool mutex protection.
       Thanks to Yasufumi Kinoshita and Laurynas Biveinis for
       the patch. (Bug #20381905, Bug #75534)

     * InnoDB: InnoDB now avoids intermediate commits that would
       occur every 10000 rows during ALTER TABLE ALGORITHM=COPY
       operations. The purpose of intermediate commits was to
       speed up recovery in the case of an aborted ALTER TABLE
       ALGORITHM=COPY operation. If an ALTER TABLE
       ALGORITHM=COPY operation is aborted, the new, uncommitted
       table is now dropped during DDL log recovery before the
       undo log is rolled back, thereby avoiding time-consuming
       data rollback for the uncommitted table. Undo logging is
       now suppressed for ALTER TABLE ALGORITHM=COPY operations
       unless there is an IGNORE clause or something else that
       requires rollback capability.
       If there is full-text index on the table being altered,
       full-text data is inserted into full-text auxiliary
       tables as the ALTER TABLE ALGORITHM=COPY operation
       inserts rows into the new, uncommitted table. Previously,
       full-text data was only processed on transaction commit.
       (Bug #17479594)

     * InnoDB: To reduce read-write lock contention that can
       result from multiple purge threads purging rows from the
       same table, undo records are now grouped and assigned to
       different purge threads by table ID.

     * InnoDB: InnoDB code now uses the C++ std::thread library
       for thread management.

     * InnoDB: BLOB code was refactored to provide an internal
       C++ interface for operations on compressed and
       uncompressed BLOB data.

     * InnoDB: The InnoDB memcached plugin now supports range
       queries and fetching multiple key value pairs in a single
       memcached query.

     * InnoDB: The current maximum auto-increment counter value
       is now written to the redo log each time the value
       changes, and it is saved to an engine-private system
       table on each checkpoint. These changes make the current
       maximum auto-increment counter value persistent across
       server restarts. Additionally:

          + A server restart no longer cancels the effect of the
            AUTO_INCREMENT = N table option. If you initialize
            the auto-increment counter to a specific value, or
            if you alter the auto-increment counter value to a
            larger value, the new value is persisted across
            server restarts.

          + A server restart immediately following a ROLLBACK
            operation no longer results in the reuse of
            auto-increment values that were allocated to the
            rolled-back transaction.

          + If you modify an AUTO_INCREMENT column value to a
            value larger than the current maximum auto-increment
            value (in an UPDATE operation, for example), the new
            value is persisted, and subsequent INSERT operations
            allocate auto-increment values starting from the
            new, larger value.
       For more information, see AUTO_INCREMENT Handling in
       InnoDB
(http://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html),
       and InnoDB AUTO_INCREMENT Counter
       Initialization
(http://dev.mysql.com/doc/refman/8.0/en/innodb-auto-increment-handling.html#innodb-auto-increment-initialization).

     * InnoDB: The innodb_stats_sample_pages system variable was
       removed. innodb_stats_sample_pages was deprecated in
       MySQL 5.6.3 and replaced by
       innodb_stats_transient_sample_pages.

     * InnoDB: When encountering index tree corruption, InnoDB
       writes a corruption flag to the redo log, which makes the
       corruption flag crash-safe. InnoDB also writes in-memory
       corruption flag data to an engine-private system table on
       each checkpoint. During recovery, InnoDB reads corruption
       flags from both locations and merges results before
       marking in-memory table and index objects as corrupt.

     * InnoDB: The innodb_locks_unsafe_for_binlog system
       variable was removed.

     * InnoDB: InnoDB no longer creates .isl files (InnoDB
       Symbolic Link files) when creating tablespace data files
       outside of the MySQL data directory. Redo log records are
       now used to locate remote tablespaces.
       With this change, moving a remote tablespace while the
       server is offline by manually modifying an .isl file is
       no longer supported.

     * InnoDB: InnoDB no longer supports compressed temporary
       tables. When innodb_strict_mode is enabled (the default),
       CREATE TEMPORARY TABLE returns an error if
       ROW_FORMAT=COMPRESSED or KEY_BLOCK_SIZE is specified. If
       innodb_strict_mode is disabled, warnings are issued and
       the temporary table is created using a non-compressed row
       format.
       With this change, all temporary tables are created in the
       shared temporary tablespace, ibtmp1.
       The PER_TABLE_TABLESPACE and IS_COMPRESSED columns were
       removed from the
       INFORMATION_SCHEMA.INNODB_TEMP_TABLE_INFO.

     * InnoDB: A new INFORMATION_SCHEMA table,
       INNODB_CACHED_INDEXES, reports the number of index pages
       cached in the InnoDB buffer pool for each index.

     * InnoDB: The innodb_checksums system variable was removed.
       innodb_checksums was replaced by
       innodb_checksum_algorithm in MySQL 5.6.3.

     * InnoDB: InnoDB startup code was refactored.

     * InnoDB: The innodb_flush_method default value is no
       longer NULL. On Unix-like systems, the default value is
       fsync. On Windows systems, the default value is
       unbuffered.
       On Windows, the innodb_flush_method setting no longer
       affects the innodb_use_native_aio setting. There are now
       two possible settings for innodb_flush_method on Windows,
       unbuffered (unbuffered I/O) and normal (buffered I/O).
       With this change, you can enable asynchronous I/O with
       buffered I/O, which is a new combination
       (innodb_use_native_aio=ON and
       innodb_flush_method=normal). The async_unbuffered setting
       was removed.
       You can now set innodb_flush_method and
       innodb_change_buffering configuration options using
       numeric values.

     * InnoDB: The innodb_support_xa system variable, which
       enables support for two-phase commit in XA transactions,
       was removed. As of MySQL 5.7.10, InnoDB support for
       two-phase commit in XA transactions is always enabled.

     * InnoDB: The new INFORMATION_SCHEMA.INNODB_CACHED_INDEXES
       table reports the number of index pages cached in the
       InnoDB buffer pool for each index.

     * InnoDB: InnoDB no longer creates an .isl file (InnoDB
       Symbolic Link files) when creating a file-per-table
       tablespace data file outside of the MySQL data directory.
       InnoDB now uses the redo log to locate remote tablespace
       data files.
       Offline relocation of a file-per-table tablespace data
       file created outside of the MySQL data directory by
       modifying the .isl file is no longer supported.

     * Replication: There are two improvements to how a CHANGE
       MASTER TO
       (http://dev.mysql.com/doc/refman/8.0/en/change-master-to.html)
       statement is written into the error log
       (mysqld.log):

          + Before, no commas were put between the option
            specifications (for example MASTER_USER = and
            MASTER_PASSWORD = ), so users who wanted to use the
            statement by copy and paste had to insert the commas
            manually. Commas are now inserted when the statement
            is written to the error log.

          + When the literal "<secret>" is inserted as a
            placeholder for the MASTER_PASSWORD value, no quotes
            are used now, so users who forget to replace the
            literal with the real password before a copy and
            paste gets a syntax error immediately, instead of
            running into other issues.
       (Bug #18194384)

     * Replication: It is now possible to restore a backup of a
       GTID-based replication server because you can add GTIDs
       to gtid_purged, regardless of whether gtid_executed is
       empty or not. This enables you to restore backups from
       GTID-based replication servers without losing existing
       GTID information and binary logs. The GTIDs to add are
       those which existed in gtid_executed at the time of
       taking the backup. The syntax for SET GTID_PURGED has
       been extended to enable this ability, for example SET
       GTID_PURGED ="+gtid_set" adds gtid_set to the existing
       gtid_purged GTID set.

     * To produce more accurate estimates, the MEMORY storage
       engine now calculates index statistics (records per key
       estimates) using floating-point rather than integer
       arithmetic. (Bug #23024059)

     * A new CMake option, INSTALL_STATIC_LIBRARIES, enables
       control over whether to install static libraries. The
       default is ON. If set to OFF, these libraries are not
       installed: libmysqlclient.a, libmysqld.a,
       libmysqlservices.a. (Bug #22891432)

     * The internal mysql_prepare_create_table() server function
       has been refactored for improved code maintainability and
       clarity. This code revision results in the following
       minor changes of behavior for CREATE TABLE and ALTER
       TABLE:

          + Attempts to create a second primary key based on a
            NULL column now produce an ER_MULTIPLE_PRI_KEY error
            rather than ER_PRIMARY_CANT_HAVE_NULL.

          + Attempts to create a second primary key based on a
            generated column now produce an ER_MULTIPLE_PRI_KEY
            error rather than
            ER_UNSUPPORTED_ACTION_ON_GENERATED_COLUMN.

          + Attempts to create a full-text key on a JSON column
            now produce an ER_JSON_USED_AS_KEY error rather than
            ER_BAD_FT_COLUMN.

          + Attempts to create a key in a storage engine that
            does not support keys (for example, EXAMPLE) now
            produce an ER_TOO_MANY_KEYS error rather than
            ER_TOO_MANY_KEY_PARTS.
       (Bug #22884886)

     * Previously, the Performance Schema was not built for
       libmysqld, the embedded server. This prevented use of the
       SHOW STATUS and SHOW VARIABLES statements with
       show_compatibility_56=OFF because, with that setting,
       those statements take their results from Performance
       Schema tables. Now for libmysqld, the required
       Performance Schema tables are built (with no
       instrumentation collected), so that those SHOW statements
       can be supported with show_compatibility_56=OFF. (Bug
       #22809694)

     * Several internal functions used by JSON_CONTAINS(),
       JSON_SEARCH(), and other MySQL JSON functions created
       excessive numbers of local copies of keys, values, or
       both, when performing inspections of JSON objects. Such
       copying has been eliminated or reduced in many cases. In
       addition, the lifetimes of temporary objects used by some
       of these functions have been reduced. These changes
       should make these and related JSON functions perform more
       efficiently than previously, and with fewer resources
       required. (Bug #22602142)

     * If the system lz4 and openssl zlib commands are
       available, the lz4_decompress and zlib_decompress
       utilities are unneeded. Two changes enable those
       utilities not to be built: If the new WITH_LZ4 CMake
       option is set to system, lz4_decompress is not built or
       installed. If the WITH_ZLIB CMake option is set to
       system, zlib_decompress is not built or installed. (Bug
       #22329851)

     * Source files for the MySQL strings library have been
       converted from C (.c suffix) to C++ (.cc suffix). This
       enables stricter compilation checks and use of C++
       features in the library code. (Bug #22124719)

     * Source code for the mysys library now uses C++ rather
       than C to take advantage of stricter compilation checks
       and permit use of C++ features. (Bug #21881278)

     * A new CMake option, WITH_TSAN, permits enabling
       ThreadSanitizer for compilers that support it. (Bug
       #80409, Bug #23171902)

     * This release adds an unquoting extraction operator ->>,
       sometimes also referred to as an inline path operator,
       for use with JSON documents stored in MySQL. The new
       operator is similar to the -> operator, but performs JSON
       unquoting of the value as well. For a JSON column mycol
       and JSON path expression mypath, the following three
       expressions are equivalent:

          + JSON_UNQUOTE( JSON_EXTRACT(mycol, "$.mypath") )

          + JSON_UNQUOTE(mycol->"$.mypath")

          + mycol->>"$.mypath"
       The ->> operator can be used in SQL statements wherever
       JSON_UNQUOTE(JSON_EXTRACT()) would be allowed. This
       includes (but is not limited to) SELECT lists, WHERE and
       HAVING clauses, and ORDER BY and GROUP BY clauses.
       For more information, see Functions That Search JSON
       Values
       (http://dev.mysql.com/doc/refman/8.0/en/json-search-functions.html),
       and JSON Path Syntax
       (http://dev.mysql.com/doc/refman/8.0/en/json-path-syntax.html).
       (Bug #78736, Bug #21980346)

     * The global list of connections, previously protected by a
       single mutex, has been partitioned into eight parts, each
       protected by its own instance of the mutex. The result is
       a reduction of overhead and improved performance for
       connection processing. An implication of this change for
       monitoring purposes is that the Performance Schema now
       exposes eight different instances each of the
       LOCK_thd_list mutex, LOCK_thd_remove mutex, and
       COND_thd_list condition variable.

     * MySQL now provides functions to manipulate UUID values
       and make them easier to work with:

          + UUID_TO_BIN() and BIN_TO_UUID() convert between UUID
            values in string and binary formats (represented as
            hexadecimal characters and VARBINARY(16),
            respectively). This permits conversion of string
            UUID values to binary values that take less storage
            space. UUID values converted to binary can be
            represented in a way that permits improved indexing
            efficiency.

          + IS_UUID() returns 1 or 0 to indicate whether its
            argument is a valid string-format UUID value.
       For more information about these functions, see
       Miscellaneous Functions
       (http://dev.mysql.com/doc/refman/8.0/en/miscellaneous-functions.html)

     * The mysql_plugin utility has been removed. Alternatives
       include loading plugins at server startup using the
       --plugin-load or --plugin-load-add option, or at runtime
       using the INSTALL PLUGIN statement.

     * The server now relies on storage engines to clean up
       temporary tables left from previous server runs. InnoDB
       does this by discarding the temporary tablespace on
       restart. MyISAM and other similar storage engines still
       rely on scanning the temporary directory to detect
       leftover tables, by looking for files belonging to these
       engines with a certain name pattern.

     * The deprecated mysql_shutdown() C API function and
       corresponding COM_SHUTDOWN client/server protocol command
       have been removed. Instead, use mysql_query() to execute
       a SHUTDOWN statement.

     * Work was done to clean up the source code base,
       including: Removal of unneeded CMake checks; removing
       unused macros from source files; reorganizing header
       files to reduce the number of dependencies and make them
       more modular, removal of function declarations without
       definitions.

     * The server no longer performs conversion of pre-MySQL 5.1
       database names containing special characters to 5.1
       format with the addition of a #mysql50# prefix. Because
       these conversions are no longer performed, the
       --fix-db-names and --fix-table-names options for
       mysqlcheck, the UPGRADE DATA DIRECTORY NAME clause for
       the ALTER DATABASE statement, and the
       Com_alter_db_upgrade status variable have been removed.
       Upgrades are supported only from one major version to
       another (for example, 5.0 to 5.1, or 5.1 to 5.5), so
       there should be little remaining need for conversion of
       older 5.0 database names to current versions of MySQL. As
       a workaround, upgrade a MySQL 5.0 installation to MySQL
       5.1 before upgrading to a more recent release.

MySQL Community Server 8.0.0-dmr has been released (part 3/3) (no replies)

$
0
0
[This is part 3 of the announcement]

   Bugs Fixed

     * Important Change: The empty string value is now accepted
       as a key when used with JSON functions such as
       JSON_EXTRACT(). In such cases, it must be quoted. (Bug
       #79643, Bug #22366102)

     * MySQL Cluster: Previously, the mysql.ndb_binlog_index
       table was created even if the server was built without
       NDB. Now the table is created only if the server is built
       with NDB. (Bug #22874872)

     * InnoDB: Unnecessary checks were removed from the
       ut_cpuid() function which is used to fetch information
       about the CPU. (Bug #24405292)

     * InnoDB: An asynchronous read operation on a deleted
       tablespace raised an error. (Bug #24388498)

     * InnoDB: dict_col_t accessors were added to the InnoDB
       code. (Bug #24363566)

     * InnoDB: dict_col functions in the InnoDB code were
       replaced by accessors. (Bug #24361098)

     * InnoDB: dict_index_t functions in the InnoDB code were
       replaced by accessors. (Bug #24361023)

     * InnoDB: Unnecessary code that checked for and released
       reserved adaptive hash index search latches was removed.
       (Bug #24300175)

     * InnoDB: A system tablespace data file size greater than
       4G on a 32-bit operating system could result in an
       overflow condition. (Bug #23753625)

     * InnoDB: Internal methods for accessing table object data
       were added to to dict_table_t. (Bug #23748128)

     * InnoDB: An unspecified block size resulted in an empty
       INFORMATION_SCHEMA.TABLESPACES table on Windows NTFS with
       a cluster page size greater than or equal to 8K. (Bug
       #23598872)

     * InnoDB: The restriction that required the first undo
       tablespace to use space_id 1 was removed to avoid
       space_id conflicts with existing tablespaces during
       upgrade. The first undo tablespace can now use a space_id
       other than 1. space_id values for undo tablespaces are
       still assigned in a consecutive sequence. (Bug #23517560)

     * InnoDB: Internal accessor functions for iterating the
       indexes of a table were replaced with accessor methods.
       Dead code was removed. (Bug #23336108)

     * InnoDB: The mysql.innodb_index_stats and
       mysql.innodb_table_stats table definitions, which were
       previously created by an SQL script, are now hard-coded.
       As a result, the dict_table_schema_check function is
       longer required and was removed. (Bug #23336079)

     * InnoDB: The ut_snprint function was replaced by the C++11
       snprintf function. (Bug #23329353)

     * InnoDB: For consistency, instances of ulint in InnoDB
       code were replaced with space_id_t and page_no_t data
       types. (Bug #23297169)

     * InnoDB: Use of boost::atomic in InnoDB code was replaced
       with std::atomic. (Bug #23280649)

     * InnoDB: MySQL binaries were not built with the NUMA
       feature. (Bug #23259754)

     * InnoDB: References to UNIV_NONINL and
       UNIV_MUST_NOT_INLINE were removed. The fut0fut.cc and
       ut0byte.cc files, which were only necessary when
       UNIV_NONINL was defined, were also removed. (Bug
       #23150562)

     * InnoDB: The mutex_own() mapping caused warnings when
       compiling with Clang or newer GCC compilers. (Bug
       #23090278)

     * InnoDB: Compilation of InnoDB with Visual Studio 2015
       Update 2 returned warnings. (Bug #23056963)

     * InnoDB: Querying Performance Schema for InnoDB memory
       allocation event data incorrectly reported values of 0.
       (Bug #23020280)

     * InnoDB: DBUG_OFF compile-time flags were replaced by
       UNIV_DEBUG flags. To improve error log output,
       ut_dbg_assertion_failed() now uses sql_print_error() to
       display the file name, line number, and message in a
       single line. The thread ID is displayed in a subsequent
       line. (Bug #22996442, Bug #23028144)

     * InnoDB: SHOW ENGINE INNODB STATUS output displayed
       negative spin rounds per wait values.
       Thanks to Laurynas Biveinis for the patch. (Bug
       #22844987, Bug #79703)

     * InnoDB: The innodb_disable_resize_buffer_pool_debug
       option was removed. The patch for this change also
       removed a code variable and simplified the
       buf_pool_resize() function. (Bug #22755053)

     * InnoDB: After a successful ALTER TABLE ... ALGORITHM=COPY
       operation, an assertion was raised while building a
       previous version of a clustered index record. (Bug
       #22707367)

     * InnoDB: A DML operation that updated a counter in a table
       with a virtual index raised on assertion in
       row_parse_int(). (Bug #22650195)

     * InnoDB: The InnoDB memcached plugin would not load when
       compiled with libevent 2.0. (Bug #22646919)

     * InnoDB: Unused calculations for integer-based rec_per_key
       values were removed from InnoDB. Integer-based
       rec_per_key information was replaced by floating point
       index statistics in an earlier release. (Bug #22625348)

     * InnoDB: On slow shutdown, purge thread shutdown was
       initiated before the background rollback thread exited,
       resulting in an assertion failure. (Bug #22561332)

     * InnoDB: Blocks were lost in
       row_vers_old_has_index_entry() due to unfreed heaps. (Bug
       #22543834, Bug #79973)

     * InnoDB: A transportable tablespace debug test raised an
       assertion that was due to a race condition. (Bug
       #22453668)

     * InnoDB: The server failed to start due to missing undo
       tablespaces. (Bug #22452992)

     * InnoDB: InnoDB recovery asserted while attempting to
       close an undo tablespace due to buffered undo tablespace
       changes introduced by the recovery process. (Bug
       #22361764)

     * InnoDB: Reallocation of memcached-referenced memory
       raised an assertion. (Bug #22304250, Bug #79500)

     * InnoDB: Building InnoDB with C++11 returned "register"
       deprecation warnings. Handling of "register" deprecation
       warnings remained in the code after the deprecated
       "register" keyword was removed. Also, an unused
       declaration of yyset_extra() was removed. (Bug #22292704)

     * InnoDB: SHOW CREATE TABLE output for partitioned tables
       did not accurately display tablespace assignment
       information for table partitions. (Bug #22245554)

     * InnoDB: An ALTER TABLE...TRUNCATE PARTITION operation
       ignored the table's KEY_BLOCK_SIZE attribute and used the
       default value instead, which is half of the
       innodb_page_size value. (Bug #22186558, Bug #79223)

     * InnoDB: Memory leaks in innochecksum were corrected. (Bug
       #22179518)

     * InnoDB: A SPACE_ID column was added to the
       INNODB_CACHED_INDEXES table. The INDEX_ID value is no
       longer a global unique identifier. (Bug #22172026)

     * InnoDB: Creating a table with a full-text index and a
       foreign key constraint failed when foreign_key_checks was
       disabled. (Bug #22094601, Bug #78955)
       References: This issue is a regression of: Bug #16845421.

     * InnoDB: The ha_innobase::m_primary_key field was removed.
       It was redundant. A boolean predicate,
       TABLE_SHARE::is_missing_primary_key(), was added. (Bug
       #21928734, Bug #78662)

     * InnoDB: A buffer pool load operation that attempted to
       load an uninitialized page caused a Valgrind failure.
       (Bug #21747906)

     * InnoDB: Unused functions introduced by the InnoDB
       memcached plugin were removed. (Bug #21625760)

     * InnoDB: An internal global variable used by the
       innodb_buffer_pool_size configuration option was removed.
       (Bug #21512749)

     * InnoDB: An InnoDB page cleaner thread asserted during a
       buffer pool resize operation. (Bug #21473497)

     * InnoDB: Log buffer contention was reduced with the
       addition of a second buffer, allowing for concurrent log
       buffer writing and flushing. A new mutex was added to
       protect log buffer flushing.
       Thanks to Zhai Weixiang for the patch. (Bug #21352937,
       Bug #77094)

     * InnoDB: Unused InnoDB and libsql functions and variables
       were removed, and global symbols were converted to static
       keywords, where possible. (Bug #21153166, Bug #21141390,
       Bug #77146, Bug #21178589)

     * InnoDB: The SysTablespace::parse_units() function now
       returns the number of pages in a file instead of the
       number of megabytes. The SysTablespace::normalize_size()
       function was removed. Error messages in
       SysTablespace::parse_params() were revised. (Bug
       #21040199, Bug #76949)

     * InnoDB: For persistent tables, the internal unique
       identifier for InnoDB indexes (index_id) now includes a
       tablespace identifier (space_id,index_id). This change
       makes index identifiers unique at the tablespace level as
       well as the InnoDB instance level, and supports future
       work related to index identifier allocation. (Bug
       #20737524, Bug #76392)

     * InnoDB: Code related to innochecksum was cleaned up and
       reorganized. Checksum functionality is now located in
       buf0checksum.cc. (Bug #20518099)

     * InnoDB: __attribute__((nonnull)) was removed from InnoDB
       code. The attribute is no longer permitted by InnoDB
       coding guidelines. (Bug #20468234)

     * InnoDB: A new struct was added to provide a logical
       interface for handling and manipulating external BLOB
       field references. (Bug #18195972)

     * InnoDB: TRUNCATE TABLE is now mapped to DROP TABLE and
       CREATE TABLE. This change has the following implications:

          + On systems with a large buffer pool and
            innodb_adaptive_hash_index enabled, TRUNCATE TABLE
            operations previously caused a temporary drop in
            system performance due to an LRU scan that occurred
            when removing the table's adaptive hash index
            entries. The remapping of TRUNCATE TABLE to DROP
            TABLE and CREATE TABLE avoids the problematic LRU
            scan.

          + TRUNCATE TABLE is temporarily non-atomic. A server
            exit during a TRUNCATE TABLE operation can result in
            a dropped table and orphaned foreign key constraints
            in the InnoDB SYS_FOREIGN and SYS_FOREIGN_COLS
            system tables.

          + The InnoDB memcached plugin flush_all command
            invokes DELETE instead of TRUNCATE TABLE. DELETE has
            a higher overhead cost than FLUSH TABLE since it
            involves undo-logging, delete-marking, and
            eventually purging each deleted row.

          + A log checkpoint that occurred for internal truncate
            table operations on file-per-table tablespaces was
            replaced by a log flush.
       (Bug #16834993, Bug #68184, Bug #16207919)

     * InnoDB: InnoDB wasted most pages in extents used for
       fragment pages. (Bug #16204823, Bug #67963)

     * Partitioning: In some cases, an issue with partition
       pruning being attempted a second time during optimization
       after all partitions had already been pruned at parsing
       time led to an assert. (Bug #23194259)

     * 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)

     * The client library failed to build on Solaris using the
       Cstd library. (Bug #24353920)

     * MySQL now uses readdir() rather than readdir_r(). The
       latter has been deprecated since glibc 2.24 and causes
       debug builds of MySQL to fail. (Bug #23708395)

     * On OS X, stack trace demangling now occurs for builds
       compiled using Clang, just as for GCC. (Bug #23606094)

     * For segmentation faults on FreeBSD, the server did not
       generate a stack trace. (Bug #23575445, Bug #81827)

     * CHECKSUM TABLE calculated the checksums for JSON values
       using the memory addresses of the values rather than the
       values themselves, which made the checksum vary. Now in
       such cases the calculation is based on the actual JSON
       value, and not on that value's address. (Bug #23535703)

     * libevent was built on OS X even when not needed. (Bug
       #23228287)

     * A function that returns a JSON value could cause a server
       exit if called as part of a CASE statement in a stored
       procedure. (Bug #23212765)

     * Passing NULL to a stored procedure expecting a JSON
       parameter led to an assertion failure in debug builds.
       (Bug #23209914)

     * Previously, different values were reported by SHOW ENGINE
       PERFORMANCE_SCHEMA STATUS and SELECT * FROM
       performance_schema.memory_summary_global_by_event_name
       for total memory used in the Performance Schema. The
       memory for scalable buffer pages, instrumented as
       memory/performance_schema/scalable_buffer, was missing
       from the SHOW ENGINE STATUS output. That statement now
       includes the missing memory, displayed as
       (pfs_buffer_scalable_container).memory. (Bug #23104498)

     * The -fexpensive-optimizations option to GCC caused ARM64
       and PowerPC builds to compute floating-point operations
       slightly differently from other platforms. This option
       was enabled by -O2 and higher optimization levels. The
       option now is disabled on platforms negatively affected
       by it. (Bug #23046775)

     * After a failed administrative operation such as ALTER
       TABLE ... OPTIMIZE PARTITION, selecting from the
       Performance Schema in lock-tables mode could hang. (Bug
       #23044286)

     * In builds with AddressSanitizer enabled, CAST(... AS
       BINARY) could cause a server exit. (Bug #22900560)

     * Some spatial functions were reported using a different
       spatial function name in error messages. (Bug #22883056,
       Bug #80627)

     * Fixed Valgrind warnings with Clang in optimized mode for
       the my_strtod_int() function. (Bug #22839888)

     * Precision math operations on values with 64 decimals
       could produce a 0 result. (Bug #22828692)

     * Geometry import functions that took an SRID parameter
       cast it to an unsigned 32-bit integer without warning or
       error, so negative values or values larger than unsigned
       32-bit integer range were silently converted to a number
       within the range. Now, all geometry functions that take
       the SRID as a parameter check that it is within unsigned
       32-bit integer range and produce an ER_DATA_OUT_OF_RANGE
       error if not. This also applies to GeoJSON and GeoHash
       functions that previously checked that the parameter was
       within range but returned a different error code. (Bug
       #22819614)

     * Parsing of JSON path arguments failed to distinguish
       between a NULL path and one that was syntactically
       invalid.
       This has been changed so that parsing of these paths now
       clearly distinguishes between valid non-NULL paths, NULL
       paths, and invalid paths. (Bug #22816576)

     * ST_GeomFromGeoJSON() could return an error with valid
       arguments. (Bug #22804853)

     * For debug builds, an assertion could be raised when the
       server created a temporary table to hold JSON objects.
       (Bug #22782948)

     * For debug builds with STRICT_TRANS_TABLES SQL mode
       enabled, an assertion could be raised by INSERT or
       REPLACE statements that had made changes that could not
       be rolled back and that subsequently generated an
       ER_NO_DEFAULT_FOR_FIELD error. (Bug #22635253)

     * The optimizer contained a memcpy() call that did not
       check for overlapping source and destination. (Bug
       #22537196)

     * For debug builds, a missing error check on the result of
       a subquery that accessed a JSON value could raise an
       assertion. (Bug #22522073)

     * Preparing a CREATE TABLE ... SELECT statement, then
       flushing tables (thus closing the table) and executing
       the prepared statement could cause a server exit. (Bug
       #22393309)

     * A prepared statement that used a parameter in the select
       list of a derived table that was part of a join could
       cause a server exit. (Bug #22392374, Bug #24380263)

     * Re-evaluation of a generated column expression could
       cause access to previously freed memory and a server
       exit. (Bug #22346120)

     * HANDLER read statements that searched an index when the
       target index value was not stored into the row buffer
       successfully could cause a server exit. (Bug #22321965)

     * Improper handling of numeric-to-ZEROFILL conversion for
       NULL values could lead to a server exit. (Bug #22281205)

     * Using a subquery containing a row constructor to set a
       variable in a SET statement could cause a server exit.
       (Bug #22276843)

     * If the SQL mode did not include ALLOW_INVALID_DATES, a
       query that contained invalid_date IN (subquery) and was
       handled by subquery materialization could cause a server
       exit. (Bug #22262843)

     * For the embedded server, the code following the check for
       invalid arguments was invoked with missing or incorrect
       arguments, which could lead to an improper exit. (Bug
       #22262706)

     * Queries that executed a JSON function that raised an
       error could cause a server exit. (Bug #22253965)

     * On OS X, vio_io_wait() used select(), limiting the number
       of file descriptors to 1024. Now kqueue event
       notification is used instead to avoid this limit. FreeBSD
       was changed to use kqueue as well. (Bug #22244911)

     * On Windows, setting the global log_syslog system variable
       in multiple threads could cause a server exit. (Bug
       #22180046)

     * Memory leaks could result if stored routine loading
       involved temporarily changing the default database and
       errors occurred restoring the original default database.
       (Bug #22179795)

     * CMake configuration was adjusted to check for -Wxxx
       compiler options instead of -Wno-xxx because the latter
       produce false positives for GCC. (Bug #21881753)

     * Views could evaluate user-defined or SQL functions before
       evaluating restrictions from the view definition. (Bug
       #20933307)

     * The return value from an fread() call was not checked.
       (Bug #20671150)

     * With -DENABLE_DTRACE=ON, CMake did not check whether a
       working DTrace installation was present. Now it checks
       and aborts if DTrace cannot be found. (Bug #20671056)

     * If given a relative path name for the --log-error option,
       mysqld could sent stdout and stderr to the wrong
       location. (Bug #20609063)

     * Evaluation of LEAST() and GREATEST() could use too small
       a sort buffer for datetime and string literals, causing
       an assertion to be raised. (Bug #20565160)

     * The range of error numbers for errors that are new in
       MySQL 8.0 has been designated to begin with 3500. (Bug
       #20538173)

     * Debian packaging was updated not to set the sql_mode
       system variable in my.cnf. (Bug #20535729)

     * Statements such as INSERT and LOAD DATA that use the
       REPLACE or IGNORE keyword to handle duplicate records
       could affect subsequent operations. (Bug #20017428)

     * CREATE TABLE ... SELECT where non-BIT data was selected
       from the source table into a BIT column in the
       destination table could cause a server exit. (Bug
       #19930894)

     * Compilation failed on OS X when MySQL was configured with
       -DMYSQL_MAINTAINER_MODE=1 and compiled with clang/Xcode
       6.0. (Bug #19694515, Bug #74100)

     * For CHANGE MASTER TO statements rewritten to filter the
       password before being written to the general query log,
       any MASTER_AUTO_POSITION clause was lost. (Bug #19622609)

     * Use of the VALUES() function in a SELECT clause could
       result in a server exit. (Bug #19601973)

     * A potential null-pointer dereference and memory leak in
       table-rename code were corrected. (Bug #18194270)

     * Using MATCH ... AGAINST to compare a character column and
       an aggregate function could cause a server exit. (Bug
       #17865492)

     * Slightly different values for the number of connections
       could be reported in various information sources, such as
       the Connections status variable, Performance Schema
       threads and global_status tables, and SHOW PROCESSLIST
       statement. (Bug #17666696)

     * A query with a subquery containing a set operation with
       an outer reference might cause a server exit. (Bug
       #17270896)

     * Using GRANT to change a password for an invalid user
       produced an error, but also updated the mysql.user system
       table. (Bug #17180985)

     * The parser for spatial WKT data accepted numbers such as
       0.23 but not .23, the equivalent value without the
       leading zero. Now both formats are accepted. (Bug
       #17167633)

     * Previously, if a client attempted to send connection
       attribute key/value pairs that in aggregate had a size
       larger than the value of the
       performance_schema_session_connect_attrs_size system
       variable, the Performance Schema truncated the attribute
       data. In addition, the Performance Schema wrote this
       message to the error log if the log_warnings system
       variable was greater than zero:
[Warning] Connection attributes of length N were truncated

       This message was not helpful to a DBA attempting to
       determine the problematic client, so several changes have
       been made to connection attribute handling:

          + Truncation of connection attributes still occurs for
            excessive data, but the log message is more
            informative. It includes the number of bytes lost,
            the connection identifier, and information about the
            client user. The additional information should
            enable DBAs to more easily identify clients for
            which attribute truncation occurred.

          + When truncation occurs, a _truncated attribute is
            added to the session attributes with a value
            indicating how many bytes were lost, if the
            attribute buffer has sufficient space. This enables
            the Performance Schema to expose per-connection
            truncation information in the connection attribute
            tables.

          + A new status variable,
            Performance_schema_session_connect_attrs_longest_see
            n, indicates the longest connection attribute buffer
            smaller than 64KB seen by the server. If this value
            is larger than
            performance_schema_session_connect_attrs_size,
            attribute truncation has occurred, and DBAs may wish
            to increase the latter value, or, alternatively,
            investigate which clients are sending large amounts
            of attribute data.
       For more information, see Performance Schema Connection
       Attribute Tables
(http://dev.mysql.com/doc/refman/8.0/en/performance-schema-connection-attribute-tables.html).
       (Bug #16576959)

     * For abnormal server exit on Windows, the server
       previously created a minidump file named module_name.dmp,
       where module_name is the name of the server executable
       file. To prevent earlier minidump files from being
       overwritten, minidump file names now include the process
       ID and have the form module_name..piddmp; for example,
       mysqld.exe.7296.dmp. (Bug #12779463)

     * For queries on INFORMATION_SCHEMA tables, comparisons of
       schema and table names could be case sensitive or
       insensitive, depending on the characteristics of the
       underlying file system and the lower_case_table_names
       system variable value. Furthermore, it was ineffective to
       provide a COLLATE clause to change the comparison
       properties because that clause was ignored. This has been
       changed so that COLLATE is no longer ignored and can be
       used to obtain the desired comparison properties. (Bug
       #11748044, Bug #34921)

     * FLOOR(CEIL()) truncated large BIGINT UNSIGNED arguments.
       (Bug #80873, Bug #23013359)

     * Manipulation of a value returned by the JSON_MERGE()
       function using JSON_SET() sometimes produced an invalid
       result. (Bug #80787, Bug #22961128)

     * ST_AsGeoJSON() failed when geometry arguments were
       supplied using user-defined variables. (Bug #80697, Bug
       #22912800)

     * CAST(expr AS BINARY(N) ) unexpectedly returned NULL for
       some valid values of N. (Bug #80630, Bug #22885819)

     * If rounding occurred while storing a predicate value, the
       range optimizer might not return correct results for the
       < and <= operators. (Bug #80244, Bug #22661012)

     * For the mf_iocache unit test, add a missing va_end(), fix
       a memory leak by calling my_end(), and add a target for
       the test. Thanks to Daniel Black for the patch on which
       these changes are based. (Bug #80085, Bug #22578670)

     * SELECT DISTINCT SUBSTR() could incorrectly discard values
       as duplicates for large position or length arguments. The
       same issue also affected LEFT() and RIGHT(). (Bug #80047,
       Bug #22565155)

     * SUBSTRING_INDEX(str, delim, count) did not properly
       handle count values larger than 32 bits. (Bug #79978, Bug
       #22545429)

     * For calls to CONVERT(), literal string arguments could be
       modified during execution, producing incorrect results.
       (Bug #79924, Bug #22531111)

     * REPLACE('a', BINARY 'b', NULL) returned 'a' rather than
       NULL. (Bug #79912, Bug #22523836)

     * Transaction state tracking now avoids a function that is
       not 8-bit safe, for enhanced compatibility with
       nonstandard character sets. (Bug #79905, Bug #22523383)

     * GREATEST() and LEAST() treated all integer input as
       signed. (Bug #79902, Bug #22523685)

     * Lines in the general query log were missing a tab between
       the timestamp and the thread ID. Thanks to Tsubasa Tanaka
       for the patch. (Bug #79868, Bug #22508563)

     * Some comparisons between unsigned values and negative
       upper limits could return incorrect results (for example,
       CAST(100 AS UNSIGNED) BETWEEN 1 AND -1). (Bug #79857, Bug
       #22501606)

     * The REPEAT() function did not properly handle output from
       the SUBSTR() function. (Bug #79695, Bug #22391186)

     * The JSON_TYPE() function now shows the type of BIT
       literals cast to JSON as BLOB, rather than BIT. (Bug
       #79308, Bug #22297987)

     * Configuring MySQL with the -DWITH_UBSAN=ON CMake option
       produced a server that was not fully functional. (Bug
       #79238, Bug #22194071)

     * sql_common.h, a header file included in MySQL
       distributions, included and was therefore dependent on
       hash.h, a header file not included in MySQL
       distributions. This resulted in compilation failures. To
       eliminate this dependency, sql_common.h was modified to
       no longer include hash.h. (Bug #79237, Bug #22187997, Bug
       #70672, Bug #17633467)

     * Timers used for checking maximum statement execution time
       were initialized even when the server was started with
       the --help option. If --help is given, this is no longer
       done. (Bug #79182, Bug #22172389)

     * The optimizer failed when trying to optimize away
       expressions of the form IF(true, '2015-01-01',
       '2015-01-01') IS NOT NULL. (Bug #79114, Bug #22148586)

     * Subtraction of an unsigned decimal could return a
       negative value, but with metadata type information of
       UNSIGNED BINARY. Subtraction for unsigned decimal
       subtraction now is handled the same way as for unsigned
       integer: Produce an ER_DATA_OUT_OF_RANGE error if the
       result is negative, unless the NO_UNSIGNED_SUBTRACTION
       SQL mode is enabled. (Bug #78914, Bug #22083757)

     * Handling by the HEX() function of numbers larger than
       2^64 was improved. (Bug #78828, Bug #22297983)
       References: This issue is a regression of: Bug #9854.

     * The client-side plugin deinitialization function
       signature was changed from int (*deinit)() to int
       (*deinit)(void) to avoid warnings when compiling with
       -Wstrict-prototypes. (Bug #78177, Bug #21680094, Bug
       #81419, Bug #23282498)

     * CREATE TABLE reported an incorrect error if a very long
       or incorrect path name was specified for the DATA
       DIRECTORY or INDEX DIRECTORY table option. Now
       ER_PATH_LENGTH or ER_WRONG_VALUE are reported for those
       cases. (Bug #76635, Bug #20857556)

     * The server now tries to provide more informative messages
       for these error codes: ER_CANT_CREATE_DB,
       ER_CANT_CREATE_TABLE, ER_DB_DROP_DELETE,
       ER_DB_DROP_RMDIR, ER_ERROR_DURING_COMMIT,
       ER_ERROR_DURING_ROLLBACK, ER_GET_ERRNO. (Bug #76298, Bug
       #20694494)

     * For some instances of failure to prepare an XA
       transaction, incomplete transaction cleanup could raise
       an assertion. (Bug #75809, Bug #20488921)

     * mysqld could attempt to close an invalid socket file
       descriptor. Thanks to Zhai Weixiang for the patch. (Bug
       #75778, Bug #20504513)

     * A statement of the following form converted the table
       data to latin1, but also changed the table default
       character set to latin1 and ignored the utf8 clause:
ALTER TABLE tbl_name CHARACTER SET utf8, CONVERT TO CHARACTER SET lati
n1;

       Thanks to Daniel Black for the patch. (Bug #75320, Bug
       #20279241)

     * In mysqld.cc, the abort_loop variable was quantified with
       volatile, which on some platforms could result in changes
       not being seen immediately in threads running on
       different cores. Thanks to Stewart Smith for the patch.
       (Bug #74846, Bug #20134637)

     * Calling a procedure which created a view from a trigger,
       or creating a function that called a procedure that
       executed RENAME TABLE could, under certain circumstances,
       raise an assertion. (Bug #74740, Bug #19988193, Bug
       #21198646)

     * Timestamps for server-side prepared statements could be
       written to the binary log up to a second behind
       timestamps for the corresponding nonprepared statements.
       (Bug #74550, Bug #19894382)

     * For dynamic storage engine plugins, DROP TABLE, TRUNCATE
       TABLE, and RENAME TABLE did not work due to incorrectly
       determining the engine from the .frm file. (Bug #74277,
       Bug #19902868)

     * Executed prepared statements are logged with ? parameter
       markers replaced by data values. Construction of the
       logged string was inefficient and has been improved. (Bug
       #73056, Bug #20955496)

     * Assignment by a plugin to its thread variables of string
       type could leak memory. (Bug #71759, Bug #19917521)

     * Grouping with a view could produce an
       ER_INVALID_GROUP_FUNC_USE error ("Invalid use of group
       function") when selecting from the base table did not.
       (Bug #70220, Bug #17406425)

     * Test cases that were intended to be storage
       engine-agnostic but were actually using a specific engine
       were corrected.

Oracle Enterprise Manager for MySQL Database 12.1.0.4.0 has been released (no replies)

$
0
0
Dear MySQL users,

The MySQL development team is pleased to announce that the fourth
release of Oracle Enterprise Manager for MySQL Database is now
Generally Available (GA).

Oracle Enterprise Manager for MySQL Database is the official MySQL
plug-in that provides comprehensive performance, availability, and
configuration information for Oracle's integrated enterprise IT
management product line, Oracle Enterprise Manager (12c or later).

This is a maintenance release that includes a few enhancements and
fixes a number of bugs. You can find more information on the contents
of this release in the change log:

http://dev.mysql.com/doc/mysql-em-plugin/en/myoem-release-notes.html
(also included at the end of this note for convenience)

Use Self-Update to deploy Oracle Enterprise Manager for MySQL Database
12.1.0.4.0, or use My Oracle Support to download and install manually:

https://support.oracle.com

Choose the "Patches & Updates" tab, and then choose the "Product or
Family (Advanced Search)" side tab in the "Patch Search" portlet.

Packages will also be available on the Oracle Software Delivery Cloud
at the next monthly refresh.

Please open a ticket on My Oracle Support to report problems, request
features, or give us general feedback about how this release meets
your needs.

All the best!

- The MySQL Enterprise Tools Development Team

Useful URLs
* My Oracle Support - http://support.oracle.com/
* Installation documentation - http://dev.mysql.com/doc/mysql-em-plugin/en/myoem-installation-reference.html
* Complete documentation - http://dev.mysql.com/doc/mysql-em-plugin/en/index.html
* Product information - http://www.mysql.com/products/enterprise/monitor.html

Changes in Oracle Enterprise Manager for MySQL Database 12.1.0.4.0

Functionality Added or Changed

* Several performance enhancements were made in this release.

* The thresholds of the following metrics have been changed from
critical to warning, and from warning to info:

- Table Cache Not Optimal

- Thread Cache Size Not Optimal

Bugs Fixed

* Path-related errors occurrOEM-17ed when using Oracle Enterprise
Manager for MySQL Database 12.1.0.3.0 on Oracle Enterprise Manager
13CR1. (#23499577)

* On Oracle Enterprise Manager 13c it was not possible to upgrade from
Oracle Enterprise Manager for MySQL Database 12.1.0.2.0 to
12.1.0.3.0. If using Oracle Enterprise Manager 13c, it is strongly
recommended to upgrade from Oracle Enterprise Manager for MySQL
Database 12.1.0.2.0 to 12.1.0.4.0.

* The InnoDB Redo Log Pending Writes graph was not displayed for MySQL
5.7 instances.

* The Warnings Not Being Logged metric help text was updated.

* The underlying calculation of Prepared statements not being used
effectively was incorrect.

* Excessive debug messages were logged. This was due to an issue with
the Connector/J component.

* The help text of the Binary Log Space Exceeds Specified Limit metric
was updated.

* Under certain circumstances, the MyISAM Full Text Configuration
metric did not return accurate information. A warning was also
logged in the agent logs.

* On the All Metrics page, any attempt to retrieve the Innodb
Transaction Activity metrics resulted in the following error:

Metric has no keys, but result has multiple rows

The metrics were not displayed.

MySQL Connector/Python 2.2.1 m2 Development Release has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Connector/Python 2.2.1 M2 is the second development release of the
MySQL Connector Python 2.2 series. This series adds support for the new
X DevAPI. The X DevAPI enables application developers to write code that
combines the strengths of the relational and document models using a
modern, NoSQL-like syntax that does not assume previous experience
writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see
http://dev.mysql.com/doc/x-devapi-userguide/en/. For more information
about how the X DevAPI is implemented in MySQL Connector/Python, and its
usage, see http://dev.mysql.com/doc/dev/connector-python.

Please note that the X DevAPI requires at least MySQL Server version
5.7.12 or higher with the X Plugin enabled. For general documentation
about how to get started using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

To download MySQL Connector/Python 2.2.1 M2, see the "Development
Releases" tab at http://dev.mysql.com/downloads/connector/python/

Changes in MySQL Connector/Python 2.2.1 (2016-09-13)

MySQL Connector/Python 2.2.1 has a prerequisite of Protobuf
3, and is available in a more limited number of distribution
formats than usual (RPM and tar.gz packages only).

* X DevAPI Notes

* Functionality Added or Changed

* Bugs Fixed

X DevAPI Notes

* Views can now be accessed like tables:

+ Schema.get_tables() now also returns a Table object
for each existing View.

+ Schema.get_table(name) now also returns a Table
object if the given name is a View.

+ All the operations available through a Table object
are also available if the underlying object is a
View. (The client will not do any validation in this
regard.)

+ A new Table.is_view() method determines whether the
underlying object is a View.

* The Collection.add([]).execute() construct now is treated
as a no-operation and does not return an error. This is
true even if there is no connection to the server or the
collection does not exist on the server. The reasoning is
that a request to add nothing to something that does not
exist is trivially fulfilled.

* Connector/Python now implements support for these X
DevAPI features:

+ Client failover

+ URI connection format

Functionality Added or Changed

* Protobuf support was upgraded from Protobuf 2 to Protobuf
3 (which means that Protobuf3 is now a prerequsite for
Connector/Python).

Bugs Fixed

* Attempts to fetch a value having the BIT data type
produced an error. (Bug #23729357)

* The fetchone() result set method and close() session
method were missing. They are now included. (Bug
#23568257, Bug #23550743)

* Session creating using a URL-format connection string
failed. (Bug #23550057)


Documentation
--------------------

Online:http://dev.mysql.com/doc/connector-python/en/index.html
The source distribution includes the manual in various formats under
the docs/ folder.

Reporting Bugs
--------------------

We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

Enjoy and thanks for the support!

On Behalf of the MySQL/ORACLE RE Team,
Piotr Obrzut

MySQL Enterprise Monitor 3.3 GA has been released (no replies)

$
0
0
We are very happy to announce the general availability of MySQL
Enterprise Monitor, Version 3.3. MySQL Enterprise Monitor is the best-
in-class tool for monitoring and management of your MySQL assets and
is included with your MySQL Enterprise Edition and MySQL Enterprise
Carrier Grade subscriptions.

You’ll find information about what’s new here:

http://dev.mysql.com/doc/relnotes/mysql-monitor/3.3/en/news-3-3-0.html
(also included at the end of this note for convenience)

Highlights

* 3.3 introduces a new Enterprise Backup Dashboard that brings deeper
integration with MySQL Enterprise Backup. View current backup
status, history and archive details by group or instance using MySQL
Enterprise Backup Advisor collections from existing
mysql.backup_history and mysql.backup_progress table data.

* Backup Group view shows a summary of backup events, details on the
last successful full and Incremental backup types, any failed
backups and an indication of whether the group has full backup
coverage. Coverage calculations include appropriate checks on
replication filters across your replication topologies.

* Backup view of a single MySQL Instance shows a summary of backup
events, details on the last successful full and Incremental backup
types and any failed backups. Sparkline histories graph the total
backup time per backup and the total time the MySQL Instance had a
global read-lock during the backup process.

* Select the Backup History tab to see all known backups in the event
you need to perform a restore operation. Each row in the backup
history table shows the backup type, status, completion timestamp
and the log coordinates when the consistent snapshot was taken.

* Drill down to an individual Backup archive to view all its metadata
and associated progress logs.

* The 3.3 User Interface now makes zooming in on common problems a
single click on a named filter. Use these shortcuts to quickly
select the search criteria of most interest on the MySQL Instances,
Events, Query Analyzer and All Timeseries Graphs pages. Examples of
pre-defined filters include all MySQL Instances using an EOL
version, old MySQL Enterprise Monitor Agent installations, currently
open Emergency events, and all statements that cause a full table
scan, temporary tables on disk or SQL Errors. In addition to pre-
defined filters, you can assign a name to your own favorite search
conditions for reuse across sessions.

Download

You will find binaries for the new release on My Oracle Support:

https://support.oracle.com

Choose the "Patches & Updates" tab, and then choose the "Product or
Family (Advanced Search)" side tab in the "Patch Search" portlet.

You will also find the binaries on the Oracle Software Delivery Cloud:

http://edelivery.oracle.com/

Choose "MySQL Database" as the Product Pack and you will find the
Enterprise Monitor along with other MySQL products.

If you are not a MySQL Enterprise customer and want to try the Monitor
and Query Analyzer using our 30-day free customer trial, go to
http://www.mysql.com/trials, or contact Sales at
http://www.mysql.com/about/contact.

Please open a bug or a ticket on My Oracle Support to report problems,
request features, or give us general feedback about how this release
meets your needs.

Useful URLs

* My Oracle Support - http://support.oracle.com/
* What's New in 3.3 - https://dev.mysql.com/doc/mysql-monitor/3.3/en/mem-comparison-3-2.html
* Change log - http://dev.mysql.com/doc/relnotes/mysql-monitor/3.3/en/
* Installation documentation - http://dev.mysql.com/doc/mysql-monitor/3.3/en/mem-installing.html
* Complete documentation - http://dev.mysql.com/doc/mysql-monitor/3.3/en/
* Product information - http://www.mysql.com/products/enterprise/monitor.html
* Download - http://support.oracle.com/ (available now) or http://edelivery.oracle.com/

Thanks and Happy Monitoring!

- The MySQL Enterprise Tools Development Team

==========

Changes in MySQL Enterprise Monitor 3.3.0

Functionality Added or Changed

* Important Change: The Enterprise Backup dashboard is introduced in
this release. This dashboard enables monitoring of Full,
Incremental, TTS, and Partial backups performed by MySQL Enterprise
Backup on the monitored instances.

For more information, see:
http://dev.mysql.com/doc/mysql-monitor/3.3/en/mem-ui-backup-dashboard.html

* Named filters are introduced in this release. Named filters make it
possible to create and save filters on the following pages:

- MySQL Instances

- Events

- Query Analyzer

- All Timeseries Graphs

- Advisors

A number of default named filters have been added in this release.
See System and User-defined Filters for more information.

Important: Existing default filters are migrated by the upgrade
process and are renamed to User Default.

* The event status is now included in the body of the notification
mail. (Bug #24311586)

* The Warnings Not Being Logged advisor text was updated.

* The Tomcat server, bundled with the MySQL Enterprise Service
Manager, has been upgraded to 8.0.33.

* The MySQL server, bundled with the MySQL Enterprise Service Manager,
has been upgraded to MySQL 5.7.15.

Important: If you are upgrading from a previous version, the upgrade
installer will handle the upgrade of your existing repository to the
new version. All previous versions of MySQL Enterprise Service
Manager used MySQL 5.6.x, which must be upgraded to 5.7.14, the
version delivered with this release. This only applies to
installations using the bundled MySQL Server. If you are using an
external MySQL Server as the repository, you must upgrade it
manually to at least 5.6.14 before running the MySQL Enterprise
Service Manager upgrade installer. MySQL 5.7.14 is the recommended
version.

As of this release, the MySQL Enterprise Service Manager installer
and upgrade installer raise an error if an attempt is made to
configure MySQL Enterprise Service Manager to use an unsupported
MySQL version for the repository.

* Important Change: As of this release, it is not possible to use
MySQL Server 5.1 or 5.5 as the MySQL Enterprise Monitor repository.
The installer displays an error and the installation process stops.

Bugs Fixed

* The documentation did not specify the correct format for the ssl-ca-
keystore-path parameter. It was listed as a file path, but is a URL.
For example:

ssl-ca-keystore-path=file:///mysql/enterprise/agent/etc/mykeystore
(Bug #24386496)

* Attempting to monitor a group replication topology caused all
replication topology discovery to fail. (Bug #24376827)

* The InnoDB Redo Log Pending Writes graph was not displayed for MySQL
5.7 instances. (Bug #23563358)

* LDAP configuration was not validated when saved. As a result, if the
LDAP connection information was incorrectly configured,
NullPointerExceptions were logged, and it was not possible to
connect to the LDAP server. (Bug #23299288)

* The certificate to keystore upgrade process attempted to use the
system's openSSL installation instead of that delivered with the
installer. As a result, if openSSL was not installed on the system,
the upgrade failed. As of this release, the upgrade only uses the
openSSL libraries delivered with the installer. (Bug #22522309)

* The MySQL Enterprise Service Manager utility config.sh returned a
stack trace for unsupported commands, instead of redirecting the
user to the help.

* Custom agent service names were not maintained by the agent upgrade
process. The custom name was overwritten by the default agent
service name, MySQLEnterpriseMonitorAgent.

* A NullPointerException was logged for replication monitoring. This
exception did not affect the performance of replication monitoring.

* The advice page generated by the MySQL Enterprise Backup Health
advisor contained broken links to the InnoDB chapters of the MySQL
Reference Manual. It also incorrectly referred to the --start-lsn
option as the --lsn option.

* The Overview page elements did not resize properly if the browser
window was resized.

* On certain browser versions, the symbol << was transformed to Â<<.

* Replication filter information was not collected. As a result, the
replica's Filter/Delay Status frame of the Source Replication Status
was not correctly populated.

MySQL Connector/J 5.1.40 has been released (no replies)

$
0
0
Hello all,

MySQL Connector Java 5.1.40, a maintenance release of the production 5.1
branch, has been released. Connector/J is a Type-IV pure-Java JDBC driver
for MySQL, supporting the JDBC 4.2 API.  It is suitable for use with MySQL
server versions 5.5, 5.6, and 5.7.

MySQL Connector Java is available in source and binary form from the
Connector/J download page at
http://dev.mysql.com/downloads/connector/j/5.1.html

MySQL Connector Java (Commercial) is available for download on the My
Oracle Support (MOS) website. This release will be available on
eDelivery (OSDC) in next month's upload cycle.

As always, we recommend that you check the "CHANGES" file in the
download archive to be aware of changes in behavior that might affect
your application.

MySQL Connector/J 5.1.40 includes the following general bug fixes and
improvements, also available in more detail on
http://dev.mysql.com/doc/relnotes/connector-j/en/news-5-1-40.html :

Changes in MySQL Connector/J 5.1.40             (2016-10-03)

   Version 5.1.40 is a maintenance release of the production 5.1
   branch. It is suitable for use with MySQL server versions
   5.5, 5.6, and 5.7. It supports the Java Database Connectivity
   (JDBC) 4.2 API.

   Functionality Added or Changed

     * A very old workaround for Bug#36326 (fixed in release
       5.1.32) has been removed, so Connector/J can now use
       local transaction states when the MySQL server has query
       cache enabled. (Bug #19974685)

     * Added support for the error codes of two MySQL server
       errors, ER_XA_RBTIMEOUT
       (http://dev.mysql.com/doc/refman/5.7/en/error-messages-se
        rver.html#error_er_xa_rbtimeout) and ER_XA_RBDEADLOCK
       (http://dev.mysql.com/doc/refman/5.7/en/error-messages-se
        rver.html#error_er_xa_rbdeadlock). (Bug #13702433, Bug
       #64188)

   Bugs Fixed
    
     * In certain cases, the exception interceptor was being
       triggered twice in the internal SQLException factory
       method. Also, if the exception interceptor returned an
       exception with the cause already initialized, the same
       factory method would fail to initialize the cause again,
       and the real cause for the exception remained uncaptured.
       (Bug #23743956, Bug #82115)

     * Continuing to use a Fabric connection after one of the
       slaves was removed might result in a
       ConcurrentModificationException. This happened because
       the list of slave hosts managed by Connector/J was being
       traversed and modified at the same time as the
       replication topology was changed. This patch fixes the
       issue by having Connector/J use a slave host list that is
       safe to be modified. (Bug #23738636)

     * When the connection property useCursorFetch was "true"
       and updatable result sets were used, executeQuery()
       failed for JSON data with an SQLException: Unknown type.
       It was because the data decoding routine for updatable
       JSON data was missing from Connector/J, and it has now
       been implemented. (Bug #23197238)

     * The FabricMySQLConnectionProxy method nativeSQL() always
       returned null. The method is now properly implemented.
       (Bug #23103408, Bug #81072)

     * In a Fabric setup,
       getMetaData().supportsMixedCaseIdentifiers() always
       returned "true," even if lower_case_table_names was set
       to "1" on the servers. This was because
       FabricMySQLConnectionProxy.lowerCaseTableNames() was not
       implemented properly. With this fix, the function now
       returns the proper value for the current active
       connection, so that
       getMetaData().supportsMixedCaseIdentifiers() also returns
       the correct value.
       Users are reminded that in a Fabric setup,
       lower_case_table_names, as well as all other settings,
       should be configured the same way for all servers in the
       Fabric server group. (Bug #23103406, Bug #81056)

     * A memory leakage occurred when the connection properties
       cachePrepStmts and useServerPrepStmts were both set to be
       true and server-side prepared statements were set as
       non-poolable, which resulted in the prepared statement
       being not closable by the client, and the number of
       prepared statements then kept on increasing.
       When the memory leakage described above occurred, it did
       not make Connector/J fail, as Connector/J switched to
       using client-side prepared statements when the maximum
       number of prepared statements was reached. However, when
       rewriteBatchedStatements was also set to true, the switch
       to client-side prepared statements did not occur, and
       Connector/J threw the MySQLSyntaxErrorException ("Can't
       create more than max_prepared_stmt_count statements")
       when the client wanted to create more prepared statements
       than allowed.
       This fix corrected the way prepared statements are
       handled in order to avoid both of the problems described
       above. (Bug #22954007, Bug #80615)

     * ResultSet.getString() sometimes returned garbled data for
       columns of the JSON data type. This was because JSON data
       was binary encoded by MySQL using the utf8mb4 character
       set, but decoded by Connector/J using the ISO-8859-1
       character set. This patch fixes the decoding for JSON
       data. Thanks to Dong Song Ling for contributing to the
       fix. (Bug #22891845, Bug #80631)

     * When working with MySQL Fabric, Connector/J hung when the
       Fabric node was down. With this fix, when the Fabric node
       is down, all active connections continue to work based on
       the cached information on the server group and the
       sharding setup, although no new connections can be
       established. (Bug #22750465)

     * When Connector/J retrieved the value of a BIT column as
       an integer using, for example, getInt() or getLong(), it
       returned a wrong value if the BIT value happened to be
       equivalent to the decimal value of some ASCII digit. This
       was because Connector/J attempted to parse the value as a
       string-encoded integer; thus, for example, the BIT value
       "110001" (decimal 49 in binary) was interpreted as the
       string "1" (whose ASCII value in decimal is 49), so the
       numerical value of "1" was returned. This fix corrected
       the parsing behavior of Connector/J on BIT values, so
       they are always interpreted as binary coded. (Bug
       #21938551, Bug #78685)

     * Connector/J could not parse the host name and port number
       from connection URLS staring with the word "address,"
       resulting in an UnknownHostException. This was because
       the URLs were being interpreted incorrectly as using the
       alternate URL format, which starts with "address=...."
       This patch fixes the parser for proper interpretation of
       the URL in the situation. (Bug #21389278, Bug #77649)

     * When the connection property useLocalTransactionState was
       set to "true" and autocommit was set to "false" on the
       server, if any exception was thrown, any further calls
       for rollback() or commit() were not sent to the server.
       It was because when there was an exception while
       executing a query, Connector/J lost the information
       regarding the server's transaction state. This patch
       fixes this issue by preserving the previous transaction
       state for the current connection when any exception is
       thrown. (Bug #20212882, Bug #75209)

     * An invalid connection URL caused Connector/J to throw a
       NullPointerException. With this fix, an SQLException is
       thrown instead in the situation. (Bug #18759269, Bug
       #72632)

     * When a very large amount of compressed data is
       transmitted from the server to the client and under very
       special circumstances, a CommunicationsException might
       occur. It happened when a single compressed packet from
       the server was not big enough to provide an entire
       uncompressed packet to the client side. With this fix,
       Connector/J reads as many compressed packets as necessary
       to fill the size of the uncompressed packet that was
       being requested. (Bug #11756431, Bug #48346)


Documentation
--------------
Online: http://dev.mysql.com/doc/connector-j/5.1/en/

Reporting Bugs
---------------
We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

Enjoy and thanks for the support!

On behalf of the MySQL Release Team
-Sreedhar S 

MySQL for Visual Studio 2.0.4 m3 release has been released (no replies)

$
0
0
Dear MySQL users,

MySQL for Visual Studio 2.0.4 m3 is the third development release of
the MySQL for Visual Studio 2.0 series.  This series adds support for
the new X DevAPI. The X DevAPI enables application developers to write
code that combines the strengths of the relational and document models
using a modern, NoSQL-like syntax that does not assume previous
experience writing traditional SQL.

To learn more about how to write applications using the X DevAPI, see
http://dev.mysql.com/doc/x-devapi-userguide/en/. For more information
about how the X DevAPI is implemented in MySQL for Visual Studio, and
its usage, see
http://dev.mysql.com/doc/refman/5.7/en/mysql-shell-visual-studio.html.

Please note that the X DevAPI requires at least MySQL Server version
5.7.12 or higher with the X Plugin enabled. For general documentation
about how to get started using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

You can download MySQL Installer from our official Downloads page at
http://dev.mysql.com/downloads/installer/.

MySQL for Visual Studio can also be downloaded by using the product
standalone installer found at
http://dev.mysql.com/downloads/windows/visualstudio/.

Changes in MySQL for Visual Studio 2.0.4 (2016-10-06, Milestone 3)

     * Functionality Added or Changed

     * Bugs Fixed

   Functionality Added or Changed

     * Enhanced the logic that migrates stored MySQL connections
       to the MySQL Workbench connections.xml file. In previous
       versions, the migration was offered and if not done at that
       moment, the dialog to migrate was shown every time the MySQL
       Connections Manager dialog was shown, but there was no way to
       choose to remain storing MySQL connections in the MySQL for
       Visual Studio configuration folder instead of merging them with
       MySQL Workbench.  Now, the connection migration dialog offers a
       way to postpone the migration by either 1 hour, 1 day, 1 week, 1
       month or indefinitely. If the migration is postponed, the dialog
       is shown again after that time elapses. If it is postponed
       indefinitely, then an option is added to the MySQL Connections
       Manager dialog that permits the connection migration to be done
       manually, as long as MySQL Workbench is installed.

     * When the MySQL Script Editor window is opened (either by
       selecting SQL, JavaScript, or Python from the New MySQL Script
       menu), the Results area was visible showing a big gray area in
       the editor, despite having nothing to display. Now, this area is
       hidden until results are ready to display, which happens after
       clicking Run.

     * The SQL syntax parser was updated to handle the optimizer
       hints that were introduced in MySQL 5.7.7.

     * The SQL editor was updated to check the syntax of a
       script before sending the statements to the server. If syntax
       errors are present, the Visual Studio Output pane displays the
       errors and the script is not executed.

     * A drop-down list of connections was added in the MySQL
       editor toolbar to enable fast switching among connections while
       editing SQL, JavaScript, and Python scripts. The list, located
       next to the Connect to MySQL button, shows all Server Explorer
       connections for the MySQL data provider with compatible protocol
       support.  Note JavaScript and Python editors show only the
       connections that support the X Protocol.

   Bugs Fixed

     * MySQL Workbench was unable to open connections added from
       the MySQL Connection Manager, as executing them would emit the
       following error: "Cannot connect to Database Server". This is
       because an invalid "socket=." value was added to the connection
       definition. To solve this, MySQL for Visual Studio was updated to
       use the latest MySQL.Utility version, which fixes code in the
       MySQL Workbench class to only write the socket value into the XML
       nodes if the connection is of type Sockets or Pipe.  (Bug
       #24666952)

     * After connections were added to the Server Explorer
       through the MySQL Connections Manager, clicking Refresh on the
       Server Explorer toolbar caused the refresh operation to hang, and
       nothing else could be done within the Server Explorer pane.
       Clicking Cancel Refresh was required to fix this. (Bug #24666931)

     * SHOW statements executed from the SQL editor failed to
       display the expected output. (Bug #24622881)

     * Queries executed from the SQL editor against nonunique
       data in NoSQL tables emitted error messages and failed to return
       result sets. (Bug #24462707)

     * The main XML element in %APPDATA%\Oracle\MySQL For Visual
       Studio\settings.config was renamed to MySQLforVisualStudio from
       MySQLForExcel. Indentations were added to improve the overall
       readability of configuration settings. (Bug #24291264)

     * JavaScript and Python editors permitted connections to
       versions of MySQL that did not support the X Protocol if those
       connections were unnamed or temporary, but the scripts did not
       work properly. This fix adds validation to ensure that all
       connections related to JavaScript and Python scripts are to
       servers with the X Plugin enabled.  (Bug #24290570)

     * Selecting the New MySQL Script context-menu option by
       right-clicking a Server Explorer connection in Visual Studio
       emitted an error if the connection was first closed and then
       opened. (Bug #24064816)

     * Visual Studio was unable to open a design window for any
       selected table in a MySQL database. (Bug #23642010)

     * Opening a new MySQL script file from the Visual Studio
       File > New menu displayed the following error: "Object reference
       not set to an instance of an object". (Bug #23619311)

     * Processing a Result object from the X Protocol
       substituted an error or information message in place of some
       collection output. (Bug #22983803)

     * Advanced, Connect, and Cancel buttons were missing from
       the Connect to MySQL dialog for connections made from the script
       editor window. (Bug #22114315)

     * Dragging and dropping a table from the Server Explorer in
       Visual Studio to a project would fail with the following error:
       "Some updating commands could not be generated automatically. The
       database returned the following error: You have a usable
       connection already". After clicking OK, Visual Studio would emit
       the following error "Mouse drag operation failed. Could not
       retrieve schema information from table or view". To solve this
       issue, MySql.Data was updated to version 6.9.9.

     * From the Query Designer, selecting Verify SQL Syntax
       would always display "Not supported by the provider" instead of
       verifying the SQL syntax.

     * The Python code editor displayed session options for
       JavaScript instead of options for the Python language.

     * In some cases, selecting Retrieve Data for a table with a
       valid connection failed to populate the table with data.


On behalf of the Oracle MySQL Release Engineering Team,
Nawaz Nazeer Ahamed

MySQL Connector/Python 2.1.4 GA has been released (no replies)

$
0
0

Dear MySQL users,

MySQL Connector/Python 2.1.4 GA is the second GA version of 2.1 release
series of the pure Python database driver for MySQL. It can be used for
production environments.

MySQL Connector/Python version 2.1.4 GA is compatible with MySQL Server
versions 5.5 and greater. Python 2.6 and greater as well as Python 3.3
and greater are supported. Python 2.4, 2.5 and 3.1, 3.2 are not
supported.

MySQL Connector/Python 2.1.4 is available for download from:

http://dev.mysql.com/downloads/connector/python/#downloads

The ChangeLog file included in the distribution contains a brief summary
of changes in MySQL Connector/Python 2.1.4. For a more complete list of
changes, see below or online at:

http://dev.mysql.com/doc/relnotes/connector-python/en/

Enjoy!


Changes in MySQL Connector/Python 2.1.4 (2016-10-06)

     * Security Notes

     * Bugs Fixed

   Security Notes
   
     * The linked OpenSSL library for Connector/Python
       Commercial has been updated to version 1.0.1q. Issues fixed in
       the new OpenSSL version are described at
       http://www.openssl.org/news/vulnerabilities.html.  This change
       does not affect Oracle-produced MySQL Community builds of
       Connector/Python, which use the yaSSL library instead. The change
       also does not affect connections made using any pure-Python
       implementation of Connector/Python, for which the version of
       OpenSSL used is whatever is installed on the system.

   Bugs Fixed

     * Connector/Python failed to establish connections using
       the cleartext client-side authentication plugin for accounts
       using the PAM server-side authentication plugin.  Thanks to
       Daniël van Eeden for the patch. (Bug #22873551, Bug #80609)

     * A potential SQL injection vector was eliminated. (Bug #22529828)

     * Connections made using the C Extension failed when the
       ssl_ca parameter was given without ssl_cert and ssl_key.  (Bug
       #21879914, Bug #79835, Bug #22494320)

     * For connections made with consume_results=True,
       consume_results was reset to False after callproc() execution
       failure. (Bug #21879859) References: This issue is a regression
       of: Bug #21492815.

     * In connections for which compress=True, LOAD DATA LOCAL
       INFILE statements produced "Packets out of error" errors.  (Bug
       #21449996)

     * Attempts to insert Python ByteArray data into binary
       table columns failed. (Bug #77822, Bug #21498719)

Documentation
--------------

Online:http://dev.mysql.com/doc/connector-python/en/index.html
The source distribution includes the manual in various formats under
the docs/ folder.

Reporting Bugs
---------------

We welcome and appreciate your feedback and bug reports:
http://bugs.mysql.com/

On behalf of the MySQL/Oracle RE Team,
Balasubramanian Kandasamy

MySQL Connector/Node.js 1.0.4 m3 Development Release has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Connector/Node.js is a new Node.js driver for use with the X
DevAPI. This release, v1.0.4 M3, is the third development release of the
MySQL Connector/Node.js 1.0 series.

The X DevAPI enables application developers to write code that combines
the strengths of the relational and document models using a modern,
NoSQL-like syntax that does not assume previous experience writing
traditional SQL.

To learn more about how to write applications using the X DevAPI, see
http://dev.mysql.com/doc/x-devapi-userguide/en/. For more information
about how the X DevAPI is implemented in MySQL Connector/Node.js, and
its usage, see http://dev.mysql.com/doc/dev/connector-nodejs/.

Please note that the X DevAPI requires at least MySQL Server version
5.7.12 or higher with the X Plugin enabled. For general documentation
about how to get started using MySQL as a document store, see
http://dev.mysql.com/doc/refman/5.7/en/document-store.html.

Changes in MySQL Connector/Node.js 1.0.4 (2016-10-10 Milestone 3)

  Functionality Added or Changed

    * Changed package name from 'mysqlx' to '@mysql/xdevapi'.

    * The connector can be installed into your project using
      Node.js's npm tool. Install from the download file by
      issuing:
        npm install mysql-connector-nodejs-1.0.4.tar.gz

      Or install directly from the npm repository by issuing:
        npm install @mysql/xdevapi

      For more information on npm see http://npmjs.com.

  Bugs Fixed

    * The Connector/Node.JS version number can now be retrieved
      from the API. For example,
      "ver=require('@mysql/mysqlx/package').version;". (Bug
      #24571220)

    * Added the Schema.getCollectionAsTable() method.

    * Added the Collection.count() and Table.count() methods.

    * Added support for the Common URI format.

    * Added View DDL support.

Enjoy and thanks for the support!

On Behalf of the MySQL/ORACLE RE Team
Hery Ramilison 

MySQL Enterprise Monitor 3.3.1 has been released (no replies)

$
0
0
We are pleased to announce that MySQL Enterprise Monitor 3.3.1 is now
available for download on the My Oracle Support (MOS) web site. It
will also be available for download via the Oracle Software Delivery
Cloud in a week or so. MySQL Enterprise Monitor is the best-in-class
tool for monitoring and management of your MySQL assets and is
included with your MySQL Enterprise Edition and MySQL Cluster
Carrier Grade Edition subscriptions.

You’ll find information about what’s new here:

http://dev.mysql.com/doc/relnotes/mysql-monitor/3.3/en/news-3-3-1.html
(also included at the end of this note for convenience)

Highlights of MySQL Enterprise Monitor 3.3 include:

* 3.3 introduces a new Enterprise Backup Dashboard that brings deeper
integration with MySQL Enterprise Backup. View current backup
status, history and archive details by group or instance using MySQL
Enterprise Backup Advisor collections from existing
mysql.backup_history and mysql.backup_progress table data.

* Backup Group view shows a summary of backup events, details on the
last successful full and Incremental backup types, any failed
backups and an indication of whether the group has full backup
coverage. Coverage calculations include appropriate checks on
replication filters across your replication topologies.

* Backup view of a single MySQL Instance shows a summary of backup
events, details on the last successful full and Incremental backup
types and any failed backups. Sparkline histories graph the total
backup time per backup and the total time the MySQL Instance had a
global read-lock during the backup process.

* Select the Backup History tab to see all known backups in the event
you need to perform a restore operation. Each row in the backup
history table shows the backup type, status, completion timestamp
and the log coordinates when the consistent snapshot was taken.

* Drill down to an individual Backup archive to view all its metadata
and associated progress logs.

* The 3.3 User Interface now makes zooming in on common problems a
single click on a named filter. Use these shortcuts to quickly
select the search criteria of most interest on the MySQL Instances,
Events, Query Analyzer and All Timeseries Graphs pages. Examples of
pre-defined filters include all MySQL Instances using an EOL
version, old MySQL Enterprise Monitor Agent installations, currently
open Emergency events, and all statements that cause a full table
scan, temporary tables on disk or SQL Errors. In addition to pre-
defined filters, you can assign a name to your own favorite search
conditions for reuse across sessions.

Download

You will find binaries for the new release on My Oracle Support:

https://support.oracle.com

Choose the "Patches & Updates" tab, and then choose the "Product or
Family (Advanced Search)" side tab in the "Patch Search" portlet.

You will also find the binaries on the Oracle Software Delivery Cloud:

http://edelivery.oracle.com/

Type "MySQL Enterprise Monitor 3.3.1" in the search box, or enter a
license name to find Enterprise Monitor along with other MySQL
products: "MySQL Enterprise Edition" or "MySQL Cluster Carrier
Edition". Then select your platform.

If you are not a MySQL Enterprise customer and want to try the Monitor
and Query Analyzer using our 30-day free customer trial, go to
http://www.mysql.com/trials, or contact Sales at
http://www.mysql.com/about/contact.

Please open a bug or a ticket on My Oracle Support to report problems,
request features, or give us general feedback about how this release
meets your needs.

Useful URLs

* My Oracle Support - http://support.oracle.com/
* What's New in 3.3 - https://dev.mysql.com/doc/mysql-monitor/3.3/en/mem-comparison-3-2.html
* Change log - http://dev.mysql.com/doc/relnotes/mysql-monitor/3.3/en/
* Installation documentation - http://dev.mysql.com/doc/mysql-monitor/3.3/en/mem-installing.html
* Complete documentation - http://dev.mysql.com/doc/mysql-monitor/3.3/en/
* Product information - http://www.mysql.com/products/enterprise/monitor.html
* Download - http://support.oracle.com/ (available now) or http://edelivery.oracle.com/

Thanks and Happy Monitoring!

- The MySQL Enterprise Tools Development Team

==========

Changes in MySQL Enterprise Monitor 3.3.1

Functionality Added or Changed

* An Agent Memory Usage Details graph was added in this release. On
the All Timeseries Graphs page, select an agent to display this
graph.

* The OpenSSL libraries used by the MySQL Enterprise Monitor
installers and MySQL Enterprise Monitor Aggregator have been
upgraded to 1.0.1u.

* The MySQL database, bundled with the MySQL Enterprise Service
Manager, has been upgraded to MySQL 5.7.16.

Bugs Fixed

* The Processes report did not properly report data from MySQL 5.7
instances. (Bug #24642042)

* The Event Handler Asset column did not display any assets for the
eleventh handler created. That is, the Asset column correctly
displayed assets for the first 10 event handlers, but did not for
any other event handler. (Bug #23543149)

* Under certain circumstances, when monitoring MySQL 5.7, warnings
were generated in Query Analyzer due to a conflict between the
default mysql_mode and the mysql_mode set by MySQL Enterprise
Monitor. (Bug #23033046)

* The Group Settings tab was displayed on the Add MySQL Instance
dialog, but was inaccessible.

This issue occurred in Chrome, only.

* Under certain circumstances, if a system filter was selected, it was
displayed with a -clone* suffix.

MySQL Community Server 5.5.53 has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Server 5.5.53 is a new version of the 5.5 production release of
the world's most popular open source database. MySQL 5.5.53 is
recommended for use on production systems.

MySQL 5.5 includes several high-impact enhancements to improve the
performance and scalability of the MySQL Database, taking advantage of
the latest multi-CPU and multi-core hardware and operating systems. In
addition, with release 5.5, InnoDB is now the default storage engine for
the MySQL Database, delivering ACID transactions, referential integrity
and crash recovery by default.

MySQL 5.5 also provides a number of additional enhancements including:

  - Significantly improved performance on Windows, with various Windows
    specific features and improvements
  - Higher availability, with new semi-synchronous replication and
    Replication Heartbeat
  - Improved usability, with Improved index and table partitioning,
    SIGNAL/RESIGNAL support and enhanced diagnostics, including a new
    Performance Schema monitoring capability.

For a more complete look at what's new in MySQL 5.5, please see the
following resources:

MySQL 5.5 is GA, Interview with Tomas Ulin:

http://dev.mysql.com/tech-resources/interviews/thomas-ulin-mysql-55.html

Documentation:

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

If you are running a MySQL production level system, we would like to
direct your attention to MySQL Enterprise Edition, which includes the
most comprehensive set of MySQL production, backup, monitoring,
modeling, development, and administration tools so businesses can
achieve the highest levels of MySQL performance, security and uptime.

http://mysql.com/products/enterprise/

For information on installing MySQL 5.5.53 on new servers, please see
the MySQL installation documentation at

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

For upgrading from previous MySQL releases, please see the important
upgrade considerations at:

http://dev.mysql.com/doc/refman/5.5/en/upgrading.html

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

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

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

http://dev.mysql.com/doc/relnotes/mysql/5.5/en/news-5-5-53.html

Enjoy!


Changes in MySQL 5.5.53 (2016-10-12)


     * Packaging Notes

     * Security Notes

     * Functionality Added or Changed

   Packaging Notes

     * RPM packages now create the /var/lib/mysql-files
       directory, which is now the default value of the secure_file_priv
       system variable that specifies a directory for import and export
       operations. (Bug #24709892, Bug #24761774)

   Security Notes

     * Incompatible Change: The secure_file_priv system variable
       is used to limit the effect of data import and export operations.
       The following changes have been made to how the server handles
       this variable:

          + secure_file_priv can be set to NULL to disable all import
          and export operations.

          + The server checks the value of secure_file_priv at startup
          and writes a warning to the error log if the value is
          insecure. A non-NULL value is considered insecure if it is
          empty, or the value is the data directory or a subdirectory of
          it, or a directory that is accessible by all users. If
          secure_file_priv is set to a nonexistent path, the server
          writes an error message to the error log and exits.

          + Previously, the secure_file_priv system variable was empty
          by default. Now the default value is platform specific and
          depends on the value of the INSTALL_LAYOUT CMake option, as
          shown in the following table.

 INSTALL_LAYOUT Value          Default secure_file_priv Value
 STANDALONE, WIN      NULL
 DEB, RPM, SLES, SVR4 /var/lib/mysql-files
 Otherwise            mysql-files under the CMAKE_INSTALL_PREFIX value

          + To specify the default secure_file_priv value explicitly if
          you are building from source, use the new
          INSTALL_SECURE_FILE_PRIVDIR CMake option. To specify a
          directory for the embedded server, set the new
          INSTALL_SECURE_FILE_PRIV_EMBEDDEDDIR option. Its default value
          is NULL.  (Bug #24679907, Bug #24695274, Bug #24707666)

   Functionality Added or Changed

     * yaSSL was upgraded to version 2.4.2. This upgrade
       corrects issues with: Potential AES side channel leaks; DSA
       padding for unusual sizes; the SSL_CTX_load_verify_locations()
       OpenSSL compatibility function failing to handle long path
       directory names.  (Bug #24512715, Bug #24740291)

On behalf of Oracle MySQL Release Engineering Team,
Nawaz Nazeer Ahamed 

MySQL Community Server 5.6.34 has been released (no replies)

$
0
0
Dear MySQL users,

MySQL Server 5.6.34, a new version of the popular Open Source
Database Management System, has been released. MySQL 5.6.34 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.34 on new servers or upgrading
to MySQL 5.6.34 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 MySQL 5.6 since
the release of MySQL 5.6.33. It may also be viewed
online at

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

Enjoy!

==============================================================================
Changes in MySQL 5.6.34 (2016-10-12)


     * Packaging Notes

     * Security Notes

     * Functionality Added or Changed

   Packaging Notes

     * RPM and Debian packages now create the
       /var/lib/mysql-files directory, which is now the default
       value of the secure_file_priv system variable that
       specifies a directory for import and export operations.
       (Bug #24709892, Bug #24761774)

   Security Notes

     * Incompatible Change: The secure_file_priv system variable
       is used to limit the effect of data import and export
       operations. The following changes have been made to how
       the server handles this variable:

          + secure_file_priv can be set to NULL to disable all
            import and export operations.

          + The server checks the value of secure_file_priv at
            startup and writes a warning to the error log if the
            value is insecure. A non-NULL value is considered
            insecure if it is empty, or the value is the data
            directory or a subdirectory of it, or a directory
            that is accessible by all users. If secure_file_priv
            is set to a nonexistent path, the server writes an
            error message to the error log and exits.

          + Previously, the secure_file_priv system variable was
            empty by default. Now the default value is platform
            specific and depends on the value of the
            INSTALL_LAYOUT CMake option, as shown in the
            following table.

 INSTALL_LAYOUT Value    Default secure_file_priv Value
 --------------------    ------------------------------------------------
 STANDALONE, WIN         NULL
 DEB, RPM, SLES, SVR4    /var/lib/mysql-files
 Otherwise               mysql-files under the CMAKE_INSTALL_PREFIX value

          + To specify the default secure_file_priv value
            explicitly if you are building from source, use the
            new INSTALL_SECURE_FILE_PRIVDIR CMake option. To
            specify a directory for the embedded server, set the
            new INSTALL_SECURE_FILE_PRIV_EMBEDDEDDIR option. Its
            default value is NULL.
       (Bug #24679907, Bug #24695274, Bug #24707666)

   Functionality Added or Changed

     * yaSSL was upgraded to version 2.4.2. This upgrade
       corrects issues with: Potential AES side channel leaks;
       DSA padding for unusual sizes; the
       SSL_CTX_load_verify_locations() OpenSSL compatibility
       function failing to handle long path directory names.
       (Bug #24512715, Bug #24740291)

On Behalf of MySQL Release Engineering Team
Prashant Tekriwal
Viewing all 1041 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>