Bug #40135 falcon_bug_30124 is too slow, times out in pushbuild
Submitted: 18 Oct 2008 21:34 Modified: 18 Dec 2008 16:55
Reporter: Sven Sandberg Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S2 (Serious)
Version:6.0-rpl OS:Linux (debx86-b)
Assigned to: Hakan Küçükyılmaz CPU Architecture:Any
Tags: F_TEST, falcon_bug_30124, pushbuild, sporadic, test failure, timeout

[18 Oct 2008 21:34] Sven Sandberg
Description:
falcon_bug_30124 times out very frequently in pushbuild:

falcon.falcon_bug_30124                  [ fail ]  timeout after 15 minutes

Test case timeout after 15 minute(s)

 == /dev/shm/var-falcon-102/2/tmp/analyze-timeout-mysqld.1.err ==
SHOW PROCESSLIST;
Id	User	Host	db	Command	Time	State	Info
264	root	localhost	test	Query	1	NULL	SET @a = @v
265	root	localhost	NULL	Query	0	NULL	SHOW PROCESSLIST

 - saving '/dev/shm/var-falcon-102/2/log/falcon.falcon_bug_30124/' to '/dev/shm/var-falcon-102/log/falcon.falcon_bug_30124/'

Retrying test, attempt(2/3)...

How to repeat:
E.g., here: https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=bzr_mysql-6.0-rpl&order=88 debx86-b/falcon
xref: http://tinyurl.com/6zxysx

Suggested fix:
The test case is very slow, at least under Linux (5 minutes on my local machine). The test case contains the comment "This update should just take a few seconds". That suggests that the original bug still exists on Linux.
[23 Oct 2008 15:45] Kevin Lewis
Hakan, Please investigate if this is something that needs to be fixed in Falcon or just the testcase.
[28 Oct 2008 19:19] Hakan Küçükyılmaz
The test case was showing long run time on slower machines. I tested it on a idle 450MHz. PPC machine and had a run time of ~ 5 minutes. It's perfectly possible to have a runtime > 15 minutes on busy machines.

Fixed by lowering the loop count to 100k. Also created a corresponding -big.test with loop count of 1 million.
[28 Oct 2008 19:32] 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/57245

2887 Hakan Kuecuekyilmaz	2008-10-28
      Fix for Bug#40135.
      
      The test case was showing long run time on slower machines. I tested it on a idle 450MHz.
      PPC machine and had a run time of ~ 5 minutes. It's perfectly possible to have a runtime >
      15 minutes on busy machines.
      
      Fixed by lowering the loop count to 100k. Also created a corresponding -big.test with loop
      count of 1 million.
[28 Oct 2008 19:49] Kevin Lewis
Hakan, if the reduction from 500000 to 100000 still causes a timeout on any busy pushbuild system it can be reduced more. Thanks for making the -big test.
[29 Oct 2008 7:53] John Embretsen
Change looks OK to me as well. 

When you lowered the loop count in the test by a factor of 5, did the running time on your slow machine decrease accordingly (to ~1 min)?
[7 Nov 2008 0:57] Hakan Küçükyılmaz
Actually I think I have tested it that it had lower run time, but now compiling on Mac OS X/PPC fails for me with latest sources. I will keep this bug report in "In progress" until I can verify the decreased runtime for sure.
[20 Nov 2008 12:56] Bugs System
Pushed into 6.0.8-alpha  (revid:hky@sun.com-20081028193235-opctv8pum1wymd6q) (version source revid:hky@sun.com-20081028193235-opctv8pum1wymd6q) (pib:5)
[16 Dec 2008 3:32] Hakan Küçükyılmaz
Run time on my 450MHz/PPC with 500k loop count is ~4 minutes and with 100k loop count ~45 seconds.
[18 Dec 2008 16:55] Paul DuBois
Test case changes. No changelog entry needed.