This is a bugfix release, fixing recently discovered bugs in the previous MySQL Cluster NDB 6.3 release.
This release 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.1 through MySQL 5.1.34 (see Changes in MySQL 5.1.34 (2009-04-02)).
Please refer to our bug database at http://bugs.mysql.com/ for more details about the individual bugs fixed in this version.
Two new server status variables
Ndb_pruned_scan_counthave been introduced.
Ndb_scan_countgives the number of scans executed since the cluster was last started.
Ndb_pruned_scan_countgives the number of scans for which
NDBCLUSTERwas able to use partition pruning. Together, these variables can be used to help determine in the MySQL server whether table scans are pruned by
NDBCLUSTER. (Bug #44153)
The ndb_config utility program can now provide an offline dump of all MySQL Cluster configuration parameters including information such as default and permitted values, brief description, and applicable section of the
config.inifile. A dump in text format is produced when running ndb_config with the new
--configinfooption, and in XML format when the options
--configinfo --xmlare used together. For more information and examples, see ndb_config — Extract MySQL Cluster Configuration Information.
Important Change; Partitioning: User-defined partitioning of an
NDBCLUSTERtable without any primary key sometimes failed, and could cause mysqld to crash.
Now, if you wish to create an
NDBCLUSTERtable with user-defined partitioning, the table must have an explicit primary key, and all columns listed in the partitioning expression must be part of the primary key. The hidden primary key used by the
NDBCLUSTERstorage engine is not sufficient for this purpose. However, if the list of columns is empty (that is, the table is defined using
PARTITION BY [LINEAR] KEY()), then no explicit primary key is required.
This change does not effect the partitioning of tables using any storage engine other than
NDBCLUSTER. (Bug #40709)
pkginstaller for MySQL Cluster on Solaris did not perform a complete installation due to an invalid directory reference in the postinstall script. (Bug #41998)
When ndb_config could not find the file referenced by the
--config-fileoption, it tried to read
my.cnfinstead, then failed with a misleading error message. (Bug #44846)
When a data node was down so long that its most recent local checkpoint depended on a global checkpoint that was no longer restorable, it was possible for it to be unable to use optimized node recovery when being restarted later. (Bug #44844)
References: See also: Bug #26913.
--xmldid not output any entries for the
HostNameparameter. In addition, the default listed for
MaxNoOfFileswas outside the permitted range of values. (Bug #44749)
References: See also: Bug #44685, Bug #44746.
The output of ndb_config
--xmldid not provide information about all sections of the configuration file. (Bug #44685)
References: See also: Bug #44746, Bug #44749.
Inspection of the code revealed that several assignment operators (
=) were used in place of comparison operators (
DbdihMain.cpp. (Bug #44567)
References: See also: Bug #44570.
It was possible for NDB API applications to insert corrupt data into the database, which could subquently lead to data node crashes. Now, stricter checking is enforced on input data for inserts and updates. (Bug #44132)
ndb_restore failed when trying to restore data on a big-endian machine from a backup file created on a little-endian machine. (Bug #44069)
ndberror.ccontained a C++-style comment, which caused builds to fail with some C compilers. (Bug #44036)
When trying to use a data node with an older version of the management server, the data node crashed on startup. (Bug #43699)
In some cases, data node restarts during a system restart could fail due to insufficient redo log space. (Bug #43156)
NDBCLUSTERdid not build correctly on Solaris 9 platforms. (Bug #39080)
References: See also: Bug #39036, Bug #39038.
The output of ndbd
--helpdid not provide clear information about the program's
--initial-startoptions. (Bug #28905)
It was theoretically possible for the value of a nonexistent column to be read as
NULL, rather than causing an error. (Bug #27843)
Disk Data: This fix supersedes and improves on an earlier fix made for this bug in MySQL 5.1.18. (Bug #24521)
Cluster Replication: A failure when setting up replication events could lead to subsequent data node failures. (Bug #44915)