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

From Stephen Frost
Subject Re: [EXTERNAL] Re: WIP: WAL prefetch (another approach)
Date
Msg-id 20200827185116.GQ29590@tamriel.snowman.net
Whole thread Raw
In response to Re: [EXTERNAL] Re: WIP: WAL prefetch (another approach)  (Andres Freund <andres@anarazel.de>)
Responses Re: [EXTERNAL] Re: WIP: WAL prefetch (another approach)  (Robert Haas <robertmhaas@gmail.com>)
List pgsql-hackers
Greetings,

* Andres Freund (andres@anarazel.de) wrote:
> On August 27, 2020 11:26:42 AM PDT, Stephen Frost <sfrost@snowman.net> wrote:
> >Is WAL FPW compression enabled..?  I'm trying to figure out how, given
> >what's been shared here, that replaying 25GB of WAL is being helped out
> >by 2.5x thanks to prefetch in the SSD case.  That prefetch is hurting
> >in
> >the HDD case entirely makes sense to me- we're spending time reading
> >pages from the HDD, which is entirely pointless work given that we're
> >just going to write over those pages entirely with FPWs.
>
> Hm? At least earlier versions didn't do prefetching for records with an fpw, and only for subsequent records
affectingthe same or if not in s_b anymore. 

We don't actually read the page when we're replaying an FPW though..?
If we don't read it, and we entirely write the page from the FPW, how is
pre-fetching helping..?  I understood how it could be helpful for
filesystems which have a larger block size than ours (eg: zfs w/ 16kb
block sizes where the kernel needs to get the whole 16kb block when we
only write 8kb to it), but that's apparently not the case here.

So- what is it that pre-fetching is doing to result in such an
improvement?  Is there something lower level where the SSD physical
block size is coming into play, which is typically larger..?  I wouldn't
have thought so, but perhaps that's the case..

Thanks,

Stephen

Attachment

pgsql-hackers by date:

Previous
From: Andres Freund
Date:
Subject: Re: [EXTERNAL] Re: WIP: WAL prefetch (another approach)
Next
From: Jeff Janes
Date:
Subject: Autovac cancellation is broken in v14