pg_waldump: Emit stats summary when interrupted by SIGINT

Michael Paquier <michael@paquier.xyz>

Commit: f2c52eeba919a1b191f60445001371bd7c53aaa9
Author: Michael Paquier <michael@paquier.xyz>
Date: 2021-12-02T04:52:16Z
Releases: 15.0
pg_waldump: Emit stats summary when interrupted by SIGINT

Previously, pg_waldump would not display its statistics summary if it
got interrupted by SIGINT (or say a simple Ctrl+C).  It gains with this
commit a signal handler for SIGINT, trapping the signal to exit at the
earliest convenience to allow a display of the stats summary before
exiting.  This makes the reports more interactive, similarly to strace
-c.

This new behavior makes the combination of the options --stats and
--follow much more useful, so as the user will get a report for any
invocation of pg_waldump in such a case.  Information about the LSN
range of the stats computed is added as a header to the report
displayed.

This implementation comes from a suggestion by Álvaro Herrera and
myself, following a complaint by the author of this patch about --stats
and --follow not being useful together originally.

As documented, this is not supported on Windows, though its support
would be possible by catching the terminal events associated to Ctrl+C,
for example (this may require a more centralized implementation, as
other tools could benefit from a common API).

Author: Bharath Rupireddy
Discussion: https://postgr.es/m/CALj2ACUUx3PcK2z9h0_m7vehreZAUbcmOky9WSEpe8TofhV=PQ@mail.gmail.com

Files

PathChange+/−
doc/src/sgml/ref/pg_waldump.sgml modified +9 −0
src/bin/pg_waldump/pg_waldump.c modified +48 −0

Documentation touched

Discussion