Re: Handing off SLRU fsyncs to the checkpointer
От | Thomas Munro |
---|---|
Тема | Re: Handing off SLRU fsyncs to the checkpointer |
Дата | |
Msg-id | CA+hUKG+cffBxq9-Yf+nsJpJPP6RZypBttBtb5UJqnYMb+sHqLg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Handing off SLRU fsyncs to the checkpointer (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: Handing off SLRU fsyncs to the checkpointer
|
Список | pgsql-hackers |
On Fri, Sep 25, 2020 at 12:05 PM Tom Lane <tgl@sss.pgh.pa.us> wrote: > Thomas Munro <thomas.munro@gmail.com> writes: > > Tom, do you have any thoughts on ShutdownCLOG() etc? > > Hm, if we cannot reach that without first completing a shutdown checkpoint, > it does seem a little pointless. Thanks for the sanity check. > It'd likely be a good idea to add a comment to CheckPointCLOG et al > explaining that we expect $what-exactly to fsync the data we are writing > before the checkpoint is considered done. Good point. Done like this: + /* + * Write dirty CLOG pages to disk. This may result in sync requests queued + * for later handling by ProcessSyncRequests(), as part of the checkpoint. + */ TRACE_POSTGRESQL_CLOG_CHECKPOINT_START(true); - SimpleLruFlush(XactCtl, true); + SimpleLruWriteAll(XactCtl, true); TRACE_POSTGRESQL_CLOG_CHECKPOINT_DONE(true); Here's a new version. The final thing I'm contemplating before pushing this is whether there may be hidden magical dependencies in the order of operations in CheckPointGuts(), which I've changed around. Andres, any comments?
Вложения
В списке pgsql-hackers по дате отправления: