Re: Removing select(2) based latch (was Unportable implementation of background worker start)

Tom Lane <tgl@sss.pgh.pa.us>

From: Tom Lane <tgl@sss.pgh.pa.us>
To: Andres Freund <andres@anarazel.de>
Cc: Alvaro Herrera <alvherre@2ndquadrant.com>, pgsql-hackers@postgresql.org
Date: 2017-04-20T22:09:08Z
Lists: pgsql-hackers
I wrote:
> 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.

BTW, another amusing thing I just noted is that given a machine too old
to have poll(2), the existing coding would most likely fail outright,
because <sys/select.h> post-dates poll(2).  SUSv2 specifies including
<sys/time.h> to get select(2); apparently POSIX invented <sys/select.h>
around 2001.  gaur/pademelon indeed lacks <sys/select.h>, so it could
never have reached the WAIT_USE_SELECT implementation without some
readjustment of that #ifdef nest.

			regards, tom lane


Commits

  1. Don't include sys/poll.h anymore.

  2. Remove select(2) backed latch implementation.