]> granicus.if.org Git - python/commitdiff
Issue #25764: Attempt to debug and skip OS X setrlimit() failure
authorMartin Panter <vadmium+py@gmail.com>
Sat, 5 Dec 2015 04:16:45 +0000 (04:16 +0000)
committerMartin Panter <vadmium+py@gmail.com>
Sat, 5 Dec 2015 04:16:45 +0000 (04:16 +0000)
Lib/test/test_subprocess.py

index 0448d643cf50d57aea0b4e5f18e80e18121fe0c2..b68def50b39ca0c8a31b6a38b16603fe7bf08248 100644 (file)
@@ -1516,10 +1516,16 @@ class POSIXProcessTestCase(BaseTestCase):
         # The internal code did not preserve the previous exception when
         # re-enabling garbage collection
         try:
-            from resource import getrlimit, setrlimit, RLIMIT_NPROC
+            from resource import getrlimit, setrlimit, RLIMIT_NPROC, RLIM_INFINITY
         except ImportError as err:
             self.skipTest(err)  # RLIMIT_NPROC is specific to Linux and BSD
         limits = getrlimit(RLIMIT_NPROC)
+        try:
+            setrlimit(RLIMIT_NPROC, limits)
+        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))
         self.addCleanup(setrlimit, RLIMIT_NPROC, limits)