Re: WIP: WAL prefetch (another approach) - Mailing list pgsql-hackers

From Thomas Munro
Subject Re: WIP: WAL prefetch (another approach)
Date
Msg-id CA+hUKGKBxHZMVJFELZhC8iD57TBhboHtpmG+rzdOSdRGyxUGeQ@mail.gmail.com
Whole thread Raw
In response to Re: WIP: WAL prefetch (another approach)  (Julien Rouhaud <rjuju123@gmail.com>)
Responses Re: WIP: WAL prefetch (another approach)  (Julien Rouhaud <rjuju123@gmail.com>)
List pgsql-hackers
On Fri, Mar 11, 2022 at 9:27 PM Julien Rouhaud <rjuju123@gmail.com> wrote:
> > > Also, is it worth an assert (likely at the top of the function) for that?
> >
> > How could I assert that EndRecPtr has the right value?
>
> Sorry, I meant to assert that some value was assigned (!XLogRecPtrIsInvalid).
> It can only make sure that the first call is done after XLogBeginRead /
> XLogFindNextRecord, but that's better than nothing and consistent with the top
> comment.

Done.

> + * Returns XLREAD_WOULDBLOCK if he requested data can't be read without
> + * waiting.  This can be returned only if the installed page_read callback
>
> typo: "the" requested data.

Fixed.

> Other than that it all looks good to me!

Thanks!

> > The other thing I need to change is that I should turn on
> > recovery_prefetch for platforms that support it (ie Linux and maybe
> > NetBSD only for now), in the tests.  Right now you need to put
> > recovery_prefetch=on in a file and then run the tests with
> > "TEMP_CONFIG=path_to_that make -C src/test/recovery check" to
> > excercise much of 0002.
>
> +1 with Andres' idea to have a "try" setting.

Done.  The default is still "off" for now, but in
027_stream_regress.pl I set it to "try".

I also fixed the compile failure with -DWAL_DEBUG, and checked that
output looks sane with wal_debug=on.

Attachment

pgsql-hackers by date:

Previous
From: Michael Paquier
Date:
Subject: Re: add checkpoint stats of snapshot and mapping files of pg_logical dir
Next
From: Bharath Rupireddy
Date:
Subject: Re: add checkpoint stats of snapshot and mapping files of pg_logical dir