This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author neologix
Recipients neologix
Date 2012-12-24.10:23:54
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1356344635.01.0.0408386674119.issue16762@psf.upfronthosting.co.za>
In-reply-to
Content
test_subprocess fails on OpenBSD/NetBSD buildbots:
http://buildbot.python.org/all/builders/AMD64 NetBSD 5.1.2 [SB] 2.7/builds/158/steps/test/logs/stdio
"""

======================================================================
ERROR: test_kill_dead (test.test_subprocess.POSIXProcessTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/test/test_subprocess.py", line 940, in test_kill_dead
    self._kill_dead_process('kill')
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/test/test_subprocess.py", line 913, in _kill_dead_process
    getattr(p, method)(*args)
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/subprocess.py", line 1506, in kill
    self.send_signal(signal.SIGKILL)
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/subprocess.py", line 1496, in send_signal
    os.kill(self.pid, sig)
OSError: [Errno 3] No such process

======================================================================
ERROR: test_send_signal_dead (test.test_subprocess.POSIXProcessTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/test/test_subprocess.py", line 936, in test_send_signal_dead
    self._kill_dead_process('send_signal', signal.SIGINT)
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/test/test_subprocess.py", line 913, in _kill_dead_process
    getattr(p, method)(*args)
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/subprocess.py", line 1496, in send_signal
    os.kill(self.pid, sig)
OSError: [Errno 3] No such process

======================================================================
ERROR: test_terminate_dead (test.test_subprocess.POSIXProcessTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/test/test_subprocess.py", line 944, in test_terminate_dead
    self._kill_dead_process('terminate')
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/test/test_subprocess.py", line 913, in _kill_dead_process
    getattr(p, method)(*args)
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/subprocess.py", line 1501, in terminate
    self.send_signal(signal.SIGTERM)
  File "/home/cpython/buildslave/2.7.snakebite-netbsd51-amd64-1/build/Lib/subprocess.py", line 1496, in send_signal
    os.kill(self.pid, sig)
OSError: [Errno 3] No such process
"""

According to POSIX, kill shoudln't fail with ESRCH on a zombie processes:
"""
Existing implementations vary on the result of a kill() with pid indicating an inactive process (a terminated process that has not been waited for by its parent). Some indicate success on such a call (subject to permission checking), while others give an error of [ESRCH]. Since the definition of process lifetime in this volume of POSIX.1-2008 covers inactive processes, the [ESRCH] error as described is inappropriate in this case. In particular, this means that an application cannot have a parent process check for termination of a particular child with kill(). (Usually this is done with the null signal; this can be done reliably with waitpid().)
"""
History
Date User Action Args
2012-12-24 10:23:55neologixsetrecipients: + neologix
2012-12-24 10:23:55neologixsetmessageid: <1356344635.01.0.0408386674119.issue16762@psf.upfronthosting.co.za>
2012-12-24 10:23:54neologixlinkissue16762 messages
2012-12-24 10:23:54neologixcreate