pgsql: Ignore SIGINT in walwriter and walsummarizer

From: Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi>
To: pgsql-committers(at)lists(dot)postgresql(dot)org
Subject: pgsql: Ignore SIGINT in walwriter and walsummarizer
Date: 2026-02-17 15:22:28
Message-ID: E1vsMuA-001I5U-37@gemulon.postgresql.org
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Ignore SIGINT in walwriter and walsummarizer

Previously, SIGINT was treated the same as SIGTERM in walwriter and
walsummarizer. That decision goes back to when the walwriter process
was introduced (commit ad4295728e04), and was later copied to
walsummarizer. It was a pretty arbitrary decision back then, and we
haven't adopted that convention in all the other processes that have
been introduced later.

Summary of how other processes respond to SIGINT:
- Autovacuum launcher: Cancel the current iteration of launching
- bgworker: Ignore (unless connected to a database)
- checkpointer: Request shutdown checkpoint
- bgwriter: Ignore
- pgarch: Ignore
- startup process: Ignore
- walreceiver: Ignore
- IO worker: die()

IO workers are a notable exception in that they exit on SIGINT, and
there's a documented reason for that: IO workers ignore SIGTERM, so
SIGINT provides a way to manually kill them. (They do respond to
SIGUSR2, though, like all the other processes that we don't want to
exit immediately on SIGTERM on operating system shutdown.)

To make this a little more consistent, ignore SIGINT in walwriter and
walsummarizer. They have no "query" to cancel, and they react to
SIGTERM just fine.

Reviewed-by: Andres Freund <andres(at)anarazel(dot)de>
Discussion: https://www.postgresql.org/message-id/818bafaf-1e77-4c78-8037-d7120878d87c@iki.fi

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/a92b809f9da100ed5cef9d6b6ce2edd576449521

Modified Files
--------------
src/backend/postmaster/walsummarizer.c | 5 +----
src/backend/postmaster/walwriter.c | 5 +----
2 files changed, 2 insertions(+), 8 deletions(-)

Browse pgsql-committers by date

  From Date Subject
Next Message Álvaro Herrera 2026-02-17 15:44:53 pgsql: Fix memory leak in new GUC check_hook
Previous Message Peter Eisentraut 2026-02-17 09:23:34 pgsql: Test most StaticAssert macros in C++ extensions