From 395d58c27cb2dd1070785f16d53eecd57af9e0e0 Mon Sep 17 00:00:00 2001 From: Erik Grinaker Date: Wed, 3 Jun 2020 11:34:25 +0200 Subject: [PATCH] docs: document open file limit in production guide (#4945) See e.g. https://github.com/tendermint/tendermint/issues/4925#issuecomment-637929251 for people getting hit by this. Should we document it elsewhere as well? --- docs/tendermint-core/running-in-production.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/docs/tendermint-core/running-in-production.md b/docs/tendermint-core/running-in-production.md index 548fb31bd..a369c5988 100644 --- a/docs/tendermint-core/running-in-production.md +++ b/docs/tendermint-core/running-in-production.md @@ -96,6 +96,11 @@ connection has `MaxPacketMsgPayloadSize`, which is the maximum packet size and bounded send & receive queues. One can impose restrictions on send & receive rate per connection (`SendRate`, `RecvRate`). +The number of open P2P connections can become quite large, and hit the operating system's open +file limit (since TCP connections are considered files on UNIX-based systems). Nodes should be +given a sizeable open file limit, e.g. 8192, via `ulimit -n 8192` or other deployment-specific +mechanisms. + ### RPC Endpoints returning multiple entries are limited by default to return 30 @@ -371,6 +376,8 @@ these limits. [Sysctls to tune the system to be able to open more connections](https://github.com/satori-com/tcpkali/blob/master/doc/tcpkali.man.md#sysctls-to-tune-the-system-to-be-able-to-open-more-connections) +The process file limits must also be increased, e.g. via `ulimit -n 8192`. + ...for N connections, such as 50k: ```