pgsql: On Darwin, detect and report a multithreaded postmaster. - Mailing list pgsql-committers

From Noah Misch
Subject pgsql: On Darwin, detect and report a multithreaded postmaster.
Date
Msg-id E1Y94MI-00058M-9F@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
On Darwin, detect and report a multithreaded postmaster.

Darwin --enable-nls builds use a substitute setlocale() that may start a
thread.  Buildfarm member orangutan experienced BackendList corruption
on account of different postmaster threads executing signal handlers
simultaneously.  Furthermore, a multithreaded postmaster risks undefined
behavior from sigprocmask() and fork().  Emit LOG messages about the
problem and its workaround.  Back-patch to 9.0 (all supported versions).

Branch
------
REL9_1_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/8dc83104edd476e39fb4d0091d0f1068ad5ea1a4

Modified Files
--------------
configure                           |    3 ++-
configure.in                        |    2 +-
src/backend/postmaster/postmaster.c |   43 +++++++++++++++++++++++++++++++++++
src/include/pg_config.h.in          |    3 +++
src/port/exec.c                     |   12 ++++++++++
5 files changed, 61 insertions(+), 2 deletions(-)


pgsql-committers by date:

Previous
From: Noah Misch
Date:
Subject: pgsql: Reject ANALYZE commands during VACUUM FULL or another ANALYZE.
Next
From: Noah Misch
Date:
Subject: pgsql: Always set the six locale category environment variables in main