pgsql: Use unnamed POSIX semaphores on Cygwin.

From: Thomas Munro <tmunro(at)postgresql(dot)org>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Use unnamed POSIX semaphores on Cygwin.
Date: 2023-01-05 21:39:08
Message-ID: E1pDXx6-002Dz4-Bj@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Use unnamed POSIX semaphores on Cygwin.

Testing on CI showed that Cygwin's semctl() can fail with EAGAIN
(possibly due to resource limits in cygserver that could be tuned, not
examined). Switch to so-called POSIX semaphores instead, which don't
seem to fail in that way (possibly due to a more direct implementation
using Windows semaphore primitives instead of talking to cygserver,
based on a cursory glance at the source).

Other known problems still prevent PostgreSQL from running on Cygwin
without random crashes, but this rarer problem was noticed while
testing.

Discussion: https://postgr.es/m/CA%2BhUKG%2BQ6DU4Ov9LrvUyDcF3oHS4KMRVSKmVGaeePq-kOyG9gA%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/f2857af485a00ab5dbfa2c83af9d83afe4378239

Modified Files
--------------
meson.build | 1 +
src/template/cygwin | 5 +++++
2 files changed, 6 insertions(+)

Browse pgsql-committers by date

  From Date Subject
Next Message Thomas Munro 2023-01-06 04:06:40 pgsql: Fix pg_truncate() on Windows.
Previous Message Robert Haas 2023-01-05 19:35:20 pgsql: Pass down current user ID to AddRoleMems and DelRoleMems.