> On 5 Sep 2023, at 12:59, PG Bug reporting form <noreply@postgresql.org> wrote:
> during make, compilation failed due to missing epoll_create1, compilation
> works in postgres 13.12
...
> configure set macro HAVE_SYS_EPOLL_H when sys/epoll.h is present
> and in src/backend/storageipc/latch.c
> HAVE_SYS_EPOLL_H define WAIT_USE_EPOLL
> and WAIT_USE_EPOLL use have 'epoll_create1' which is not present on the
> operating system, only first version is present 'epoll_create'
>
> I compared source code between 13.2 and 14.9 and I saw the ifdef
> EPOLL_CLOEXEC section was removed, which was a previous constraint which use
> epoll_create if not defined instead of epoll_create1 .
>
> Workaround
> As a workaround I found that i can set -DWAIT_USE_POLL during configure to
> use poll instead epoll but I think that's lead to performance issue.
Commit d1b90995e8d41df7e59efe48e98f26cd66baba9b and the pgsql-hackers thread
https://postgr.es/m/CA%2BhUKGKL_%3DaO%3Dr30N%3Ds9VoDgTqHpRSzePRbA9dkYO7snc7HsxA%40mail.gmail.com
provides background on that removal. RHEL 5 is not a supported target.
--
Daniel Gustafsson