| Bug #58110 | Trying to read same value more than 9000 times lead to hanging transaction | ||
|---|---|---|---|
| Submitted: | 10 Nov 2010 11:50 | Modified: | 10 Nov 2010 14:57 |
| Reporter: | Jonas Oreland | Email Updates: | |
| Status: | Closed | Impact on me: | |
| Category: | MySQL Cluster: NDB API | Severity: | S3 (Non-critical) |
| Version: | mysql-5.1-telco-6.3 | OS: | Any |
| Assigned to: | Jonas Oreland | CPU Architecture: | Any |
[10 Nov 2010 12:27]
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: http://lists.mysql.com/commits/123402 3337 Jonas Oreland 2010-11-10 ndb - bug#58110 - fix incorrect break when doSend returns -1
[10 Nov 2010 12:30]
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: http://lists.mysql.com/commits/123403 3991 Jonas Oreland 2010-11-10 [merge] ndb - bug#58110 - merge plus additional 7.0 change of TcKeyReq::MaxTotalAttrInfo
[10 Nov 2010 12:41]
Bugs System
Pushed into mysql-5.1-telco-6.3 5.1.51-ndb-6.3.40 (revid:jonas@mysql.com-20101110122520-qufylnc1q9v0gdu1) (version source revid:jonas@mysql.com-20101110122520-qufylnc1q9v0gdu1) (merge vers: 5.1.51-ndb-6.3.40) (pib:21)
[10 Nov 2010 12:41]
Bugs System
Pushed into mysql-5.1-telco-7.0 5.1.51-ndb-7.0.21 (revid:jonas@mysql.com-20101110122834-iloj5vjazc1fpxfb) (version source revid:jonas@mysql.com-20101110122834-iloj5vjazc1fpxfb) (merge vers: 5.1.51-ndb-7.0.21) (pib:21)
[10 Nov 2010 12:49]
Jonas Oreland
pushed to 6.3.40, 7.0.21, 7.1.10
[10 Nov 2010 14:57]
Jon Stephens
Documented fix in the NDB-6.3.40, 7.0.21, and 7.1.10 changelogs as follows:
Attempting to read the same value (using getValue()) more than
9000 times within the same transaction caused the transaction to
hang when executed. Now when more reads are performed in this
way than can be accommodated in a single transaction, the call
to execute() fails with a suitable error.
Closed.

Description: Doing readTuple(); followed by 9000 getValue("X"); execute() leads to executing timing out. this as message is too big to be sent, and error handling of this puts transaction in "sent-list" anyway How to repeat: testNdbApi -n MaxGetValue T1 Suggested fix: return correct error code from NdbTransaction::doSend()