Documentation Home
MySQL NDB Cluster 6.1 - 7.1 Release Notes
Download these Release Notes
PDF (US Ltr) - 3.0Mb
PDF (A4) - 3.0Mb
EPUB - 0.6Mb


MySQL NDB Cluster 6.1 - 7.1 Release Notes  /  Changes in MySQL Cluster NDB 6.2  /  Changes in MySQL Cluster NDB 6.2.3 (5.1.19-ndb-6.2.3) (2007-07-02)

Changes in MySQL Cluster NDB 6.2.3 (5.1.19-ndb-6.2.3) (2007-07-02)

This is a bugfix release, fixing recently discovered bugs in the previous MySQL Cluster NDB 6.2 release.

MySQL Cluster NDB 6.2 no longer in development.  MySQL Cluster NDB 6.2 is no longer being developed or maintained; if you are using a MySQL Cluster NDB 6.2 release, you should upgrade to the latest version of MySQL Cluster, which is available from http://dev.mysql.com/downloads/cluster/ .

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 releases, as well as all bugfixes and feature changes which were added in mainline MySQL 5.1 through MySQL 5.1.18 (see Changes in MySQL 5.1.18 (2007-05-08)).

Note

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

  • Important Change: The TimeBetweenWatchdogCheckInitial configuration parameter was added to enable setting of a separate watchdog timeout for memory allocation during startup of the data nodes. (Bug #28899)

  • Important Change; Cluster API: A new NdbRecord object has been added to the NDB API. This object provides mapping to a record stored in NDB.

  • auto_increment_increment and auto_increment_offset are now supported for NDB tables. (Bug #26342)

  • A REPORT BackupStatus command has been added in the cluster management client. This command enables you to obtain a backup status report at any time during a backup. For more about this command, see Commands in the MySQL Cluster Management Client.

  • Reporting functionality has been significantly enhanced in this release:

    • A new configuration parameter BackupReportFrequency now makes it possible to cause the management client to provide status reports at regular intervals as well as for such reports to be written to the cluster log (depending on cluster event logging levels).

    • A new REPORT command has been added in the cluster management client. REPORT BackupStatus enables you to obtain a backup status report at any time during a backup. REPORT MemoryUsage reports the current data memory and index memory used by each data node. For more about the REPORT command, see Commands in the MySQL Cluster Management Client.

    • ndb_restore now provides running reports of its progress when restoring a backup. In addition, a complete report status report on the backup is written to the cluster log.

  • A new configuration parameter ODirect causes NDB to attempt using O_DIRECT writes for LCP, backups, and redo logs, often lowering CPU usage.

  • ndb_restore now provides running reports of its progress when restoring a backup. In addition, a complete report status report on the backup is written to the cluster log.

  • A new data node configuration parameter BackupReportFrequency now makes it possible to cause the management client to provide status reports at regular intervals as well as for such reports to be written to the cluster log (depending on cluster event logging levels).

  • A new memory allocator has been implemented for the NDB kernel, which allocates memory to tables 32K page by 32K page rather than allocating it in variable-sized chunks as previously. This removes much of the memory overhead that was associated with the old memory allocator.

  • Cluster Replication: Batching of updates on cluster replication slaves, enabled using the --slave-allow-batching option for mysqld. See Starting MySQL Cluster Replication (Single Replication Channel), for more information.

  • Read ahead was implemented for backups of Disk Data tables, resulting in a 10 to 15% increase in backup speed of Disk Data tables. (Bug #29099)

Bugs Fixed

  • When a node failed to respond to a COPY_GCI signal as part of a global checkpoint, the master node was killed instead of the node that actually failed. (Bug #29331)

  • Memory corruption could occur due to a problem in the DBTUP kernel block. (Bug #29229)

  • A query having a large IN(...) or NOT IN(...) list in the WHERE condition on an NDB table could cause mysqld to crash. (Bug #29185)

  • In the event that two data nodes in the same node group and participating in a GCP crashed before they had written their respective P0.sysfile files, QMGR could refuse to start, issuing an invalid Insufficient nodes for restart error instead. (Bug #29167)

  • An invalid comparison made during REDO validation that could lead to an Error while reading REDO log condition. (Bug #29118)

  • Attempting to restore a NULL row to a VARBINARY column caused ndb_restore to fail. (Bug #29103)

  • ndb_error_reporter now preserves timestamps on files. (Bug #29074)

  • The wrong data pages were sometimes invalidated following a global checkpoint. (Bug #29067)

  • If at least 2 files were involved in REDO invalidation, then file 0 of page 0 was not updated and so pointed to an invalid part of the redo log. (Bug #29057)

  • It is now possible to set the maximum size of the allocation unit for table memory using the MaxAllocate configuration parameter. (Bug #29044)

  • When shutting down mysqld, the NDB binlog process was not shut down before log cleanup began. (Bug #28949)

  • A corrupt schema file could cause a File already open error. (Bug #28770)

  • Having large amounts of memory locked caused swapping to disk. (Bug #28751)

  • Setting InitialNoOfOpenFiles equal to MaxNoOfOpenFiles caused an error. This was due to the fact that the actual value of MaxNoOfOpenFiles as used by the cluster was offset by 1 from the value set in config.ini. (Bug #28749)

  • LCP files were not removed following an initial system restart. (Bug #28726)

  • UPDATE IGNORE statements involving the primary keys of multiple tables could result in data corruption. (Bug #28719)

  • A race condition could result when nonmaster nodes (in addition to the master node) tried to update active status due to a local checkpoint (that is, between NODE_FAILREP and COPY_GCIREQ events). Now only the master updates the active status. (Bug #28717)

  • A fast global checkpoint under high load with high usage of the redo buffer caused data nodes to fail. (Bug #28653)

  • The management client's response to START BACKUP WAIT COMPLETED did not include the backup ID. (Bug #27640)

  • Replication; Cluster Replication: When replicating MyISAM or InnoDB tables to a MySQL Cluster, it was not possible to determine exactly what had been applied following a shutdown of the slave cluster or mysqld process. (Bug #26783)

  • Disk Data: When dropping a page, the stack's bottom entry could sometime be left cold rather than hot, violating the rules for stack pruning. (Bug #29176)

  • Disk Data: When loading data into a cluster following a version upgrade, the data nodes could forcibly shut down due to page and buffer management failures (that is, ndbrequire failures in PGMAN). (Bug #28525)

  • Disk Data: Repeated INSERT and DELETE operations on a Disk Data table having one or more large VARCHAR columns could cause data nodes to fail. (Bug #20612)

  • Cluster API: The timeout set using the MGM API ndb_mgm_set_timeout() function was incorrectly interpreted as seconds rather than as milliseconds. (Bug #29063)

  • Cluster API: An invalid error code could be set on transaction objects by BLOB handling code. (Bug #28724)

  • Setting MaxNoOfTables very low and relative to DataMemory caused Out of memory in Ndb Kernel errors when inserting relatively small amounts of data into NDB tables. (Bug #24173)