<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.6000.16674" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>I'm stuck with this weird issue. py.test -f has
worked perfectly for more than one month, but yesterday I got my first failure
as shown below. The weird thing is that it restarted worked fine after failing a
few times, but this morning it is impossible to get it working...</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Environment: Python 2.5.2 on Windows XP SP3 32 bits
and py-0.9.1 install via setup.py.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Below are the failure output when I start py.test
-f, and the debug ouput of the gateway trace that I enabled. Anyone know how to
get useful information about the remote exception (like source code... to help
understand where this ValueError come from ?)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I tried to run the gateway unit test, but they
always get stuck. The strange thing is that it seems to be depend on how they
are started with py.test: </FONT></DIV>
<DIV><FONT face=Arial size=2>If I starts the test with disabled stdout capture
(py.test -v -s) , then the test remain stuck on:</FONT></DIV>
<DIV><FONT face=Arial size=2> test_gateway.py:91
TestPopenGateway().test_correct_setup_no_py,</FONT></DIV>
<DIV><FONT face=Arial size=2>If I starts the test normally (py.test -v), then
test run go farther but get stuck on:</FONT></DIV>
<DIV><FONT face=Arial size=2>test_gateway.py:405
TestPopenGateway().test_chdir_separation</FONT></DIV>
<DIV><FONT face=Arial size=2>Gateway debug trace for unit test do not show any
ValueError exception...</FONT></DIV>
<DIV><FONT face=Arial size=2>Unit tests output is at the end of the
mail.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Any help to understand where I should add traces in
the code to understand what is going on would be greatly
appreciated.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Thanks,</FONT></DIV>
<DIV><FONT face=Arial size=2>Baptiste.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>* The failure:</FONT></DIV>
<DIV><FONT face=Arial
size=2>E:\prg\py\App\sbuilder\build\src\sbuilder\testing>py.test.py
-f<BR>* opening PopenGateway: C:\Python25\python.exe<BR>MASTER: initiated
slave terminal session -><BR>MASTER: send start info,
topdir=E:\prg\py\App\sbuilder\build\src<BR>Traceback (most recent call
last):<BR> File
"E:\prg\py\App\sbuilder\build\src\sbuilder\testing\py.test.py", line 4, in
<module><BR> py.test.cmdline.main()<BR> File
"c:\Python25\lib\site-packages\py\test\cmdline.py", line 15, in
main<BR> failures = session.main()<BR> File
"C:\Python25\lib\site-packages\py\test\terminal\remote.py", line 82, in
main<BR> failures =
self.run_remote_session(failures)<BR> File
"C:\Python25\lib\site-packages\py\test\terminal\remote.py", line 111, in
run_remote_session<BR> return channel.receive()<BR> File
"C:\Python25\lib\site-packages\py\execnet\channel.py", line 175, in
receive<BR> raise self._getremoteerror() or
EOFError()<BR>EOFError</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I enabled the gateway trace I found:</FONT></DIV>
<DIV><FONT face=Arial size=2>**** execnet-debug-3420:</FONT></DIV>
<DIV><FONT face=Arial size=2>sending gateway bootstrap
code<BR>Channel(3).__del__<BR>sent -> <Message.CHANNEL_LAST_MESSAGE
channelid=3 ''><BR>Channel(5).__del__<BR>sent ->
<Message.CHANNEL_LAST_MESSAGE channelid=5 ''><BR>sent ->
<Message.CHANNEL_OPEN channelid=1 len=111><BR>sent ->
<Message.CHANNEL_DATA channelid=1 len=456><BR>leaving <Thread(receiver,
started daemon)><BR>====================cleaning
up====================<BR>Channel(1).__del__<BR></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>*** execnet-debug-2308 </DIV></FONT>
<DIV><FONT face=Arial size=2>Traceback (most recent call last):<BR> File
"<string>", line 359, in _thread_receiver<BR> File "<string>",
line 626, in readfrom<BR>ValueError: bad data format</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>leaving <Thread(receiver, started
daemon)><BR>_servemain finished<BR>====================cleaning
up====================<BR></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>*** Results of running the unit tests for exec_net
module</DIV></FONT>
<DIV><FONT face=Arial
size=2>C:\Python25\Lib\site-packages\py\execnet\testing>python
c:\Python25\Lib\site-packages\py\bin\py.test -v<BR>inserting into sys.path:
C:\Python25\Lib\site-packages<BR>============================= test process
starts =============================<BR>executable:
c:\Python25\python.exe (2.5.2-final-0)<BR>using py lib:
C:\Python25\Lib\site-packages\py <rev unknown><BR>test target:
C:\Python25\Lib\site-packages\py\execnet\testing<BR>initial conf 0:
C:\Python25\Lib\site-packages\py\test\defaultconftest.pyc<BR>initial conf 1:
C:\Python25\Lib\site-packages\py\conftest.pyc</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV><FONT face=Arial size=2>
<DIV><BR>+ testmodule:
C:\Python25\Lib\site-packages\py\execnet\testing\test_gateway.py<BR>register.py:20
test_getsource_import_modules[0] ok
(0.00)<BR>register.py:20
test_getsource_import_modules[1] ok
(0.00)<BR>register.py:20
test_getsource_import_modules[2] ok
(0.00)<BR>register.py:20
test_getsource_import_modules[3] ok
(0.00)<BR>register.py:20
test_getsource_import_modules[4] ok (0.00)<BR>test_gateway.py:17
test_getsource_no_colision ok (0.00)<BR>test_gateway.py:30
test_stdouterrin_setnull ok (0.02)<BR>test_gateway.py:45
TestMessage().test_wire_protocol ok (0.00)<BR>test_gateway.py:61
TestPureChannel().test_factory_create ok
(0.00)<BR>test_gateway.py:67 TestPureChannel().test_factory_getitem
ok (0.00)<BR>test_gateway.py:73
TestPureChannel().test_channel_timeouterror ok
(0.02)<BR>test_gateway.py:85 TestPopenGateway().test_correct_setup
ok (0.08)<BR>test_gateway.py:88
TestPopenGateway().test_repr_doesnt_crash ok
(0.00)<BR>test_gateway.py:91
TestPopenGateway().test_correct_setup_no_py ok
(0.02)<BR>test_gateway.py:100
TestPopenGateway().test_remote_exec_waitclose ok
(0.00)<BR>test_gateway.py:104
TestPopenGateway().test_remote_exec_waitclose_2 ok
(0.00)<BR>test_gateway.py:108
TestPopenGateway().test_remote_exec_waitclose_noarg ok
(0.00)<BR>test_gateway.py:112
TestPopenGateway().test_remote_exec_error_after_close ok
(0.00)<BR>test_gateway.py:117
TestPopenGateway().test_remote_exec_channel_anonymous ok
(0.00)<BR>test_gateway.py:126
TestPopenGateway().test_channel_close_and_then_receive_error ok
(0.00)<BR>test_gateway.py:130
TestPopenGateway().test_channel_finish_and_then_EOFError ok
(0.00)<BR>test_gateway.py:138
TestPopenGateway().test_channel_close_and_then_receive_error_multiple ok
(0.00)</DIV>
<DIV> </DIV>
<DIV>test_gateway.py:144 TestPopenGateway().test_channel__local_close ok
(0.00)<BR>test_gateway.py:149
TestPopenGateway().test_channel__local_close_error ok
(0.00)<BR>test_gateway.py:155
TestPopenGateway().test_channel_error_reporting ok
(0.00)<BR>test_gateway.py:166 TestPopenGateway().test_channel_syntax_error
ok (0.00)<BR>test_gateway.py:175 TestPopenGateway().test_channel_iter ok
(0.00)<BR>test_gateway.py:183
TestPopenGateway().test_channel_passing_over_channel ok
(0.00)<BR>test_gateway.py:202
TestPopenGateway().test_channel_receiver_callback ok
(0.00)<BR>test_gateway.py:217
TestPopenGateway().test_channel_callback_after_receive ok
(0.02)<BR>test_gateway.py:233
TestPopenGateway().test_waiting_for_callbacks ok
(0.22)<BR>test_gateway.py:245
TestPopenGateway().test_channel_callback_stays_active ok
(0.75)<BR>test_gateway.py:275
TestPopenGateway().test_channel_callback_remote_freed ok
(0.75)<BR>test_gateway.py:279
TestPopenGateway().test_channel_endmarker_callback ok
(0.00)<BR>test_gateway.py:294
TestPopenGateway().test_remote_redirect_stdout ok
(0.00)<BR>test_gateway.py:303
TestPopenGateway().test_remote_exec_redirect_multi ok
(0.00)<BR>test_gateway.py:318 TestPopenGateway().test_channel_file ok
(0.00)<BR>test_gateway.py:330
TestPopenGateway().test_channel_file_write_error ok
(0.00)<BR>test_gateway.py:336
TestPopenGateway().test_channel_file_proxyclose ok
(0.02)<BR>test_gateway.py:347
TestPopenGateway().test_confusion_from_os_write_stdout ok
(0.00)<BR>test_gateway.py:361
TestPopenGateway().test_confusion_from_os_write_stderr ok
(0.00)<BR>test_gateway.py:375
TestPopenGateway().test_non_reverse_execution ok
(0.03)<BR>test_gateway.py:405 TestPopenGateway().test_chdir_separation
^C<BR>C:\Python25\Lib\site-packages\py\execnet\testing></DIV>
<DIV> </DIV>
<DIV>---<BR>Baptiste Lepilleur <<A
href="mailto:blep@users.sourceforge.net">blep@users.sourceforge.net</A>><BR></FONT></DIV></BODY></HTML>