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 15:17:56 UTC

[couchdb-documentation] branch revert-erl_max_ports created (now cb719c1)

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

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


      at cb719c1  Revert "Correct misleading commentary on ERL_MAX_PORTS"

This branch includes the following new commits:

     new cb719c1  Revert "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: Revert "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 revert-erl_max_ports
in repository https://gitbox.apache.org/repos/asf/couchdb-documentation.git

commit cb719c1924e05423c2a9145329d2dd22cde02304
Author: Robert Newson <rn...@apache.org>
AuthorDate: Wed Sep 25 16:17:27 2019 +0100

    Revert "Correct misleading commentary on ERL_MAX_PORTS"
    
    This reverts commit f6b5f742f0f6d337b2c9895b3f42d8b05533a695.
    
    I was wrong.
---
 src/install/troubleshooting.rst | 7 +++----
 src/maintenance/performance.rst | 7 +++++++
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/src/install/troubleshooting.rst b/src/install/troubleshooting.rst
index 36eb430..a2e9496 100644
--- a/src/install/troubleshooting.rst
+++ b/src/install/troubleshooting.rst
@@ -201,10 +201,9 @@ 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 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.
+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.
 
 function raised exception (Cannot encode 'undefined' value as JSON)
 -------------------------------------------------------------------
diff --git a/src/maintenance/performance.rst b/src/maintenance/performance.rst
index 776d213..defec5e 100644
--- a/src/maintenance/performance.rst
+++ b/src/maintenance/performance.rst
@@ -99,6 +99,13 @@ 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.