MySQL Forums
Forum List  »  Announcements

MySQL Cluster 7.5.0 has been released (part 1/3)
Posted by: Balasubramanian Kandasamy
Date: February 05, 2016 02:07AM

Dear MySQL Users,

MySQL Cluster is the distributed, shared-nothing variant of MySQL.
This storage engine provides:

  - In-Memory storage - Real-time performance 
  - Transparent Auto-Sharding - Read & write scalability
  - Active-Active/Multi-Master geographic replication
  - 99.999% High Availability with no single point of failure
    and on-line maintenance
  - NoSQL and SQL APIs (including C++, Java, http, Memcached
    and JavaScript/Node.js)

[Due to size limitations on forum/email, this announcement had to be 
split into three parts. This is part 1.] 

MySQL Cluster 7.5.0 DMR can be downloaded from the "Development
Releases" tab at

  http://www.mysql.com/downloads/cluster/

where you will also find Quick Start guides to help you get your
first MySQL Cluster database up and running.

The release notes are available from

  http://dev.mysql.com/doc/relnotes/mysql-cluster/7.5/en/index.html

MySQL Cluster enables users to meet the database challenges of next
generation web, cloud, and communications services with uncompromising
scalability, uptime and agility.

As with any other pre-production release, caution should be taken when
installing on production level systems or systems with critical data.
More information on the Development Milestone Release process can be
found at

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

More details can be found at

  http://www.mysql.com/products/cluster/

Enjoy !

Changes in MySQL Cluster NDB 7.5.0 (5.7.10-ndb-7.5.0) (2016-02-05,
Developer Milestone)

   MySQL Cluster NDB 7.5.0 is a new release of MySQL Cluster 7.5, based
   on MySQL Server 5.7 and including features in version 7.5 of the NDB
   (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster.html) storage
   engine, as well as fixing recently discovered bugs in previous MySQL
   Cluster releases.

   Obtaining MySQL Cluster NDB 7.5.  MySQL Cluster NDB 7.5 source code
   and binaries can be obtained from
   http://dev.mysql.com/downloads/cluster/.

   This release also incorporates all bugfixes and changes made in
   previous MySQL Cluster releases, as well as all bugfixes and feature
   changes which were added in mainline MySQL 5.7 through MySQL 5.7.10
   (see Changes in MySQL 5.7.10 (2015-12-07)
   (http://dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-10.html)).

     * Functionality Added or Changed

     * Bugs Fixed

   Functionality Added or Changed

     * Important Change: Previously, the ndbinfo
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndbinfo.html)
       information database included lookup tables that used
       the MyISAM
       (http://dev.mysql.com/doc/refman/5.6/en/myisam-storage-engine.html)
       storage engine. This dependency on MyISAM has now been
       removed. (Bug #20075747)

     * Important Change: Previously, the NDB scheduler always
       optimized for speed against throughput in a predetermined manner
       (this was hard coded); this balance can now be set using the
       SchedulerResponsiveness
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndb
       d-definition.html#ndbparam-ndbd-schedulerresponsiveness) data
       node configuration parameter. This parameter accepts an integer
       in the range of 0-10 inclusive, with 5 as the default. Higher
       values provide better response times relative to throughput.
       Lower values provide increased throughput, but impose longer
       response times. (Bug #78531, Bug #21889312)

     * Important Change: A number of MySQL Cluster data node
       configuration parameters were deprecated in earlier versions of
       MySQL Cluster, and have been removed with this release. These
       parameters include Id, NoOfDiskPagesToDiskDuringRestartTUP,
       NoOfDiskPagesToDiskDuringRestartACC,
       NoOfDiskPagesToDiskAfterRestartACC,
       NoOfDiskPagesToDiskAfterRestartTUP, ReservedSendBufferMemory,
       MaxNoOfIndexes, and Discless (use Diskless instead), as well as
       DiskCheckpointSpeed and DiskCheckpointSpeedInRestart. The archaic
       and unused ByteOrder computer configuration parameter has also
       been removed. These parameters are no longer supported; most of
       them already did not have (or no longer had) any effect. Trying
       to use any of these parameters in a MySQL Cluster configuration
       file now results in an error.  For more information, see MySQL
       Cluster Development History
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-dev
       elopment.html). (Bug #77404, Bug #21280428)

     * Important Change: The ExecuteOnComputer configuration
       parameter for management, data, and API nodes is now deprecated,
       and is subject to removal in a future MySQL Cluster release. For
       all types of MySQL Cluster nodes, you should now use the HostName
       parameter exclusively for identifying hosts in the cluster
       configuration file.  This information is also now displayed in
       the output of ndb_config --configinfo
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-pro
       grams-ndb-config.html#option_ndb_config_configinfo) --xml
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-pro
       grams-ndb-config.html#option_ndb_config_xml). (Bug #53052, 
       Bug #11760628)

     * Important Change: The ndbinfo
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-ndb
       info.html) database can now provide default and current
       information about MySQL Cluster node configuration parameters as
       a result of the following changes:

         1. The config_params
         (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluste
         r-ndbinfo-config-params.html) table has been enhanced with
         additional columns providing information about each
         configuration parameter, including its type, default, and
         maximum and minimum values (where applicable).

         2. A new config_values table has been added. A row in this
         table shows the current value of a parameter on a given node.
         You can obtain values of MySQL Cluster configuration parameters
         by name using a join on these two tables such as the one shown
         here: 
         SELECT  p.param_name AS Name,
         v.node_id AS Node,
         p.param_type AS Type,
         p.param_default AS 'Default',
         v.config_value AS Current
         FROM    config_params p
         JOIN    config_values v
         ON      p.param_number = v.config_param
         WHERE   p. param_name IN ('NodeId', 'HostName',
         'DataMemory', 'IndexMemory');

         
     * Deprecated MySQL Cluster node configuration parameters
       are now indicated as such by ndb_config --configinfo
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-pro
       grams-ndb-config.html#option_ndb_config_configinfo) --xml
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-pro
       grams-ndb-config.html#option_ndb_config_xml). For each parameter
       currently deprecated, the corresponding <param/> tag in the XML
       output now includes the attribute deprecated="true". (Bug
       #21127135)

     * Added the --ndb-cluster-connection-pool-nodeids option
       for mysqld, which can be used to specify a list of nodes by node
       ID for connection pooling. The number of node IDs in the list
       must equal the value set for --ndb-cluster-connection-pool
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-opt
       ions-variables.html#option_mysqld_ndb-cluster-connection-pool).
       (Bug #19521789)

     * Added the PROMPT command in the ndb_mgm client. This
       command has the syntax PROMPT string, which sets the client's
       prompt to string. Issuing the command without an argument causes
       the prompt to be reset to the default (ndb_mgm>). See Commands in
       the MySQL Cluster Management Client
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-mgm
       -client-commands.html), for more information. (Bug #18421338)

     * When the --database
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-pro
       grams-ndb-show-tables.html#option_ndb_show_tables_database)
       option has not been specified for ndb_show_tables, and no tables
       are found in the TEST_DB database, an appropriate warning message
       is now issued. (Bug #78379, Bug #11758430)

     * The NDB
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster.html)
       storage engine now uses the improved records-per-key interface
       for index statistics introduced for the optimizer in MySQL 5.7.
       Some improvements due to this change are listed here:

          + The optimizer can now choose better execution plans for
          queries on NDB tables in many cases where a less optimal join
          index or table join order would previously have been chosen.

          + EXPLAIN
          (http://dev.mysql.com/doc/refman/5.6/en/explain.html) now
          provides more accurate row estimates than previously.

          + Improved cardinality estimates can be obtained from SHOW
          INDEX (http://dev.mysql.com/doc/refman/5.6/en/show-index.html).

     * Cluster Replication: Normally, RESET SLAVE
       (http://dev.mysql.com/doc/refman/5.6/en/reset-slave.html) causes
       all entries to be deleted from the mysql.ndb_apply_status table.
       This release adds the ndb_clear_apply_status
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster-opt
       ions-variables.html#sysvar_ndb_clear_apply_status) system
       variable, which makes it possible to override this behavior. This
       variable is ON by default; setting it to OFF keeps RESET SLAVE
       from purging the ndb_apply_status table. (Bug #12630403)

  Bugs Fixed

     * Important Change: The options controlling behavior of NDB
       (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster.html)
       programs with regard to the number and timing of successive
       attempts to connect to a management server have changed as listed
       here:

          + The minimum value for the --connect-retry-delay
          (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluste
          r-program-options-common.html#option_ndb_common_conn
          ect-retry-delay) option common to all NDB programs has been
          changed from 0 to 1; this means that all NDB programs now wait
          at least 1 second between successive connection attempts, and
          it is no longer possible to set a waiting time equal to 0.

          + The semantics for the --connect-retries
          (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluste
          r-program-options-common.html#option_ndb_common_conn
          ect-retries) option have changed slightly, such that the value
          of this option now sets the number of times an NDB program
          tries to connect to a management server. Setting this option
          to 0 now causes the program to attempt the connection
          indefinitely, until it either succeeds or is terminated by
          other means (such as kill).

          + In addition, the default for the --connect-retries option
          for the ndb_mgm client has been changed from 3 to 12, so that
          the minimum, maximum, and default values for this option when
          used with ndb_mgm are now exactly the same as for all other
          NDB programs.  The ndb_mgm --try-reconnect
          (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluste
          r-programs-ndb-mgm.html#option_ndb_mgm_try-reconnect) option,
          although deprecated in MySQL Cluster NDB 7.4, continues to be
          supported as a synonym for ndb_mgm --connect-retries to
          provide backwards compatibility. The default value for
          --try-reconnect has also been changed from 3 to 12,
          respectively, so that this option continues to behave in the
          exactly in the same way as --connect-retries.  (Bug #22116937)

     * Important Change: In previous versions of MySQL Cluster,
       other DDL operations could not be part of ALTER ONLINE TABLE ...
       RENAME ...
       (http://dev.mysql.com/doc/refman/5.6/en/alter-table.html) . (This
       was disallowed by the fix for BUG#16021021.) MySQL Cluster NDB
       7.5 makes the following changes:

          + Support for the ONLINE and OFFLINE keywords, which was
          deprecated in MySQL Cluster NDB 7.3, is now removed, and use
          of these now causes a syntax error; the NDB
          (http://dev.mysql.com/doc/refman/5.6/en/mysql-cluster.html)
          storage engine now accepts only ALGORITHM = DEFAULT, ALGORITHM
          = COPY, and ALGORITHM = INPLACE to specify whether the ALTER
          operation is copying or in-place, just as in the standard
          MySQL Server.

          + NDB now allows ALTER TABLE ... ALGORITHM=COPYING RENAME.
          (Bug #20804269, Bug #76543, Bug #20479917, Bug #75797)

     * Important Change; Cluster API: Ndb::pollEvents()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-pollevents) is now compatible with the TE_EMPTY,
       TE_INCONSISTENT, and TE_OUT_OF_MEMORY event types introduced in
       MySQL Cluster NDB 7.4.3. For detailed information about this
       change, see the description of this method in the MySQL Cluster
       API Developer Guide.  (Bug #20646496)


     * Important Change; Cluster API: Added the method
       Ndb::isExpectingHigherQueuedEpochs()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-isexpectinghigherqueuedepochs) to the NDB API to detect
       when additional, newer event epochs were detected by
       pollEvents2()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-pollevents2).  The behavior of Ndb::pollEvents()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-pollevents) has also been modified such that it now
       returns NDB_FAILURE_GCI (equal to ~(Uint64) 0) when a cluster
       failure has been detected. (Bug #18753887)

     * Important Change; Cluster API: To release the memory used
       for dropped event operations, the event API formerly depended on
       pollEvents()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-pollevents) and nextEvent()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-nextevent) to consume all events possibly referring to
       the dropped events. This dependency between dropEventOperation()
       (http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
       ndb-ndb-dropeventoperation) and the first two methods required
       the entire event buffer to be read before attempting to release
       event operation memory (that is, until successive calls to
       pollEvents() and nextEvent() returned no more events).  A related
       cleanup issue arose following the reset of the event buffer (when
       all event operations had previously been dropped), and the event
       buffer was truncated by the first createEventOperation() call
       subsequent to the reset.  To fix these problems, the event buffer
       is now cleared when the last event operation is dropped, rather
       than waiting for a subsequent create operation which might or
       might not occur. Memory taken up by dropped event operations is
       also now released when the event queue has been cleared, which
       removes the hidden requirement for consuming all events to free
       up memory. In addition, event operation memory is now released as
       soon as all events referring to the operation have been consumed,
       rather than waiting for the entire event buffer to be consumed.
       (Bug #78145, Bug #21661297)

     * Important Change; Cluster API: The MGM API error-handling
       functions ndb_mgm_get_latest_error()
       (http://dev.mysql.com/doc/ndbapi/en/mgm-ndb-mgm-get-lates
       t-error.html), ndb_mgm_get_latest_error_msg()
       (http://dev.mysql.com/doc/ndbapi/en/mgm-ndb-mgm-get-lates
       t-error-msg.html), and ndb_mgm_get_latest_error_desc()
       (http://dev.mysql.com/doc/ndbapi/en/mgm-ndb-mgm-get-lates
       t-error-desc.html) each failed when used with a NULL
       handle. You should note that, although these functions
       are now null-safe, values returned in this case are
       arbitrary and not meaningful. (Bug #78130, Bug #21651706)

* To be continued in part 2....


Options: ReplyQuote


Subject
Views
Written By
Posted
MySQL Cluster 7.5.0 has been released (part 1/3)
2389
February 05, 2016 02:07AM


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

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