Re: kevent latch paths don't handle postmaster death well
От | Thomas Munro |
---|---|
Тема | Re: kevent latch paths don't handle postmaster death well |
Дата | |
Msg-id | CA+hUKGKvy_o=gXkbDEnpmJL-PcihAv272v-R+tpX3SdA+NdGVg@mail.gmail.com обсуждение исходный текст |
Ответ на | kevent latch paths don't handle postmaster death well (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: kevent latch paths don't handle postmaster death well
|
Список | pgsql-hackers |
On Thu, Oct 15, 2020 at 7:58 AM Tom Lane <tgl@sss.pgh.pa.us> wrote: > We appear to have already realized that the postmaster died, since we're > inside proc_exit. WaitForBackgroundWorkerShutdown is doing this: > > rc = WaitLatch(MyLatch, > WL_LATCH_SET | WL_POSTMASTER_DEATH, 0, > WAIT_EVENT_BGWORKER_SHUTDOWN); > > which one would certainly hope would not block at all if the postmaster > is already dead, yet it's doing so. I guess that the kevent stuff is > failing to handle the case of another WaitLatch call after the postmaster > is already known dead. The process exit event is like an 'edge', not a 'level'... hmm. It might be enough to set report_postmaster_not_running = true the first time it tells us so if we try to wait again we'll treat it like a level. I will look into it later today.
В списке pgsql-hackers по дате отправления: