Re: Stefan's bug (was: max_standby_delay considered harmful)
| От | Fujii Masao |
|---|---|
| Тема | Re: Stefan's bug (was: max_standby_delay considered harmful) |
| Дата | |
| Msg-id | AANLkTikWt21uZelewDV4CMFUiE-a-BnsNdKPYEsFjhIZ@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: Stefan's bug (was: max_standby_delay considered harmful) (Robert Haas <robertmhaas@gmail.com>) |
| Ответы |
Re: Stefan's bug (was: max_standby_delay considered harmful)
Re: Stefan's bug (was: max_standby_delay considered harmful) |
| Список | pgsql-hackers |
On Mon, May 17, 2010 at 10:20 PM, Robert Haas <robertmhaas@gmail.com> wrote: > OK, I think I understand now. But, the SIGTERM sent by the postmaster > doesn't kill the recovery process unconditionally. It will invoke > StartupProcShutdownHandler(), which will set set shutdown_requested = > true. That gets checked by RestoreArchivedFile() and > HandleStartupProcInterrupts(), and I think that neither of those can > get invoked until after the control file has been updated. Do you see > a way it can happen? Yeah, the way is: StartupXLOG() --> ReadCheckpointRecord() --> ReadRecord() --> XLogPageRead() --> XLogFileReadAnyTLI() --> XLogFileRead() --> RestoreArchivedFile() ReadCheckpointRecord() is called before pg_control is updated. ISTM that walreceiver might be invoked even after shutdown is requested. We should prevent the postmaster from starting up walreceiver if Shutdown > NoShutdown? Regards, -- Fujii Masao NIPPON TELEGRAPH AND TELEPHONE CORPORATION NTT Open Source Software Center
В списке pgsql-hackers по дате отправления: