Fix elog(FATAL) before PostmasterMain() or just after fork().
authorNoah Misch <noah@leadboat.com>
Tue, 10 Dec 2024 21:51:59 +0000 (13:51 -0800)
committerNoah Misch <noah@leadboat.com>
Tue, 10 Dec 2024 21:52:02 +0000 (13:52 -0800)
commit315264d70128445fd53de199e16bb8aa562cf36f
tree08f64a8d9812fbc694fc9a86304946f87f945b25
parent4922ede979947bc2404e8675435184e61a57a530
Fix elog(FATAL) before PostmasterMain() or just after fork().

Since commit 97550c0711972a9856b5db751539bbaf2f88884c, these failed with
"PANIC:  proc_exit() called in child process" due to uninitialized or
stale MyProcPid.  That was reachable if close() failed in
ClosePostmasterPorts() or setlocale(category, "C") failed, both
unlikely.  Back-patch to v13 (all supported versions).

Discussion: http://postgr.es/m/20241208034614.45.nmisch@google.com
src/backend/main/main.c
src/backend/postmaster/fork_process.c
src/backend/postmaster/postmaster.c