You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In our project we are developing many python modules that include C++. Some times this means that the test file fails on import. Without xdist you get bad exit status to the shell so you know something went wrong:
With xdist enabled things start to go horribly wrong:
$ pytest -n 2
======================================================== test session starts ========================================================
platform darwin -- Python 3.6.1, pytest-3.2.0, py-1.4.34, pluggy-0.4.0
rootdir: /Users/timj/work/lsst/xdist-crash, inifile:
plugins: session2file-0.1.9, forked-0.3.dev0+g1dd93f6.d20170913, xdist-14.1.dev1+g5772c03.d20170928, flake8-0.8.1
gw0 ok / gw1 C[gw0] node down: Not properly terminated
Replacing crashed slave gw0
gw2 C / gw1 ok[gw1] node down: Not properly terminated
Replacing crashed slave gw1
gw2 ok / gw3 C[gw2] node down: Not properly terminated
Replacing crashed slave gw2
gw4 C / gw3 ok[gw3] node down: Not properly terminated
Replacing crashed slave gw3
gw4 ok / gw5 C[gw4] node down: Not properly terminated
Replacing crashed slave gw4
gw6 C / gw5 ok[gw5] node down: Not properly terminated
Replacing crashed slave gw5
gw6 ok / gw7 C[gw6] node down: Not properly terminated
Replacing crashed slave gw6
gw8 C / gw7 ok[gw7] node down: Not properly terminated
Replacing crashed slave gw7
gw8 C / gw9 C ^C
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! KeyboardInterrupt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
to show a full traceback on KeyboardInterrupt use --fulltrace
/Users/timj/work/lsstsw3/miniconda/lib/python3.6/threading.py:299: KeyboardInterrupt
=================================================== no tests ran in 6.86 seconds ====================================================
where it continually tries to restart workers until the system runs out of resources (we have had cases where a Jenkins node has become completely unresponsive and requires a reboot).
I thought that limiting worker restarts would be the solution but that doesn't work either:
$ pytest -n 2 --max-slave-restart=0
======================================================== test session starts ========================================================
platform darwin -- Python 3.6.1, pytest-3.2.0, py-1.4.34, pluggy-0.4.0
rootdir: /Users/timj/work/lsst/xdist-crash, inifile:
plugins: session2file-0.1.9, forked-0.3.dev0+g1dd93f6.d20170913, xdist-14.1.dev1+g5772c03.d20170928, flake8-0.8.1
gw0 ok / gw1 C[gw0] node down: Not properly terminated
Slave restarting disabled
gw0 ok / gw1 ok[gw1] node down: Not properly terminated
Slave restarting disabled
^C
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! KeyboardInterrupt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
to show a full traceback on KeyboardInterrupt use --fulltrace
/Users/timj/work/lsstsw3/miniconda/lib/python3.6/threading.py:299: KeyboardInterrupt
=================================================== no tests ran in 5.12 seconds ====================================================
It doesn't keep restarting subprocesses but it does hang forever.
In our project we are developing many python modules that include C++. Some times this means that the test file fails on import. Without xdist you get bad exit status to the shell so you know something went wrong:
With xdist enabled things start to go horribly wrong:
where it continually tries to restart workers until the system runs out of resources (we have had cases where a Jenkins node has become completely unresponsive and requires a reboot).
I thought that limiting worker restarts would be the solution but that doesn't work either:
It doesn't keep restarting subprocesses but it does hang forever.
My test file is:
(here's the fulltrace output for the case where it hangs, if that helps).
The text was updated successfully, but these errors were encountered: