Re: PANIC :Call AbortTransaction when transaction id is no normal

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Michael Paquier <michael(at)paquier(dot)xyz>
Cc: Kuntal Ghosh <kuntalghosh(dot)2007(at)gmail(dot)com>, Thunder <thunder1(at)126(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: PANIC :Call AbortTransaction when transaction id is no normal
Date: 2019-05-13 18:15:10
Message-ID: 5787.1557771310@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I wrote:
> If we do anything at all about this, my thought would just be to change
> bootstrap_signals() so that it points all the signal handlers at
> quickdie(), or maybe something equivalent to quickdie() but printing
> a more apropos message, or even just set them all to SIGDFL since that
> means process termination for all of these. die() isn't really the right
> thing, precisely because it thinks it can trigger transaction abort,
> which makes no sense in bootstrap mode.

After further thought I like the SIG_DFL answer, as per attached proposed
patch. With this, you get SIGINT behavior like this if you manage to
catch it in bootstrap mode (which is not that easy these days):

selecting default max_connections ... 100
selecting default shared_buffers ... 128MB
selecting default timezone ... America/New_York
creating configuration files ... ok
running bootstrap script ... ^Cchild process was terminated by signal 2: Interrupt
initdb: removing data directory "/home/postgres/testversion/data"

That seems perfectly fine from here.

> But ... that code's been like that for decades and nobody's complained
> before. Why are we worried about bootstrap's response to signals at all?

I'm still wondering why the OP cares. Still, the PANIC message that you
get right now is potentially confusing.

regards, tom lane

Attachment Content-Type Size
fix-bootstrap-signal-handling.patch text/x-diff 834 bytes

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Gierth 2019-05-13 18:39:14 Re: SQL-spec incompatibilities in similar_escape() and related stuff
Previous Message Robert Haas 2019-05-13 18:05:59 Re: POC: Cleaning up orphaned files using undo logs