Bug #51775 Assert hit in TransporterFacade::remove_from_cond_wait_queue
Submitted: 5 Mar 2010 18:24 Modified: 6 Oct 2010 12:57
Reporter: Andrew Hutchings Email Updates:
Status: Closed Impact on me:
Category:MySQL Cluster: NDB API Severity:S3 (Non-critical)
Version:7.0.9 OS:Any
Assigned to: Jonas Oreland CPU Architecture:Any

[5 Mar 2010 18:24] Andrew Hutchings
Calls to remove_from_cond_wait_queue() from within TransporterFacade.cpp seem to be guarded with a check that the Receiver is actually in the cond_wait_queue().

The calls from Ndbif.cpp (and anywhere else) should probably also check this.

If the Receiver is not in the cond_wait_queue then we shouldn't attempt to remove it, and also there's no need to signal.

How to repeat:
[6 Oct 2010 8:55] Bugs System
A patch for this bug has been committed. After review, it may
be pushed to the relevant source trees for release in the next
version. You can access the patch from:


3293 Jonas Oreland	2010-10-06
      ndb - bug#51775 - Make sure that we don't get woken up if not waiting
[6 Oct 2010 9:00] Bugs System
Pushed into mysql-5.1-telco-6.3 5.1.47-ndb-6.3.39 (revid:jonas@mysql.com-20101006085450-8d0pkj9mxdz14lor) (version source revid:jonas@mysql.com-20101006085450-8d0pkj9mxdz14lor) (merge vers: 5.1.47-ndb-6.3.39) (pib:21)
[6 Oct 2010 9:00] Bugs System
Pushed into mysql-5.1-telco-7.0 5.1.47-ndb-7.0.20 (revid:jonas@mysql.com-20101006085933-zh68axbu8i3bva0g) (version source revid:jonas@mysql.com-20101006085933-zh68axbu8i3bva0g) (merge vers: 5.1.47-ndb-7.0.20) (pib:21)
[6 Oct 2010 9:26] Jonas Oreland
pushed to 6.3.39, 7.0.20 and 7.1.9
[6 Oct 2010 12:57] Jon Stephens
Documented bugfix in the NDB-6.3.39, 7.0.20, and 7.1.9 changelogs, as follows:

      An NDB API client program under load could abort with an assertion error
      in TransporterFacade::remove_from_cond_wait_queue.