Bug #38818 mtr timeouts don't work
Submitted: 15 Aug 2008 8:52 Modified: 8 Oct 2008 9:50
Reporter: Daniel Fischer Email Updates:
Status: Won't fix Impact on me:
None 
Category:MySQL Server: Tests Severity:S7 (Test Cases)
Version:5.0,5.1,6.0 OS:Windows (WS2008)
Assigned to: Magnus Blåudd CPU Architecture:Any

[15 Aug 2008 8:52] Daniel Fischer
Description:
On Windows, at least when running under ActivePerl, mtr's timeouts don't work. When a test case hangs or mysqld hangs, mtr will hang indefinitely.

This is critical because it makes the test suite unusable.

How to repeat:
Run test suite on a Windows box without cygwin.

Suggested fix:
I haven't looked at mtr's implementation of timeouts, so I don't know if this is helpful at all, but the Win32::Job module has functionality for spawning processes in a job group, which includes being able to kill the whole job including child processes. (This is basically what I do with mtr itself, but outside mtr I can only time out an entire run, not individual test cases.)
[15 Aug 2008 12:15] MySQL Verification Team
Thank you for the bug report.
[25 Aug 2008 9:05] Magnus Blåudd
New mtr.pl uses Job's on windows(altough not the Win32::Job implementation of perl), that will appear in 5.1 and up.

For 5.0, I _think_ I can show how to fix the timeout process.
[8 Oct 2008 9:50] Magnus Blåudd
Will not fix this in old mtr.pl. Should work in new mtr.pl that will be available from 5.1 and up.