Re: Question about StartLogicalReplication() error path - Mailing list pgsql-hackers

From Robert Haas
Subject Re: Question about StartLogicalReplication() error path
Date
Msg-id CA+TgmobmouB7iE6EqfjEPFhF5f=vcyT1X=ROudhrDq9h3CnrJw@mail.gmail.com
Whole thread Raw
In response to Re: Question about StartLogicalReplication() error path  (Jeff Davis <pgsql@j-davis.com>)
Responses Re: Question about StartLogicalReplication() error path  (Andres Freund <andres@anarazel.de>)
Re: Question about StartLogicalReplication() error path  (Jeff Davis <pgsql@j-davis.com>)
List pgsql-hackers
On Fri, Jun 11, 2021 at 2:23 AM Jeff Davis <pgsql@j-davis.com> wrote:
> * The comment acknowledges that a user might expect an error in that
> case; but doesn't really address why the user would expect an error,
> and why it's OK to violate that expectation.

This code was written by Andres, so he'd be the best person to comment
on it, but it seems to me that the comment does explain this, and that
it's basically the same explanation as what Amit said. If the client
doesn't have to do anything for a certain range of WAL and just
acknowledges it, it would under your proposal have to also durably
record that it had chosen to do nothing, which might cause extra
fsyncs, potentially lots of extra fsyncs if this happens frequently
e.g. because most tables are filtered out and the replicated ones are
only modified occasionally. I'm not sure that it would be a good
trade-off to have a tighter sanity check at the expense of adding that
overhead.

-- 
Robert Haas
EDB: http://www.enterprisedb.com



pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: "an SQL" vs. "a SQL"
Next
From: Zhihong Yu
Date:
Subject: Re: Multi-Column List Partitioning