From: Pablo Galindo Salgado Date: Tue, 18 Nov 2025 02:26:40 +0000 (+0000) Subject: gh-140729: Fix subprocess handling in test_process_pool_executor_pickle (#141688) X-Git-Tag: v3.15.0a2~6 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4867f717e21c3b5f0ad0e81f950c69dac6c95e6e;p=thirdparty%2FPython%2Fcpython.git gh-140729: Fix subprocess handling in test_process_pool_executor_pickle (#141688) --- diff --git a/Lib/test/test_profiling/test_sampling_profiler.py b/Lib/test/test_profiling/test_sampling_profiler.py index 2d00173c22c4..c2cc2ddd48a0 100644 --- a/Lib/test/test_profiling/test_sampling_profiler.py +++ b/Lib/test/test_profiling/test_sampling_profiler.py @@ -3311,6 +3311,8 @@ if __name__ == "__main__": self.assertNotIn("", output) +@requires_subprocess() +@skip_if_not_supported class TestProcessPoolExecutorSupport(unittest.TestCase): """ Test that ProcessPoolExecutor works correctly with profiling.sampling. @@ -3339,12 +3341,15 @@ if __name__ == "__main__": "-d", "5", "-i", "100000", script, + stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True ) as proc: - proc.wait(timeout=SHORT_TIMEOUT) - stdout = proc.stdout.read() - stderr = proc.stderr.read() + try: + stdout, stderr = proc.communicate(timeout=SHORT_TIMEOUT) + except subprocess.TimeoutExpired: + proc.kill() + stdout, stderr = proc.communicate() if "PermissionError" in stderr: self.skipTest("Insufficient permissions for remote profiling")