pgsql: Never crash-and-restart for bgworkers without shared memory acce

From: Robert Haas <rhaas(at)postgresql(dot)org>
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Never crash-and-restart for bgworkers without shared memory acce
Date: 2014-05-07 17:29:24
Message-ID: E1Wi5em-0007HG-Gy@gemulon.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Never crash-and-restart for bgworkers without shared memory access.

The motivation for a crash and restart cycle when a backend dies is
that it might have corrupted shared memory on the way down; and we
can't recover reliably except by reinitializing everything. But that
doesn't apply to processes that don't touch shared memory. Currently,
there's nothing to prevent a background worker that doesn't request
shared memory access from touching shared memory anyway, but that's a
separate bug.

Previous to this commit, the coding in postmaster.c was inconsistent:
an exit status other than 0 or 1 didn't provoke a crash-and-restart,
but failure to release the postmaster child slot did. This change
makes those cases consistent.

Branch
------
master

Details
-------
http://git.postgresql.org/pg/commitdiff/e2ce9aa27bf20eff2d991d0267a15ea5f7024cd7

Modified Files
--------------
src/backend/postmaster/postmaster.c | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2014-05-07 18:25:53 pgsql: Fix failure to set ActiveSnapshot while rewinding a cursor.
Previous Message Jeff Davis 2014-05-07 04:50:27 Re: pgsql: Fix interval test, which was broken for floating-point timestamp