]> granicus.if.org Git - postgresql/commit
Fix mishandling of background worker PGPROCs in EXEC_BACKEND builds.
authorRobert Haas <rhaas@postgresql.org>
Wed, 30 Jul 2014 15:25:58 +0000 (11:25 -0400)
committerRobert Haas <rhaas@postgresql.org>
Wed, 30 Jul 2014 15:34:06 +0000 (11:34 -0400)
commite280c630a87e1b8325770c6073097d109d79a00f
tree5eaccc328330b234c60ac4624085c554e9abfb9f
parent232f1475dce23e2fdd0568b35e9a7c470ae6c8ae
Fix mishandling of background worker PGPROCs in EXEC_BACKEND builds.

InitProcess() relies on IsBackgroundWorker to decide whether the PGPROC
for a new backend should be taken from ProcGlobal's freeProcs or from
bgworkerFreeProcs.  In EXEC_BACKEND builds, InitProcess() is called
sooner than in non-EXEC_BACKEND builds, and IsBackgroundWorker wasn't
getting initialized soon enough.

Report by Noah Misch.  Diagnosis and fix by me.
src/backend/postmaster/postmaster.c