MySQL NDB Cluster 7.5.3 is a new release of MySQL NDB Cluster 7.5,
based on MySQL Server 5.7 and including features in version 7.5 of
NDB storage engine, as well as
fixing recently discovered bugs in previous NDB Cluster releases.
Obtaining MySQL NDB Cluster 7.5. MySQL NDB Cluster 7.5 source code and binaries can be obtained from https://dev.mysql.com/downloads/cluster/.
For an overview of changes made in MySQL NDB Cluster 7.5, see What is New in NDB Cluster 7.5.
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.13 (see Changes in MySQL 5.7.13 (2016-06-02, General Availability)).
Important Change: It is now possible to set
READ_BACKUPfor an existing table online using an SQL statement such as
ALTER TABLE ... ALGORITHM=INPLACE, COMMENT="NDB_TABLE=READ_BACKUP=1". See Setting NDB Comment Options, for further information about the
READ_BACKUPoption. (Bug #80858, Bug #23001617)
References: See also: Bug #18435416.
Added three new tables to the
ndbinfoinformation database to provide running information about locks and lock attempts in an active MySQL NDB Cluster. These tables, with brief descriptions, are listed here:
cluster_locks: Current lock requests which are waiting for or holding locks; this information can be useful when investigating stalls and deadlocks. Analogous to
locks_per_fragment: Counts of lock claim requests, and their outcomes per fragment, as well as total time spent waiting for locks successfully and unsuccessfully. Analogous to
server_locks: Subset of cluster transactions—those running on the local mysqld, showing a connection ID per transaction. Analogous to
For more information, see ndbinfo: The NDB Cluster Information Database. (WL #7656)
NDBstorage engine now supports generated columns (see CREATE TABLE and Generated Columns) as well as indexes on stored generated columns.
Indexes on virtual generated columns of
NDBtables are not supported.
ALTER TABLEstatements that add stored generated columns to
NDBtables cannot be performed online. (WL #8188, WL #9048)
NDB Cluster APIs: The scan lock takeover issued by
NdbScanOperation::lockCurrentTuple()did not set the operation type for the takeover operation. (Bug #23314028)
cpustat_20sectables did not provide any history information. (Bug #23520271)
During shutdown, the mysqld process could sometimes hang after logging
NDB Util: Stop...
NDB Util: Wakeup. (Bug #23343739)
References: See also: Bug #21098142.
During expansion or reduction of a hash table, allocating a new overflow page in the
DBACCkernel block caused the data node to fail when it was out of index memory. This could sometimes occur after a large table had increased or decreased very rapidly in size. (Bug #23304519)
References: This issue is a regression of: Bug #13436216.
When tracking time elapsed from sending a
SCAN_FRAGREQsignal to receiving a corresponding
SCAN_FRAGCONF, the assumption was made in the
DBTCkernel block that a
SCAN_FRAGCONFcan occur only after sending a
SCAN_NEXTREQsignal, which is not always the case: It is actually possible that a local query handler can, immediately after sending a
SCAN_FRAGCONF, send an additional
SCAN_FRAGCONFsignal upon reporting that the scan is closed. This problem is fixed by ensuring that the timer value is initialized each time before use. (Bug #81907, Bug #23605817, Bug #23306695)
Table indexes were listed in the output of ndb_desc in a nondeterministic order that could vary between platforms. Now these indexes are ordered by ID in the output. (Bug #81763, Bug #23547742)
Following a restart of the cluster, the first attempt to read from any of the
cpustat_20sectables generated a warning to the effect that columns were missing from the table. Subsequently, the
spin_timecolumns were found to be missing from each of these tables. (Bug #81681, Bug #23514557)
References: See also: Bug #23305078.
ThreadConfigparameter value with a trailing comma led to an assertion. (Bug #81588, Bug #23344374)