Don't spuriously report FD_SETSIZE exhaustion on Windows.
authorNoah Misch <noah@leadboat.com>
Sat, 14 Oct 2023 22:54:46 +0000 (15:54 -0700)
committerNoah Misch <noah@leadboat.com>
Sat, 14 Oct 2023 22:54:46 +0000 (15:54 -0700)
commit90ebcc32d9829204bfd15db82ece3aacd84f40d6
tree56f50e81ade858594ff9367ef493d7567784646d
parentfcdd6689d09c3950efa8a79db872f507069adb92
Don't spuriously report FD_SETSIZE exhaustion on Windows.

Starting on 2023-08-03, this intermittently terminated a "pgbench -C"
test in CI.  It could affect a high-client-count "pgbench" without "-C".
While parallel reindexdb and vacuumdb reach the same problematic check,
sufficient client count and/or connection turnover is less plausible for
them.  Given the lack of examples from the buildfarm or from manual
builds, reproducing this must entail rare operating system
configurations.  Also correct the associated error message, which was
wrong for non-Windows.  Back-patch to v12, where the pgbench check first
appeared.  While v11 vacuumdb has the problematic check, reaching it
with typical vacuumdb usage is implausible.

Reviewed by Thomas Munro.

Discussion: https://postgr.es/m/CA+hUKG+JwvTNdcyJTriy9BbtzF1veSRQ=9M_ZKFn9_LqE7Kp7Q@mail.gmail.com
src/bin/pgbench/pgbench.c
src/fe_utils/parallel_slot.c