This is a bugfix release, fixing recently discovered bugs in the previous MySQL Cluster NDB 6.2 release.
Obtaining MySQL Cluster NDB 6.2. You can download the latest MySQL Cluster NDB 6.2 source code and binaries for supported platforms from http://dev.mysql.com/downloads/cluster/.
This Beta release incorporates all bugfixes and changes made in previous MySQL Cluster NDB 6.2 releases, as well as all bugfixes and feature changes which were added in mainline MySQL 5.1 through MySQL 5.1.22 (see Changes in MySQL 5.1.22 (2007-09-24, Release Candidate)).
Please refer to our bug database at http://bugs.mysql.com/ for more details about the individual bugs fixed in this version.
Functionality Added or Changed
A new cluster management server startup option
--bind-address makes it
possible to restrict management client connections to
ndb_mgmd to a single host and port. For more
information, see
ndb_mgmd — The MySQL Cluster Management Server Daemon.
It is now possible to control whether fixed-width or
variable-width storage is used for a given column of an
NDB table by means of the
COLUMN_FORMAT specifier as part of the
column's definition in a CREATE
TABLE or ALTER TABLE
statement.
It is also possible to control whether a given column of an
NDB table is stored in memory or on
disk, using the STORAGE specifier as part of
the column's definition in a CREATE
TABLE or ALTER TABLE
statement.
For permitted values and other information about
COLUMN_FORMAT and STORAGE,
see CREATE TABLE Syntax.
The following improvements have been made in the ndb_size.pl utility:
The script can now be used with multiple databases; lists of databases and tables can also be excluded from analysis.
Schema name information has been added to index table calculations.
The database name is now an optional parameter, the exclusion of which causes all databases to be examined.
If selecting from INFORMATION_SCHEMA
fails, the script now attempts to fall back to
SHOW TABLES.
A --real_table_name option has been added;
this designates a table to handle unique index size
calculations.
The report title has been amended to cover cases where more than one database is being analyzed.
Support for a --socket option was also added.
For more information, see ndb_size.pl — NDBCLUSTER Size Requirement Estimator. (Bug #28683, Bug #28253)
Online ADD COLUMN, ADD
INDEX, and DROP INDEX operations
can now be performed explicitly for
NDB tables—that is, without
copying or locking of the affected tables—using
ALTER ONLINE TABLE. Indexes can also be
created and dropped online using CREATE
INDEX and DROP INDEX,
respectively, using the ONLINE keyword.
You can force operations that would otherwise be performed
online to be done offline using the OFFLINE
keyword.
Renaming of tables and columns for
NDB and MyISAM
tables is performed in place without table copying.
For more information, see
ALTER TABLE Online Operations in MySQL Cluster,
CREATE INDEX Syntax, and
DROP INDEX Syntax.
Cluster Replication:
The protocol for handling global checkpoints has been changed.
It is now possible to control how often the GCI number is
updated, and how often global checkpoints are written to disk,
using the
TimeBetweenEpochs
configuration parameter. This improves the reliability and
performance of MySQL Cluster Replication.
GCPs handled using the new protocol are sometimes referred to as “micro-GCPs”.
Bugs Fixed
Reads on BLOB columns were not
locked when they needed to be to guarantee consistency.
(Bug #29102)
References: See also Bug #31482.
Using the --ndb-cluster-connection-pool option
for mysqld caused DDL statements to be
executed twice.
(Bug #30598)
A query using joins between several large tables and requiring
unique index lookups failed to complete, eventually returning
Unknown Error after a very long period of
time. This occurred due to inadequate handling of instances
where the Transaction Coordinator ran out of
TransactionBufferMemory,
when the cluster should have returned NDB error code 4012
(Request ndbd time-out).
(Bug #28804)
When handling BLOB columns, the
addition of read locks to the lock queue was not handled
correctly.
(Bug #30764)
Discovery of NDB tables did not
work correctly with INFORMATION_SCHEMA.
(Bug #30667)
An attempt to perform a SELECT ... FROM
INFORMATION_SCHEMA.TABLES whose result included
information about NDB tables for
which the user had no privileges crashed the MySQL Server on
which the query was performed.
(Bug #26793)
A file system close operation could fail during a node or system restart. (Bug #30646)
ndb_size.pl failed on tables with
FLOAT columns whose definitions
included commas (for example, FLOAT(6,2)).
(Bug #29228)
When creating an NDB table with a column that
has COLUMN_FORMAT = DYNAMIC, but the table
itself uses ROW_FORMAT=FIXED, the table is
considered dynamic, but any columns for which the row format is
unspecified default to FIXED. Now in such
cases the server issues the warning Row format FIXED
incompatible with dynamic attribute
column_name.
(Bug #30276)
Cluster Replication:
An issue with the mysql.ndb_apply_status
table could cause NDB schema
autodiscovery to fail in certain rare circumstances.
(Bug #20872)
Cluster Replication:
Cluster replication did not handle large
VARCHAR columns correctly.
(Bug #29904)
Cluster API:
A call to CHECK_TIMEDOUT_RET() in
mgmapi.cpp should have been a call to
DBUG_CHECK_TIMEDOUT_RET().
(Bug #30681)