Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 3ccdeff

Browse files
committed
Doc: document possible need to raise kernel's somaxconn limit.
On fast machines, it's possible for applications such as pgbench to issue connection requests so quickly that the postmaster's listen queue overflows in the kernel, resulting in unexpected failures (with not-very-helpful error messages). Most modern OSes allow the queue size to be increased, so document how to do that. Per report from Kevin McKibbin. Discussion: https://postgr.es/m/CADc_NKg2d+oZY9mg4DdQdoUcGzN2kOYXBu-3--RW_hEe0tUV=g@mail.gmail.com
1 parent 384497f commit 3ccdeff

File tree

1 file changed

+16
-0
lines changed

1 file changed

+16
-0
lines changed

doc/src/sgml/runtime.sgml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1316,6 +1316,22 @@ default:\
13161316
linkend="guc-max-files-per-process"/> configuration parameter to
13171317
limit the consumption of open files.
13181318
</para>
1319+
1320+
<para>
1321+
Another kernel limit that may be of concern when supporting large
1322+
numbers of client connections is the maximum socket connection queue
1323+
length. If more than that many connection requests arrive within a very
1324+
short period, some may get rejected before the postmaster can service
1325+
the requests, with those clients receiving unhelpful connection failure
1326+
errors such as <quote>Resource temporarily unavailable</quote> or
1327+
<quote>Connection refused</quote>. The default queue length limit is 128
1328+
on many platforms. To raise it, adjust the appropriate kernel parameter
1329+
via <application>sysctl</application>, then restart the postmaster.
1330+
The parameter is variously named <varname>net.core.somaxconn</varname>
1331+
on Linux, <varname>kern.ipc.soacceptqueue</varname> on newer FreeBSD,
1332+
and <varname>kern.ipc.somaxconn</varname> on macOS and other BSD
1333+
variants.
1334+
</para>
13191335
</sect2>
13201336

13211337
<sect2 id="linux-memory-overcommit">

0 commit comments

Comments
 (0)