Bug #37635 Test read_many_rows_innodb is failing w/ wrong error message (lock_wait_timeout)
Submitted: 25 Jun 2008 15:33 Modified: 14 Jan 2011 13:46
Reporter: Michael Widenius Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server Severity:S3 (Non-critical)
Version:5.1, 6.0 BZR OS:Linux (64 bit, 32 bit)
Assigned to: Evgeny Potemkin CPU Architecture:Any
Tags: disabled
Triage: Triaged: D3 (Medium)

[25 Jun 2008 15:33] Michael Widenius
Description:
When running mysql-test-run --force --big the following test fails:

main.concurrent_innodb main.read_many_rows_innodb main.variables-big rpl.rpl_truncate_7ndb_2 rpl.rpl_truncate_7ndb_2 rpl.rpl_truncate_7ndb_2

How to repeat:
mysql-test-run --force --big

Suggested fix:
Run --big test as part of pushbuild
[25 Jun 2008 19:09] Sveta Smirnova
Thank you for the report.

Verified as described.
[25 Jun 2008 19:28] Sveta Smirnova
main.read_many_rows_innodb main.variables-big fail in 6.0 as well
[30 Jun 2008 14:41] Sveta Smirnova
Bug #37741 was marked as duplicate of this one.
[14 Aug 2008 20:53] Patrick Crews
Wrote Bug #38811	Test main.variables-big failing (all versions)

This test is failing for a separate reason than the other tests listed in this bug and is a quick fix.  Breaking this fix out in order to repair a bit quickly rather than push a number of disparate fixes (that could take longer to sort out)
[19 Aug 2008 23:38] Patrick Crews
Wrote Bug #38903	Test rpl.rpl_truncate_7ndb_2 failing
for this failure.  This is a quick fix as well.

The read_many_rows failure will remain to be fixed on this bug.  Still investigating the cause of this failure - The test is supposed to fail due to deadlock, but instead is failing due to wait timeout.
[5 Jan 2009 23:12] Patrick Crews
Renaming this bug from "Some big tests fails in 5.1" as the other tests have been corrected.

The problem with read_many_rows_innodb is that it is hitting lock_wait_timeout rather than detecting the deadlock as expected.  A number of other tests are running into similar issues and this could be indicative of a larger problem:

Bug #38070	rpl_locktrans_innodb Lock wait timeout exceeded At line 632
Bug #37775	main.locktrans_innodb fails randomly
Bug #29828	Test 'rpl_locktrans_innodb' failed on HP-UX 11.11 32 bit
[6 Jan 2009 16:32] Patrick Crews
Failure example is listed below.  This is deterministic, the failure is the same for every run I have tried on both Windows and Mac OSX (10.5)

main.read_many_rows_innodb     [ fail ]

mysqltest: In included file "./include/read_many_rows.inc": At line 116: query 'reap' failed with wrong errno 1205: 'Lock wait timeout exceeded; try restarting transaction', instead of 1213...

The result from queries just before the failure was:
< snip >
DECLARE CONTINUE HANDLER FOR SQLSTATE '40001' SET @b:= 'deadlock';
DECLARE CONTINUE HANDLER FOR SQLEXCEPTION SET @a:= 'exception';
INSERT INTO t2 (f2) VALUES (1);
DELETE FROM t2 WHERE f2 = 1;
END;|
create procedure proc24989_2()
deterministic
begin
declare continue handler for sqlexception
select 'Outer handler' as 'exception';
insert into t1 values(1);
select "continued";
end|
start transaction;
insert into t1 values(1);
start transaction;
insert into t2 values(123);
insert into t1 values(1);
insert into t1 values(1);
ERROR HY000: Lock wait timeout exceeded; try restarting transaction