Re: Add errdetail() with PID and UID about source of termination signal
Jakub Wartak <jakub.wartak@enterprisedb.com>
From: Jakub Wartak <jakub.wartak@enterprisedb.com>
To: Jim Jones <jim.jones@uni-muenster.de>
Cc: PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-02-23T13:28:40Z
Lists: pgsql-hackers
On Wed, Feb 18, 2026 at 5:08 PM Jim Jones <jim.jones@uni-muenster.de> wrote:
>
> Hi Jakub
>
> On 18/02/2026 08:32, Jakub Wartak wrote:
> > I would first like to learn if that would be a welcomed feature or not.
>
> +1
>
> I think it's a very useful feature (only tested on Linux)
>
> FATAL: terminating connection due to administrator command
> DETAIL: signal sent by PID 1592705, UID 1000.
Hi Jim, thanks for feedback :)
> I'm wondering if there is a standard style for displaying such values in
> DETAIL. For instance, the checkpoint LOG is formatted like this:
>
> LOG: checkpoint complete: ... write=0.044 s, sync=0.071 s, ...
>
> I'm not sure if it applies for DETAIL, but at least it's what the
> example at the error style guide[1] suggests:
>
> Detail: Failed syscall was shmget(key=%d, size=%u, 0%o).
After using `grep -hr errdetail src/ | sed -E 's/^\s+//g' | sort |
uniq` I doubt there is any
real standard, but one can find there:
errdetail("The server process with PID %d is among those with the
oldest transactions.", minPid)
errdetail("The source process with PID %d is not running anymore.",
One could say that all those DETAIL log messages should start with an
uppercase letter, yet it didn't look good to me when above
"terminating connection ..."
started itself with a lowercase letter "t", and then next-line DETAIL
we would start
with an uppercase
"Signal..".
but, I'm open to any better proposal...
-J.
Commits
Same data as JSON:
GET /api/v1/messages/:b64id/commits
the thread's linked commits as JSON, with link sources.
API reference →
-
Only show signal-sender PID/UID detail in server log
- b772f3fcad18 19 (unreleased) landed
-
Make psql DETAIL line test unconditionally optional.
- 446c400fd89b 19 (unreleased) landed
-
Rework signal handler infrastructure to pass sender info as argument.
- 3e2a1496bae6 19 (unreleased) landed
-
Add errdetail() with PID and UID about source of termination signal.
- 55890a919454 19 (unreleased) landed