You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by rn...@apache.org on 2019/09/25 08:29:48 UTC

[couchdb-documentation] branch erl_max_ports created (now a0027ff)

This is an automated email from the ASF dual-hosted git repository.

rnewson pushed a change to branch erl_max_ports
in repository https://gitbox.apache.org/repos/asf/couchdb-documentation.git.


      at a0027ff  Correct misleading commentary on ERL_MAX_PORTS

This branch includes the following new commits:

     new a0027ff  Correct misleading commentary on ERL_MAX_PORTS

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.



[couchdb-documentation] 01/01: Correct misleading commentary on ERL_MAX_PORTS

Posted by rn...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rnewson pushed a commit to branch erl_max_ports
in repository https://gitbox.apache.org/repos/asf/couchdb-documentation.git

commit a0027ff51f1b45abb8c590bf6b30331fbd7c7085
Author: Robert Newson <rn...@apache.org>
AuthorDate: Wed Sep 25 09:27:18 2019 +0100

    Correct misleading commentary on ERL_MAX_PORTS
    
    ERL_MAX_PORTS affects the number of Erlang ports allowed at once, and
    defaults to 1024. An Erlang port is created via erlang:open_port and
    is used to launch an executable like couchjs. It is not, directly, a
    limit on TCP sockets or file descriptors.
---
 src/install/troubleshooting.rst | 7 ++++---
 src/maintenance/performance.rst | 7 -------
 2 files changed, 4 insertions(+), 10 deletions(-)

diff --git a/src/install/troubleshooting.rst b/src/install/troubleshooting.rst
index acb5f8b..20011dd 100644
--- a/src/install/troubleshooting.rst
+++ b/src/install/troubleshooting.rst
@@ -201,9 +201,10 @@ but the short answer is that you should decrease ``ulimit -n`` or define
 
 erlang stack trace contains ``system_limit``, ``open_port``
 -----------------------------------------------------------
-Erlang has a default limit of 1024 ports, where each FD, tcp connection, and
-linked-in driver uses one port. You seem to have exceeded this. You can
-change it at runtime using the ``ERL_MAX_PORTS`` env variable.
+Erlang has a default limit of 1024 Erlang ports, where some internal
+components uses one Erlang port (the ICU driver, Javascript
+evaluation). You seem to have exceeded this. You can change it at
+runtime using the ``ERL_MAX_PORTS`` env variable.
 
 function raised exception (Cannot encode 'undefined' value as JSON)
 -------------------------------------------------------------------
diff --git a/src/maintenance/performance.rst b/src/maintenance/performance.rst
index defec5e..776d213 100644
--- a/src/maintenance/performance.rst
+++ b/src/maintenance/performance.rst
@@ -99,13 +99,6 @@ will be continuously replicating.
 Erlang
 ------
 
-Even if you've increased the maximum connections CouchDB will allow,
-the Erlang runtime system will not allow more than 1024 connections by
-default. Adding the following directive to ``(prefix)/etc/default/couchdb`` (or
-equivalent) will increase this limit (in this case to 4096)::
-
-    export ERL_MAX_PORTS=4096
-
 CouchDB versions up to 1.1.x also create Erlang Term Storage (`ETS`_) tables for
 each replication. If you are using a version of CouchDB older than 1.2 and
 must support many replications, also set the ``ERL_MAX_ETS_TABLES`` variable.