]> granicus.if.org Git - postgresql/commit
On Darwin, detect and report a multithreaded postmaster.
authorNoah Misch <noah@leadboat.com>
Thu, 8 Jan 2015 03:35:44 +0000 (22:35 -0500)
committerNoah Misch <noah@leadboat.com>
Thu, 8 Jan 2015 03:40:40 +0000 (22:40 -0500)
commit1a366d51effd0e9f3301d68c2d3dce09c8c43d1f
treeffb5cbd67055a45f36ab2e2ab1ad2fb4136d00ff
parent230865e308f65d24d32aba1e6c1e4502b9047347
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).
configure
configure.in
src/backend/postmaster/postmaster.c
src/include/pg_config.h.in
src/port/exec.c