MySQL NDB Cluster 7.6.11 is a new release of NDB 7.6, based on
MySQL Server 5.7 and including features in version 7.6 of the
NDB storage engine, as well as fixing
recently discovered bugs in previous NDB Cluster releases.
Obtaining NDB Cluster 7.6. NDB Cluster 7.6 source code and binaries can be obtained from https://dev.mysql.com/downloads/cluster/.
For an overview of changes made in NDB Cluster 7.6, see What is New in NDB Cluster 7.6.
This release also incorporates all bug fixes and changes made in previous NDB Cluster releases, as well as all bug fixes and feature changes which were added in mainline MySQL 5.7 through MySQL 5.7.27 (see Changes in MySQL 5.7.27 (2019-07-22, General Availability)).
Building with CMake3 is now supported by the compile-cluster script included in the
Important Change: The dependency of ndb_restore on the
NDBTlibrary, which is used for internal testing only, has been removed. This means that the program no longer prints
NDBT_ProgramExit: ...when terminating. Applications that depend upon this behavior should be updated to reflect this change when upgrading to this release.
NDBdid not handle binary logging of virtual generated columns of type
BLOBcorrectly. Now such columns are always regarded as having zero length.
A pushed join with
ORDER BYdid not always return the rows of the result in the specified order. This could occur when the optimizer used an ordered index to provide the ordering and the index used a column from the table that served as the root of the pushed join. (Bug #29860378)
requestInfofields for the long and short forms of the
LQHKEYREQsignal had different definitions; bits used for the key length in the short version were reused for flags in the long version, since the key length is implicit in the section length of the long version of the signal but it was possible for long
LQHKEYREQsignals to contain a keylength in these same bits, which could be misinterpreted by the receiving local query handler, potentially leading to errors. Checks have now been implemented to make sure that this no longer happens. (Bug #29820838)
SharedGlobalMemorywas incorrectly reported as lack of undo buffer memory, even though the cluster used no disk data tables. (Bug #29806771)
References: This issue is a regression of: Bug #92125, Bug #28537319.
TCKEYREQsignals did not always use the expected format when invoked from
TCINDXREQprocessing. (Bug #29772731)
Improved error message printed when the maximum offset for a
FIXEDcolumn is exceeded. (Bug #29714670)
Data nodes could fail due to an assert in the
DBTCblock under certain circumstances in resource-constrained environments. (Bug #29528188)
DBSPJblock called the internal function
lookup_resume()to schedule a previously enqueued operation, it used a correlation ID which could have been produced from its immediate ancestor in the execution order, and not its parent in the query tree as assumed. This could happen during execution of a
NDBchecks whether the execution ancestor is different from the query tree parent, and if not, performs a lookup of the query tree parent, and the parent's correlation ID is enqueued to be executed later. (Bug #29501263)
When a new master took over, sending a
MASTER_LCP_REQsignal and executing
MASTER_LCPCONFfrom participating nodes, it expected that they had not completed the current local checkpoint under the previous master, which need not be true. (Bug #29487340, Bug #29601546)
Added support which was missing in ndb_restore for conversions between the following sets of types:
Restore points in backups created with the
SNAPSHOTSTARToption (see Using The NDB Cluster Management Client to Create a Backup) were not always consistent with epoch boundaries. (Bug #27566346)
References: See also: Bug #27497461.