Re: [HACKERS] PATCH: Keep one postmaster monitoring pipe per process

Поиск
Список
Период
Сортировка
От Heikki Linnakangas
Тема Re: [HACKERS] PATCH: Keep one postmaster monitoring pipe per process
Дата
Msg-id 6417314e-93d5-ed2d-9012-8d6e9ed21778@iki.fi
обсуждение исходный текст
Ответ на Re: [HACKERS] PATCH: Keep one postmaster monitoring pipe per process  (Thomas Munro <thomas.munro@enterprisedb.com>)
Ответы Re: [HACKERS] PATCH: Keep one postmaster monitoring pipe per process  (Thomas Munro <thomas.munro@enterprisedb.com>)
Список pgsql-hackers
On 18/04/18 09:55, Thomas Munro wrote:
> Here's a draft patch that does that.  One contentious question is:
> should you have to opt *in* to auto-exit-on-postmaster death?  Andres
> opined that you should.  I actually think it's not so bad if you don't
> have to do that, and instead have to opt out.  I think of it as a kind
> of 'process cancellation point' or a quiet PANIC that you can opt out
> of.  It's nice to remove the old boilerplate code without having to
> add a new boilerplate event that you have to remember every time.  Any
> other opinions?

Hmm. Exiting on postmaster death by default does feel a bit too magical 
to me. But as your patch points out, there are currently no places where 
you *don't* want to exit on postmaster death, some callers just prefer 
to handle it themselves. And I like having a default or something to 
make sure that all call sites in the future will also exit quickly.

I'd suggest that we add a new WL_EXIT_ON_POSTMASTER_DEATH flag, making 
it opt-on. But add an assertion in WaitLatchOrSocket:

Assert ((wakeEvents & (WL_EXIT_POSTMASTER_DEATH | WL_POSTMASTER_DEATH)) 
!= 0);

That ensures that all callers either use WL_EXIT_ON_POSTMASTER_DEATH, or 
WL_POSTMASTER_DEATH to handle it in the caller. Having to specify 
WL_EXIT_ON_POSTMASTER_DEATH reminds you that the call might exit(), so 
if that's not what you want, you need to do something else. But the 
assertion makes sure that all callers deal with postmaster death in some 
way.

- Heikki


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Alvaro Herrera
Дата:
Сообщение: Re: Cannot dump foreign key constraints on partitioned table
Следующее
От: Christophe Pettus
Дата:
Сообщение: Re: requested timeline ... does not contain minimum recovery point...