pgsql: Use a long lived WaitEventSet for WaitLatch(). - Mailing list pgsql-committers

From Thomas Munro
Subject pgsql: Use a long lived WaitEventSet for WaitLatch().
Date
Msg-id E1k11OW-0000YA-K7@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Use a long lived WaitEventSet for WaitLatch().

Create LatchWaitSet at backend startup time, and use it to implement
WaitLatch().  This avoids repeated epoll/kqueue setup and teardown
system calls.

Reorder SubPostmasterMain() slightly so that we restore the postmaster
pipe and Windows signal emulation before we reach InitPostmasterChild(),
to make this work in EXEC_BACKEND builds.

Reviewed-by: Kyotaro Horiguchi <horikyota.ntt@gmail.com>
Discussion: https://postgr.es/m/CA%2BhUKGJAC4Oqao%3DqforhNey20J8CiG2R%3DoBPqvfR0vOJrFysGw%40mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/3347c982bab0dd56d5b6cb784521233ba2bbac27

Modified Files
--------------
src/backend/postmaster/postmaster.c | 24 ++++++++--------
src/backend/storage/ipc/latch.c     | 56 ++++++++++++++++++++++++++++++++++---
src/backend/utils/init/miscinit.c   |  2 ++
src/include/storage/latch.h         |  1 +
4 files changed, 67 insertions(+), 16 deletions(-)


pgsql-committers by date:

Previous
From: Peter Geoghegan
Date:
Subject: pgsql: Backpatch tuplesort.c assertion.
Next
From: Michael Paquier
Date:
Subject: pgsql: doc: Mention index references in pg_inherits