Greetings,
* Andrey M. Borodin (x4mmm@yandex-team.ru) wrote:
> > 18 сент. 2020 г., в 11:59, Michael Paquier <michael@paquier.xyz> написал(а):
> > On Fri, Sep 18, 2020 at 11:31:26AM +0500, Andrey M. Borodin wrote:
> >> This is whole point of having prefetch. restore_command just links
> >> file from the same partition.
> >
> > If this stuff is willing to do so, you may have your reasons, but even
> > if you wish to locate both pg_wal/ and the prefetch path in the same
> > partition, I don't get why it is necessary to have the prefetch path
> > included directly in pg_wal? You could just use different paths for
> > both. Say, with a base partition at /my/path/, you can just have
> > /my/path/pg_wal/ that the Postgres backend links to, and
> > /my/path/wal-g/prefetch/ for the secondary path.
>
> This complexity doesn't seem necessary to me. What we gain? Prefetched WAL is WAL per se. Makes sense to keep it in
pg_waltree by default.
>
> I will implement possibility to move cache out of pg_wal (similar functionality is implemented in pgBackRest). But it
seemsuseless to me: user can configure WAL prefetch to be less performant, without any benefits.
In this case there's certainly one very clear benefit: pg_rewind will be
more robust at detecting serious issues and complaining loudly,
hopefully avoiding having users end up with corrupted clusters. That's
certainly not nothing, from my perspective.
Thanks,
Stephen