On 14.02.22 10:16, Amit Kapila wrote:
> I think exposing LSN is a better approach as it doesn't have the
> dangers of wraparound. And, I think users can use it with the existing
> function pg_replication_origin_advance() which will save us from
> adding additional code for this feature. We can explain/expand in docs
> how users can use the error information from view/error_logs and use
> the existing function to skip conflicting transactions. We might want
> to even expose error_origin to make it a bit easier for users but not
> sure. I feel the need for the new syntax (and then added code
> complexity due to that) isn't warranted if we expose error_LSN and let
> users use it with the existing functions.
Well, the whole point of this feature is to provide a higher-level
interface instead of pg_replication_origin_advance(). Replication
origins are currently not something the users have to deal with
directly. We already document that you can use
pg_replication_origin_advance() to skip erroring transactions. But that
seems unsatisfactory. It'd be like using pg_surgery to fix unique
constraint violations.