Bug #29490 Lock wait timeout error in NDB during concurrent SELECTs
Submitted: 2 Jul 2007 15:42 Modified: 18 Jan 2009 9:47
Reporter: Todd Farmer (OCA) Email Updates:
Status: No Feedback Impact on me:
Category:MySQL Cluster: Cluster (NDB) storage engine Severity:S1 (Critical)
Version:5.0.44 OS:Linux
Assigned to: Assigned Account CPU Architecture:Any

[2 Jul 2007 15:42] Todd Farmer
When running a single SELECT statement against an NDB table (returning just the INT pk column, no BLOB/TEXT columns) with more than 32 concurrent threads, the following error results:

ERROR 1205 (HY000) at line 3: Lock wait timeout exceeded; try restarting transaction

Only the SELECT is running against the database.  The following additional observations are made:

1.  Setting engine_condition_pushdown to ON or OFF has no impact.
2.  It was suggested that http://bugs.mysql.com/bug.php?id=28443 could be the root cause, but the problem is observed in 5.0.44 (patched) as well as earlier versions initially reported against.
3.  Using LIMIT #### appears to resolve the issue, or at least reduce the impact (number of concurrent executions possible goes up as LIMIT #### reduces number of rows), however, using LIMIT #####, 10 to return just ten rows starting at a specific offset is also affected.

How to repeat:
Test case documentation attached.
[3 Jul 2007 6:24] Jonas Oreland

There has to some piece of the puzzle missing.
I've now tried the script with a 2-node cluster
doing 2 "mysql.sh 64" in parallel wo/ any lock wait timeout(s)

(admittedly using 5.0.46...)

I suggest that you specify the exact configuration that you used to reproduce
and I can try at same machine(s) with your config.

[18 Dec 2008 9:47] Jonas Oreland
still active?
dev could never reproduce...
[19 Jan 2009 0:01] Bugs System
No feedback was provided for this bug for over a month, so it is
being suspended automatically. If you are able to provide the
information that was originally requested, please do so and change
the status of the bug back to "Open".