Thread: pgsql/src backend/postmaster/postmaster.c back ...

pgsql/src backend/postmaster/postmaster.c back ...

From
Tom Lane
Date:
CVSROOT:    /home/projects/pgsql/cvsroot
Module name:    pgsql
Changes by:    tgl@hub.org    01/06/16 18:58:17

Modified files:
    src/backend/postmaster: postmaster.c
    src/backend/storage/ipc: sinval.c sinvaladt.c
    src/backend/storage/lmgr: proc.c
    src/backend/utils/init: postinit.c
    src/include/storage: proc.h

Log message:
    Tweak startup sequence so that running out of PROC array slots is
    detected sooner in backend startup, and is treated as an expected error
    (it gives 'Sorry, too many clients already' now).  This allows us not
    to have to enforce the MaxBackends limit exactly in the postmaster.
    Also, remove ProcRemove() and fold its functionality into ProcKill().
    There's no good reason for a backend not to be responsible for removing
    its PROC entry, and there are lots of good reasons for the postmaster
    not to be touching shared-memory data structures.