Re: Parallel worker hangs while handling errors.
Robert Haas <robertmhaas@gmail.com>
From: Robert Haas <robertmhaas@gmail.com>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2020-08-07T18:15:35Z
Lists: pgsql-hackers
On Fri, Aug 7, 2020 at 2:00 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > The point of the sigdelset is that if somewhere later on, we install > the BlockSig mask, then SIGQUIT will remain unblocked. I mean, we're just repeating the same points here, but that's not what the comment says. > You asserted > upthread that noplace in these processes ever does so; maybe that's > true today, or maybe not, It's easily checked using 'git grep'. > but the intent of this code is that *once > we get through initialization* SIGQUIT will remain unblocked. I can't speak to the intent, but I can speak to what the comment says. > I'll concede that it's not 100% clear whether or not these processes > need to re-block SIGQUIT during error recovery. I think it's entirely clear that they do not, and I have explained my reasoning already. > I repeat, though, > that I'm disinclined to change that without some evidence that there's > actually a problem with the way it works now. I've also already explained why I don't agree with this perspective. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Centralize setup of SIGQUIT handling for postmaster child processes.
- 44fc6e259b79 14.0 landed
-
Accept SIGQUIT during error recovery in auxiliary processes.
- 7634bd4f6d38 14.0 landed
-
Avoid lockup of a parallel worker when reporting a long error message.
- be4b0c0077e6 14.0 landed
- 82dd373f2c56 12.5 landed
- 526df0a236df 11.10 landed
- 3738651f5b82 9.5.24 landed
- 2a938c7935cf 10.15 landed
- 2500e51e7bdc 9.6.20 landed
- 17424e79d979 13.0 landed