On Mon, Feb 14, 2022 at 10:31 AM Dilip Kumar <dilipbalaut@gmail.com> wrote:
>
> On Sun, Feb 13, 2022 at 9:56 PM Robert Haas <robertmhaas@gmail.com> wrote:
> >
> > On Sun, Feb 13, 2022 at 1:34 AM Dilip Kumar <dilipbalaut@gmail.com> wrot>
> > > test4:
> > > 32 GB shared buffers, template DB size = 10GB, dirty shared buffer=70%
> > > Head: 47656 ms
> > > Patch: 79767 ms
> >
> > This seems like the most surprising result of the bunch. Here, the
> > template DB is both small enough to fit in shared_buffers and small
> > enough not to trigger a checkpoint all by itself, and yet the patch
> > loses.
>
> Well this is not really surprising to me because what I have noticed
> is that with the new approach the createdb time is completely
> dependent upon the template db size. So if the source db size is 10GB
> it is taking around 80sec and the shared buffers size does not have a
> major impact. Maybe a very small shared buffer can have more impact
> so I will test that as well.
I have done some more experiments just to understand where we are
spending most of the time. First I have tried with synchronous commit
and fsync off and the creation time dropped from 80s to 70s then I
just removed the log_newpage then time further dropped to 50s. I have
also tried with different shared buffer sizes and observed that
reducing or increasing the shared buffer size does not have much
impact on the created db with the new approach.
--
Regards,
Dilip Kumar
EnterpriseDB: http://www.enterprisedb.com