diff --git a/notebook/notebookapp.py b/notebook/notebookapp.py index 9170428ba1..fac00ef7f9 100755 --- a/notebook/notebookapp.py +++ b/notebook/notebookapp.py @@ -817,7 +817,7 @@ def _token_default(self): """ ) - min_open_files_limit = Integer(4096, config=True, + min_open_files_limit = Integer(config=True, help=""" Gets or sets a lower bound on the open file handles process resource limit. This may need to be increased if you run into an @@ -825,6 +825,22 @@ def _token_default(self): This is not applicable when running on Windows. """) + @default('min_open_files_limit') + def _default_min_open_files_limit(self): + if resource is None: + # Ignoring min_open_files_limit because the limit cannot be adjusted (for example, on Windows) + return None + + soft, hard = resource.getrlimit(resource.RLIMIT_NOFILE) + + DEFAULT_SOFT = 4096 + if hard >= DEFAULT_SOFT: + return DEFAULT_SOFT + + self.log.debug("Default value for min_open_files_limit is ignored (hard=%r, soft=%r)", hard, soft) + + return soft + @observe('token') def _token_changed(self, change): self._token_generated = False