If the segment size is 16MB it shouldn't take much time but higher segment values this can be a problem. But again, the current segment has to be filled 75% to precreate new one. I am not sure how much we gain. Do you have some numbers with different segment sizes?
On Mon, Dec 6, 2021 at 4:51 AM Bharath Rupireddy < bharath.rupireddyforpostg...@gmail.com> wrote: > Hi, > > 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. 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). > > Thoughts? > > [1] > /* > * An end-of-recovery checkpoint is really a shutdown checkpoint, just > * issued at a different time. > */ > if (flags & (CHECKPOINT_IS_SHUTDOWN | CHECKPOINT_END_OF_RECOVERY)) > shutdown = true; > else > shutdown = false; > > /* > * Make more log segments if needed. (Do this after recycling old log > * segments, since that may supply some of the needed files.) > */ > if (!shutdown) > PreallocXlogFiles(recptr, checkPoint.ThisTimeLineID); > > Regards, > Bharath Rupireddy. > > >