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_2_STABLE
Details
-------
http://git.postgresql.org/pg/commitdiff/5ca4e444cb228faaaff8d6cf5719167410078537
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(-)