Re: [HACKERS] Removing select(2) based latch (was Unportable implementation of background worker start) - Mailing list pgsql-hackers

From Tom Lane
Subject Re: [HACKERS] Removing select(2) based latch (was Unportable implementation of background worker start)
Date
Msg-id 20505.1492723662@sss.pgh.pa.us
Whole thread Raw
In response to [HACKERS] Removing select(2) based latch (was Unportable implementation ofbackground worker start)  (Andres Freund <andres@anarazel.de>)
Responses Re: [HACKERS] Removing select(2) based latch (was Unportableimplementation of background worker start)  (Andres Freund <andres@anarazel.de>)
Re: [HACKERS] Removing select(2) based latch (was Unportable implementation of background worker start)  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: [HACKERS] Removing select(2) based latch (was Unportableimplementation of background worker start)  (Andres Freund <andres@anarazel.de>)
List pgsql-hackers
Andres Freund <andres@anarazel.de> writes:
> On 2017-04-19 20:06:05 -0400, Tom Lane wrote:
>> We should check the buildfarm to see if the select() implementation is
>> being tested at all.

> I verified it's currently not (unless I made a mistake):

I did my own checking, and concur that only the MinGW buildfarm members
are reporting lacking poll(2) or poll.h.  Since they also report lacking
sys/select.h, they must be falling through to the WAIT_USE_WIN32
implementation.  So the WAIT_USE_SELECT implementation is going untested
in the buildfarm, and has been since before the WaitEventSet API existed
(I checked buildfarm records back to the start of 2016).

Aside from that empirical observation, we can make a standards-compliance
argument, which is that both poll(2) and poll.h are required by the Single
Unix Spec v2 (a/k/a POSIX 1997), which is what we've been taking as our
baseline requirement for Unix platforms for ten or fifteen years now.

In short: yeah, let's nuke the WAIT_USE_SELECT implementation.
It's dead code and it's unlikely to get resurrected.

BTW, noting that SUSv2 specifies <poll.h> not <sys/poll.h>, I wonder
whether we couldn't drop configure's test for the latter along with
the

#ifdef HAVE_SYS_POLL_H
#include <sys/poll.h>
#endif

stanzas we have in a couple of places.  But that's a separate issue.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Peter Eisentraut
Date:
Subject: Re: [HACKERS] DROP SUBSCRIPTION, query cancellations and slothandling
Next
From: Peter Eisentraut
Date:
Subject: Re: [HACKERS] DROP SUBSCRIPTION, query cancellations and slothandling