pgsql: Fix compilation failure of vacuumdb and reindexdb with OpenBSD

From: Michael Paquier <michael(at)paquier(dot)xyz>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Fix compilation failure of vacuumdb and reindexdb with OpenBSD
Date: 2019-08-20 07:13:20
Message-ID: E1hzyKW-0007wj-IV@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Fix compilation failure of vacuumdb and reindexdb with OpenBSD

FD_SETSIZE is included in sys/select.h per POSIX, and this header
inclusion has been moved to scripts_parallel.c as of 5f38403 without
moving the variable, causing a compilation failure on recent versions of
OpenBSD (6.6 was the version used in the report).

In order to take care of the failure, move FD_SETSIZE directly to
scripts_parallel.c with a wrapper controlling the maximum number of
parallel slots supported, based on a suggestion by Andres Freund.

While on it, reduce the maximum number to be less than FD_SETSIZE,
leaving some room for stdin, stdout and such as they consume some file
descriptors.

The buildfarm did not complain about that, as it happens to only be
an issue on recent versions of OpenBSD and there is no coverage in this
area. 51c3e9f fixed a similar set of issues.

Bug: #15964
Reported-by: Sean Farrell
Discussion: https://postgr.es/m/15964-c1753bdfed722e04@postgresql.org

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/56f8f9624ba050c7c47dd97547b7fafb866f2bdd

Modified Files
--------------
src/bin/scripts/reindexdb.c | 4 ++--
src/bin/scripts/scripts_parallel.c | 14 ++++++++++++++
src/bin/scripts/scripts_parallel.h | 2 ++
src/bin/scripts/vacuumdb.c | 4 ++--
4 files changed, 20 insertions(+), 4 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Alvaro Herrera 2019-08-20 20:23:35 pgsql: Fix bogus comment
Previous Message Michael Paquier 2019-08-20 04:47:17 pgsql: Doc: Fix various typos