[Python-checkins] cpython (3.4): Attempt to fix the "too many open files" errors on several of the

gregory.p.smith python-checkins at python.org
Mon Jun 2 00:16:25 CEST 2014


http://hg.python.org/cpython/rev/72211640519e
changeset: 90952:72211640519e
branch: 3.4
parent: 90950:784bd2c37d52
user: Gregory P. Smith <greg at krypto.org>
date: Sun Jun 01 15:15:44 2014 -0700
summary:
 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.
files:
 Lib/test/test_subprocess.py | 10 ++++++----
 1 files changed, 6 insertions(+), 4 deletions(-)
diff --git a/Lib/test/test_subprocess.py b/Lib/test/test_subprocess.py
--- a/Lib/test/test_subprocess.py
+++ b/Lib/test/test_subprocess.py
@@ -1933,13 +1933,15 @@
 
 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 @@
 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.
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /