Up nproc limit on startup.
Separate out setrlimit calls for specific exception handling. Closes-Bug: #1264561 Change-Id: I5588f19f8d0393409580d17317727977758d5cb3
This commit is contained in:
parent
f088b38565
commit
d1dd143952
@ -48,6 +48,7 @@ WARNING_WAIT = 3 # seconds to wait after message that may just be a warning
|
||||
|
||||
MAX_DESCRIPTORS = 32768
|
||||
MAX_MEMORY = (1024 * 1024 * 1024) * 2 # 2 GB
|
||||
MAX_PROCS = 8192 # workers * disks * threads_per_disk, can get high
|
||||
|
||||
|
||||
def setup_env():
|
||||
@ -56,10 +57,22 @@ def setup_env():
|
||||
try:
|
||||
resource.setrlimit(resource.RLIMIT_NOFILE,
|
||||
(MAX_DESCRIPTORS, MAX_DESCRIPTORS))
|
||||
except ValueError:
|
||||
print _("WARNING: Unable to modify file descriptor limit. "
|
||||
"Running as non-root?")
|
||||
|
||||
try:
|
||||
resource.setrlimit(resource.RLIMIT_DATA,
|
||||
(MAX_MEMORY, MAX_MEMORY))
|
||||
except ValueError:
|
||||
print _("WARNING: Unable to increase file descriptor limit. "
|
||||
print _("WARNING: Unable to modify memory limit. "
|
||||
"Running as non-root?")
|
||||
|
||||
try:
|
||||
resource.setrlimit(resource.RLIMIT_NPROC,
|
||||
(MAX_PROCS, MAX_PROCS))
|
||||
except ValueError:
|
||||
print _("WARNING: Unable to modify max process limit. "
|
||||
"Running as non-root?")
|
||||
|
||||
# Set PYTHON_EGG_CACHE if it isn't already set
|
||||
|
@ -105,6 +105,8 @@ class TestManagerModule(unittest.TestCase):
|
||||
manager.MAX_DESCRIPTORS)),
|
||||
(resource.RLIMIT_DATA, (manager.MAX_MEMORY,
|
||||
manager.MAX_MEMORY)),
|
||||
(resource.RLIMIT_NPROC, (manager.MAX_PROCS,
|
||||
manager.MAX_PROCS)),
|
||||
]
|
||||
self.assertEquals(manager.resource.called_with_args, expected)
|
||||
self.assertTrue(
|
||||
|
Loading…
x
Reference in New Issue
Block a user