[py-dev] py.test --looponfailing IOError

holger krekel holger at merlinux.de
Tue Jul 22 20:48:08 CEST 2008


Hi Baptiste, hi Matthew, 

On Sun, Jul 20, 2008 at 17:25 +0200, Baptiste Lepilleur wrote:
> The main possible source I see to explain this random behavior is a race  
> condition. I find it is suspicious that it always occurs on the first 
> byte following the bootstrap code send on stdin. The only candidate I've 
> seen in the code is that stdin/stdout are set to binary mode at the end 
> of the bootstrap code, but I don't know if this could cause a byte to be 
> lost.

well, i don't know either but i think it was a good hint!

If i now set binary modes as early as possible on both sides
then things seem to work (i also had the problem that Matthew
got with "py.test -f" consistently and now it's gone,
and py.test py\execnet tests partially failed on my 
installation and now they pass). 

Could you maybe svn-checkout 

    http://codespeak.net/svn/py/release/0.9.x 

and after a "setup.py install" report back if it helps? 

cheers,

holger


> You'll need to create a c:\temp\_execnet directory (debug traces are 
> dumped there).
>
> ----- Original Message ----- From: "holger krekel" <holger at merlinux.de>
> To: "Matthew Edwards" <monopocalypse+py-dev at gmail.com>
> Cc: <py-dev at codespeak.net>
> Sent: Saturday, July 12, 2008 7:01 AM
> Subject: Re: [py-dev] py.test --looponfailing IOError
>
>
>> Hello Matthew,
>>
>> this seems to be a problem with the lower level network communication  
>> part.
>> also had other reports pointing to that.  I aim to look into
>> this next week when i am back from EuroPython ...
>>
>> can you meanwhile post your Python version and attach the test
>> file that triggered the problems?
>>
>> best & thanks,
>>
>> holger
>>
>>
>> On Sat, Jul 12, 2008 at 10:50 +1200, Matthew Edwards wrote:
>>> Hi
>>>
>>> I'm running py 0.9.1 (from tarfile) on Windows XP. I've written a
>>> couple of simple tests, which are in a folder called test. Whenever I
>>> do "py.test --looponfailing test/" I get the following output:
>>>
>>>
>>> inserting into sys.path: C:\Program Files\Python\Lib\site-packages
>>> * opening PopenGateway:  C:\Program Files\Python\python.exe
>>> Traceback (most recent call last):
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\bin\win32\\..\py.test", line 4, in
>>> <module>
>>>     py.test.cmdline.main()
>>>   File "C:\Program Files\Python\Lib\site-packages\py\test\cmdline.py",
>>> line 15, in main
>>>     failures = session.main()
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\test\terminal\remote.py", line 82,
>>> in main
>>>     failures = self.run_remote_session(failures)
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\test\terminal\remote.py", line 100,
>>> in run_remote_session
>>>
>>>     gw, topdir = self._initslavegateway()
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\test\terminal\remote.py", line 97,
>>> in _initslavegateway
>>>     return py.execnet.PopenGateway(self.executable), topdir
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\execnet\register.py", line 66, in
>>> __init__
>>>     super(PopenGateway, self).__init__(cmd)
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\execnet\register.py", line 55, in
>>> __init__
>>>     super(PopenCmdGateway, self).__init__(io=io)
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\execnet\register.py", line 29, in
>>> __init__
>>>     self._remote_bootstrap_gateway(io)
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\execnet\register.py", line 80, in
>>> _remote_bootstrap_gateway
>>>     super(PopenGateway, self)._remote_bootstrap_gateway(io, s)
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\execnet\register.py", line 49, in
>>> _remote_bootstrap_gateway
>>>     io.write('%r\n' % source)
>>>   File "C:\Program
>>> Files\Python\Lib\site-packages\py\execnet\inputoutput.py", line 95, in
>>> write
>>>     self.outfile.write(data)
>>> IOError: [Errno 22] Invalid argument
>>>
>>> I can run the tests without --looponfailing.
>>>
>>> Any help appreciated
>>> Matthew
>>> _______________________________________________
>>> py-dev mailing list
>>> py-dev at codespeak.net
>>> http://codespeak.net/mailman/listinfo/py-dev
>>>
>>
>> -- 
>> collaborative expert contracting: http://merlinux.eu
>> pylib py.test/greenlets/svn APIs: http://pylib.org
>> PyPy  Python/Compiler tool chain: http://codespeak.net/pypy
>> _______________________________________________
>> py-dev mailing list
>> py-dev at codespeak.net
>> http://codespeak.net/mailman/listinfo/py-dev
>>


> _______________________________________________
> py-dev mailing list
> py-dev at codespeak.net
> http://codespeak.net/mailman/listinfo/py-dev


-- 
collaborative expert contracting: http://merlinux.eu 
PyPy  Python/Compiler tool chain: http://codespeak.net/pypy 
pylib py.test/greenlets/svn APIs: http://pylib.org 



More information about the Pytest-dev mailing list