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

Skip to content

Commit 1a9c3ff

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 a0d87e2 commit 1a9c3ff

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
@@ -1343,6 +1343,22 @@ default:\
13431343
linkend="guc-max-files-per-process"> configuration parameter to
13441344
limit the consumption of open files.
13451345
</para>
1346+
1347+
<para>
1348+
Another kernel limit that may be of concern when supporting large
1349+
numbers of client connections is the maximum socket connection queue
1350+
length. If more than that many connection requests arrive within a very
1351+
short period, some may get rejected before the postmaster can service
1352+
the requests, with those clients receiving unhelpful connection failure
1353+
errors such as <quote>Resource temporarily unavailable</quote> or
1354+
<quote>Connection refused</quote>. The default queue length limit is 128
1355+
on many platforms. To raise it, adjust the appropriate kernel parameter
1356+
via <application>sysctl</application>, then restart the postmaster.
1357+
The parameter is variously named <varname>net.core.somaxconn</varname>
1358+
on Linux, <varname>kern.ipc.soacceptqueue</varname> on newer FreeBSD,
1359+
and <varname>kern.ipc.somaxconn</varname> on macOS and other BSD
1360+
variants.
1361+
</para>
13461362
</sect2>
13471363

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

0 commit comments

Comments
 (0)