windows: Adjust FD_SETSIZE via commandline define

Andres Freund <andres@anarazel.de>

Commit: 4289263cf263ba36e474728f4a02ceb086903f81
Author: Andres Freund <andres@anarazel.de>
Date: 2022-10-06T20:09:57Z
Releases: 16.0
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

Files

PathChange+/−
src/bin/pgbench/Makefile modified +2 −0
src/bin/pgbench/meson.build modified +1 −0
src/bin/pgbench/pgbench.c modified +2 −2
src/fe_utils/Makefile modified +4 −0
src/fe_utils/meson.build modified +1 −0
src/fe_utils/parallel_slot.c modified +2 −2
src/tools/msvc/Mkvcbuild.pm modified +19 −8

Discussion

Cited messages not in the archive: 20190826054000.GE7005@paquier.xyz