classification
Title: test_concurrent_futures failure on Windows
Type: behavior Stage: needs patch
Components: Library (Lib), Tests Versions: Python 3.2
process
Status: closed Resolution: fixed
Dependencies: Superseder:
Assigned To: bquinlan Nosy List: bquinlan, brian.curtin, pitrou
Priority: deferred blocker Keywords:

Created on 2010-12-19 13:32 by pitrou, last changed 2011-01-03 07:32 by bquinlan. This issue is now closed.

Messages (5)
msg124347 - (view) Author: Antoine Pitrou (pitrou) * (Python committer) Date: 2010-12-19 13:32
This has been happening recently on our Windows Server 2008 buildbot:


======================================================================
FAIL: test_first_completed (test.test_concurrent_futures.ThreadPoolWaitTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "c:\buildslave-py3k\3.x.curtin-win2008-amd64\build\lib\test\test_concurrent_futures.py", line 252, in test_first_completed
    self.assertEqual(set([future1]), done)
AssertionError: Items in the second set but not the first:
<Future at 0x19899f60 state=finished raised AssertionError>

======================================================================
FAIL: test_first_exception (test.test_concurrent_futures.ThreadPoolWaitTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "c:\buildslave-py3k\3.x.curtin-win2008-amd64\build\lib\test\test_concurrent_futures.py", line 293, in test_first_exception
    self.assertEqual(set([future1, future2]), finished)
AssertionError: Items in the second set but not the first:
<Future at 0x164e5878 state=finished raised AssertionError>

======================================================================
FAIL: test_first_exception_some_already_complete (test.test_concurrent_futures.ThreadPoolWaitTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "c:\buildslave-py3k\3.x.curtin-win2008-amd64\build\lib\test\test_concurrent_futures.py", line 323, in test_first_exception_some_already_complete
    future1]), finished)
AssertionError: Items in the second set but not the first:
<Future at 0x16f9b948 state=finished raised AssertionError>

======================================================================
FAIL: test_timeout (test.test_concurrent_futures.ThreadPoolWaitTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "c:\buildslave-py3k\3.x.curtin-win2008-amd64\build\lib\test\test_concurrent_futures.py", line 442, in test_timeout
    future1]), finished)
AssertionError: Items in the second set but not the first:
<Future at 0xd0efe28 state=finished raised AssertionError>


(see e.g. http://www.python.org/dev/buildbot/all/builders/AMD64%20Windows%20Server%202008%203.x/builds/306/steps/test/logs/stdio )
msg124613 - (view) Author: Brian Quinlan (bquinlan) * (Python committer) Date: 2010-12-24 22:07
What's the best way for me to test this? The problem occurs on a Windows-only code path but there is not enough information for me to debug it.

Should I check-in some additional diagnostics, wait for the buildbot to run, collect my data and then rollback my change?

Or can I run code on the buildbot directly?
msg124615 - (view) Author: Brian Curtin (brian.curtin) * (Python committer) Date: 2010-12-24 22:27
You can create a branch, checkin to that branch, then specify that a specific buildbot runs your branch. See the "force build" page of a build slave.

Additionally, I can give you access to my build slave, the Windows Server 2008 one, but that may take a few days due to the holiday weekend.
msg124622 - (view) Author: Brian Quinlan (bquinlan) * (Python committer) Date: 2010-12-24 23:55
I'm good, thanks Brian C.

<br/>

It looks like SetEvent is failing with ERROR_INVALID_HANDLE.
CRITICAL:root:SetEvent(2044) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(2064) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(2220) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(1576) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(2284) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(2168) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(2264) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(1588) failed with 0, GetLastError() = 6
CRITICAL:root:SetEvent(2240) failed with 0, GetLastError() = 6

Now to figure out why...
msg125156 - (view) Author: Brian Quinlan (bquinlan) * (Python committer) Date: 2011-01-03 07:32
Fixed in r87673.
History
Date User Action Args
2011-01-03 07:32:45bquinlansetstatus: open -> closed

messages: + msg125156
resolution: fixed
nosy: bquinlan, pitrou, brian.curtin
2010-12-24 23:55:58bquinlansetnosy: bquinlan, pitrou, brian.curtin
messages: + msg124622
2010-12-24 22:27:40brian.curtinsetnosy: bquinlan, pitrou, brian.curtin
messages: + msg124615
2010-12-24 22:07:48bquinlansetnosy: bquinlan, pitrou, brian.curtin
messages: + msg124613
2010-12-22 20:02:41pitrousetnosy: + brian.curtin
2010-12-19 13:34:48georg.brandlsetpriority: high -> deferred blocker
2010-12-19 13:32:43pitroucreate