pgsql: Create a multiplexing structure for signals to Postgres child - Mailing list pgsql-committers

From tgl@postgresql.org (Tom Lane)
Subject pgsql: Create a multiplexing structure for signals to Postgres child
Date
Msg-id 20090731202623.8079175331E@cvs.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
Create a multiplexing structure for signals to Postgres child processes.

This patch gets us out from under the Unix limitation of two user-defined
signal types.  We already had done something similar for signals directed to
the postmaster process; this adds multiplexing for signals directed to
backends and auxiliary processes (so long as they're connected to shared
memory).

As proof of concept, replace the former usage of SIGUSR1 and SIGUSR2
for backends with use of the multiplexing mechanism.  There are still some
hard-wired definitions of SIGUSR1 and SIGUSR2 for other process types,
but getting rid of those doesn't seem interesting at the moment.

Fujii Masao

Modified Files:
--------------
    pgsql/src/backend/bootstrap:
        bootstrap.c (r1.250 -> r1.251)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/bootstrap/bootstrap.c?r1=1.250&r2=1.251)
    pgsql/src/backend/commands:
        async.c (r1.148 -> r1.149)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/async.c?r1=1.148&r2=1.149)
    pgsql/src/backend/postmaster:
        autovacuum.c (r1.99 -> r1.100)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/autovacuum.c?r1=1.99&r2=1.100)
        bgwriter.c (r1.62 -> r1.63)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/bgwriter.c?r1=1.62&r2=1.63)
        walwriter.c (r1.7 -> r1.8)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/postmaster/walwriter.c?r1=1.7&r2=1.8)
    pgsql/src/backend/storage/ipc:
        Makefile (r1.21 -> r1.22)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/Makefile?r1=1.21&r2=1.22)
        ipci.c (r1.100 -> r1.101)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/ipci.c?r1=1.100&r2=1.101)
        sinval.c (r1.90 -> r1.91)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/sinval.c?r1=1.90&r2=1.91)
        sinvaladt.c (r1.78 -> r1.79)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/sinvaladt.c?r1=1.78&r2=1.79)
    pgsql/src/backend/tcop:
        postgres.c (r1.568 -> r1.569)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/postgres.c?r1=1.568&r2=1.569)
    pgsql/src/backend/utils/init:
        postinit.c (r1.192 -> r1.193)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/init/postinit.c?r1=1.192&r2=1.193)
    pgsql/src/include/bootstrap:
        bootstrap.h (r1.51 -> r1.52)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/bootstrap/bootstrap.h?r1=1.51&r2=1.52)
    pgsql/src/include/commands:
        async.h (r1.37 -> r1.38)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/async.h?r1=1.37&r2=1.38)
    pgsql/src/include/storage:
        sinval.h (r1.52 -> r1.53)
        (http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/sinval.h?r1=1.52&r2=1.53)

Added Files:
-----------
    pgsql/src/backend/storage/ipc:
        procsignal.c (r1.1)

(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/backend/storage/ipc/procsignal.c?rev=1.1&content-type=text/x-cvsweb-markup)
    pgsql/src/include/storage:
        procsignal.h (r1.1)

(http://anoncvs.postgresql.org/cvsweb.cgi/pgsql/src/include/storage/procsignal.h?rev=1.1&content-type=text/x-cvsweb-markup)

pgsql-committers by date:

Previous
From: alexk@pgfoundry.org (User Alexk)
Date:
Subject: deny-updates - trunk: Update 8.1 regression test results
Next
From: tgl@postgresql.org (Tom Lane)
Date:
Subject: pgsql: Improve unique-constraint-violation error messages to include the