On Tue, Mar 08, 2022 at 06:01:23PM -0800, Andres Freund wrote:
> To me it's architecturally the completely wrong direction. We should move in
> the *other* direction, i.e. allow WAL to be sent to standbys before the
> primary has finished flushing it locally. Which requires similar
> infrastructure to what we're discussing here.
I think this is a good point. After all, WALRead() has the following
comment:
* XXX probably this should be improved to suck data directly from the
* WAL buffers when possible.
Once you have all the infrastructure for that, holding back WAL replay on
async standbys based on synchronous replication might be relatively easy.
--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com