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 13:37:32 |
Message-ID: | 15939.1557754652@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Michael Paquier <michael(at)paquier(dot)xyz> writes:
> On Mon, May 13, 2019 at 01:25:19PM +0530, Kuntal Ghosh wrote:
>> If we fix the issue in this way, we're certainly not going to do all
>> those portal,locks,memory,resource owner cleanups that are done
>> inside AbortTransaction() for a normal transaction ID. But, I'm not
>> sure how relevant those steps are since the database is anyway
>> shutting down.
> And it is happening in bootstrap, meaning that the data folder is most
> likely toast, and needs to be reinitialized.
Indeed, initdb is going to remove the data directory if the bootstrap run
crashes.
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.
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?
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | David Rowley | 2019-05-13 13:46:00 | Re: Passing CopyMultiInsertInfo structure to CopyMultiInsertInfoNextFreeSlot() |
Previous Message | Jonathan S. Katz | 2019-05-13 12:54:47 | Re: PostgreSQL 12: Feature Highlights |