On Tue, Dec 7, 2021 at 12:09 PM Noah Misch <n...@leadboat.com> wrote: > > On Mon, Dec 06, 2021 at 06:21:40PM +0530, Bharath Rupireddy wrote: > > The function PreallocXlogFiles doesn't get called during > > end-of-recovery checkpoint in CreateCheckPoint, see [1]. The server > > becomes operational after the end-of-recovery checkpoint and may need > > WAL files. > > PreallocXlogFiles() is never a necessity; it's just an attempted optimization. > I expect preallocation at end-of-recovery would do more harm than good, > because the system would accept no writes at all while waiting for it.
Yeah. At times, end-of-recovery checkpoint itself will take a good amount of time and adding to it the pre-allocation of WAL time doesn't make sense. > > However, I'm not sure how beneficial it is going to be if > > the WAL is pre-allocated (as PreallocXlogFiles just allocates only 1 > > extra WAL file). > > Yeah, PreallocXlogFiles() feels like a relict from the same era that gave us > checkpoint_segments=3. It was more useful before commit 63653f7 (2002). I see. Regards, Bharath Rupireddy.