Jeremy Kloth <jeremy.kloth+python-trac...@gmail.com> added the comment:

I've been able locally to reproduce the test_subprocess hang.  The responsible 
function is subprocess.run().  The test case, test_timeout(), uses a small 
timeout value (0.0001), which, when given enough load, can cause the run() call 
to hang.

A judicious use of prints in subprocess.py, reveals that the timeout passed to 
wait() ends up being negative.  That value, once cast to a DWORD, ultimately 
causes a very long wait (0xfffffff2, in my testing).

It does seem that only the Windows Popen._wait() cannot handle negative timeout 
values, so the fix should be as simple as coercing the timeout values to >= 0.

----------
Added file: https://bugs.python.org/file50623/process.py

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue46716>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to