summaryrefslogtreecommitdiffstats
path: root/Lib
diff options
context:
space:
mode:
authorGregory P. Smith <greg@krypto.org>2014-06-01 22:16:16 (GMT)
committerGregory P. Smith <greg@krypto.org>2014-06-01 22:16:16 (GMT)
commit69b778df5dd628f3d8342d8577a1487a80a1d98c (patch)
tree38f7b0f2342ac11233389a739d9e02a0e4dda9e6 /Lib
parent45f31d14920dd86183f2358389640559b1f79263 (diff)
parent8fed4deb44da3be1fb70b6b413580445066cb88b (diff)
downloadcpython-69b778df5dd628f3d8342d8577a1487a80a1d98c.zip
cpython-69b778df5dd628f3d8342d8577a1487a80a1d98c.tar.gz
cpython-69b778df5dd628f3d8342d8577a1487a80a1d98c.tar.bz2
Attempt to fix the "too many open files" errors on several of the
buildbots that the new test_close_fds_when_max_fd_is_lowered test causes. It now leaves 10 more low fd's available.
Diffstat (limited to 'Lib')
-rw-r--r--Lib/test/test_subprocess.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py
index 8aa436e..eb5f49c 100644
--- a/Lib/test/test_subprocess.py
+++ b/Lib/test/test_subprocess.py
@@ -1933,13 +1933,15 @@ class POSIXProcessTestCase(BaseTestCase):
open_fds = set()
# Add a bunch more fds to pass down.
- for _ in range(10):
+ for _ in range(40):
fd = os.open("/dev/null", os.O_RDONLY)
open_fds.add(fd)
# Leave a two pairs of low ones available for use by the
# internal child error pipe and the stdout pipe.
- for fd in sorted(open_fds)[:4]:
+ # We also leave 10 more open as some Python buildbots run into
+ # "too many open files" errors during the test if we do not.
+ for fd in sorted(open_fds)[:14]:
os.close(fd)
open_fds.remove(fd)
@@ -1952,8 +1954,8 @@ class POSIXProcessTestCase(BaseTestCase):
import resource
rlim_cur, rlim_max = resource.getrlimit(resource.RLIMIT_NOFILE)
try:
- # 9 is lower than the highest fds we are leaving open.
- resource.setrlimit(resource.RLIMIT_NOFILE, (9, rlim_max))
+ # 29 is lower than the highest fds we are leaving open.
+ resource.setrlimit(resource.RLIMIT_NOFILE, (29, rlim_max))
# Launch a new Python interpreter with our low fd rlim_cur that
# inherits open fds above that limit. It then uses subprocess
# with close_fds=True to get a report of open fds in the child.