MySQL Cluster 7.5.0 has been released (part 3/3)
[This is part 3 of the announcement]
* Cluster API: The binlog injector did not work correctly
with TE_INCONSISTENT event type handling by Ndb::nextEvent()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-nextevent). (Bug #22135541) References: See also Bug
#20646496.
* Cluster API: While executing dropEvent()
(http://dev.mysql.com/doc/ndbapi/en/ndb-dictionary-method
s.html#ndb-dictionary-dropevent), if the coordinator DBDICT
failed after the subscription manager (SUMA block) had removed
all subscriptions but before the coordinator had deleted the
event from the system table, the dropped event remained in the
table, causing any subsequent drop or create event with the same
name to fail with NDB error 1419 Subscription already dropped or
error 746 Event name already exists. This occurred even when
calling dropEvent()
(http://dev.mysql.com/doc/ndbapi/en/ndb-dictionary-method
s.html#ndb-dictionary-dropevent) with a nonzero force argument.
Now in such cases, error 1419 is ignored, and DBDICT deletes the
event from the table. (Bug #21554676)
* Cluster API: Ndb::pollEvents()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-pollevents) and pollEvents2()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-pollevents2) were slow to receive events, being dependent
on other client threads or blocks to perform polling of
transporters on their behalf. This fix allows a client thread to
perform its own transporter polling when it has to wait in either
of these methods. Introduction of transporter polling also
revealed a problem with missing mutex protection in the
ndbcluster_binlog handler, which has been added as part of this
fix. (Bug #20957068, Bug #22224571, Bug #79311)
* Cluster API: The pollEvents2()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-pollevents2) method now waits indefinitely for events
when a negative value is used for the time argument. (Bug
#20762291)
* Cluster API: Creation and destruction of
Ndb_cluster_connection
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-cluster-conne
ction.html) objects by multiple threads could make use of the
same application lock, which in some cases led to failures in the
global dictionary cache. To alleviate this problem, the creation
and destruction of several internal NDB API objects have been
serialized. (Bug #20636124)
* Cluster API: When an Ndb
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb.html) object created
prior to a failure of the cluster was reused, the event queue of
this object could still contain data node events originating from
before the failure. These events could reference "old" epochs
(from before the failure occurred), which in turn could violate
the assumption made by the nextEvent()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-nextevent) method that epoch numbers always increase.
This issue is addressed by explicitly clearing the event queue in
such cases. (Bug #18411034) References: See also Bug #20888668.
* Cluster API: After the initial restart of a node
following a cluster failure, the cluster failure event added as
part of the restart process was deleted when an event that
existed prior to the restart was later deleted. This meant that,
in such cases, an Event API client had no way of knowing that
failure handling was needed. In addition, the GCI used for the
final cleanup of deleted event operations, performed by
pollEvents()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-pollevents) and nextEvent()
(http://dev.mysql.com/doc/ndbapi/en/ndb-ndb-methods.html#
ndb-ndb-nextevent) when these methods have consumed all available
events, was lost. (Bug #78143, Bug #21660947)
On behalf of the MySQL Release Team,
Balasubramanian Kandasamy
Subject
Views
Written By
Posted
MySQL Cluster 7.5.0 has been released (part 3/3)
2553
February 05, 2016 02:12AM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.