windows: Adjust FD_SETSIZE via commandline define
authorAndres Freund <andres@anarazel.de>
Thu, 6 Oct 2022 20:03:31 +0000 (13:03 -0700)
committerAndres Freund <andres@anarazel.de>
Thu, 6 Oct 2022 20:09:57 +0000 (13:09 -0700)
commit4289263cf263ba36e474728f4a02ceb086903f81
tree0b6dab2c62d382af076630d08764f8d48ff48e08
parent0fa41648d77f04d5ad3ed69ff3e3903bd1abf121
windows: Adjust FD_SETSIZE via commandline define

When using precompiled headers, we cannot pre-define macros for the system
headers from within .c files, as headers are already processed before
the #define in the C file is reached. But we can pre-define using
-DFD_SETSIZE, as long as that's also used when building the precompiled header.

A few files #define FD_SETSIZE 1024 on windows, as the default is only 64. I
am hesitant to change FD_SETSIZE globally on windows, due to
src/backend/port/win32/socket.c using it to size on-stack arrays. Instead add
-DFD_SETSIZE=1024 when building the specific targets needing it.

We likely should move away from using select() in those places, but that's a
larger change.

Reviewed-by: Thomas Munro <thomas.munro@gmail.com>
Reviewed-by: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Reviewed-by: Justin Pryzby <pryzby@telsasoft.com>
Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us>
Discussion: https://postgr.es/m/20221005190829.lda7ttalh4mzrvf4@awork3.anarazel.de
Discussion: https://postgr.es/m/CA+hUKG+50eOUbN++ocDc0Qnp9Pvmou23DSXu=ZA6fepOcftKqA@mail.gmail.com
Discussion: https://postgr.es/m/20190826054000.GE7005%40paquier.xyz
src/bin/pgbench/Makefile
src/bin/pgbench/meson.build
src/bin/pgbench/pgbench.c
src/fe_utils/Makefile
src/fe_utils/meson.build
src/fe_utils/parallel_slot.c
src/tools/msvc/Mkvcbuild.pm