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
Fix for failure in the benchmark_launch when using Process.wait twice (#2076)
- Address failure:
"child process pid 116528 exit status already read:
will report returncode 255" by avoiding usage Process.wait twice.
- Note: the second time Process.wait calling from the
def test_proc_terminates(self, last_benchmark):
# Wait for the last benchmark to complete before processing the results
self.proc_info.assertWaitForShutdown(process=last_benchmark,timeout=600)
- Explanation and RCA:
In Python 3.12, the internal implementation of process management and
resource cleanup (especially around wait() and exit status handling)
has become stricter and more robust. Double-waiting on a process
(calling wait() twice) can now trigger errors or warnings, such as
"exit status already read," because the exit status is only meant to be
consumed once. In Python 3.8, this was more permissive or silent,
but in newer versions, the subprocess module may raise exceptions or
log messages if you try to wait for a process whose exit status has
already been collected.
Signed-off-by: Michael Orlov <[email protected]>
0 commit comments