]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Use _exit(2) for SIGQUIT during ProcessStartupPacket, too.
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 10 Sep 2020 16:06:26 +0000 (12:06 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 10 Sep 2020 16:06:26 +0000 (12:06 -0400)
commitac695b8f2d11604d83a1d0cd45b524314eb58b97
treecb4d509d638b028b9e1c0a9c64aba023663943d7
parentddbb18743fd15bd8b17551ca79f3dc79dd1398d2
Use _exit(2) for SIGQUIT during ProcessStartupPacket, too.

Bring the signal handling for startup-packet collection into line
with the policy established in commits bedadc732 and 8e19a8264,
namely don't risk running atexit callbacks when handling SIGQUIT.

Ideally, we'd not do so for SIGTERM or timeout interrupts either,
but that change seems a bit too risky for the back branches.
For now, just improve the comments in this area to describe the risk.

Also relocate where BackendInitialize re-disables these interrupts,
to minimize the code span where they're active.  This doesn't buy
a whole lot of safety, but it can't hurt.

In passing, rename startup_die() to remove confusion about whether
it is for the startup process.

Like the previous commits, back-patch to all supported branches.

Discussion: https://postgr.es/m/1850884.1599601164@sss.pgh.pa.us
src/backend/postmaster/postmaster.c