Issue #25764: OS X now failing on the second setrlimit() call

This commit is contained in:
Martin Panter 2015-12-05 05:42:18 +00:00
parent 2d2af91da0
commit aa0780801c
1 changed files with 8 additions and 5 deletions

View File

@ -1520,14 +1520,17 @@ class POSIXProcessTestCase(BaseTestCase):
except ImportError as err:
self.skipTest(err) # RLIMIT_NPROC is specific to Linux and BSD
limits = getrlimit(RLIMIT_NPROC)
[_, hard] = limits
try:
setrlimit(RLIMIT_NPROC, limits)
setrlimit(RLIMIT_NPROC, (0, hard))
except ValueError as err:
# Seems to happen on AMD64 Snow Leop and x86-64 Yosemite buildbots
print(f"Setting NPROC to {limits!r}: {err!r}, RLIM_INFINITY={RLIM_INFINITY!r}")
self.skipTest("Setting existing NPROC limit failed")
[_, hard] = limits
setrlimit(RLIMIT_NPROC, (0, hard))
# Seems to happen on various OS X buildbots
print(
f"Setting NPROC failed: {err!r}, limits={limits!r}, "
f"RLIM_INFINITY={RLIM_INFINITY!r}, "
f"getrlimit() -> {getrlimit(RLIMIT_NPROC)!r}")
self.skipTest("Setting NPROC limit failed")
self.addCleanup(setrlimit, RLIMIT_NPROC, limits)
# Forking should raise EAGAIN, translated to BlockingIOError
with self.assertRaises(BlockingIOError):