From: | Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> |
---|---|
To: | Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> |
Cc: | Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Skipping logical replication transactions on subscriber side |
Date: | 2021-05-27 06:30:48 |
Message-ID: | CAD21AoA8TfxQkw8suHX9NkVaXTLhmZBOJPbd36AB9gxh73-kaA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Wed, May 26, 2021 at 6:11 PM Amit Kapila <amit(dot)kapila16(at)gmail(dot)com> wrote:
>
> On Tue, May 25, 2021 at 6:12 PM Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com> wrote:
> >
> > On Tue, May 25, 2021 at 7:21 PM Bharath Rupireddy
> > <bharath(dot)rupireddyforpostgres(at)gmail(dot)com> wrote:
> > >
> > > If there's no way to get the "correct LSN", then why can't we just
> > > print that LSN in the error context and/or in the new statistics view
> > > for logical replication workers, so that any of the existing ways can
> > > be used to skip exactly one txn?
> >
> > I think specifying XID to the subscription is more understandable for users.
> >
>
> I agree with you that specifying XID could be easier and
> understandable for users. I was thinking and studying a bit about what
> other systems do in this regard. Why don't we try to provide conflict
> resolution methods for users? The idea could be that either the
> conflicts can be resolved automatically or manually. In the case of
> manual resolution, users can use the existing methods or the XID stuff
> you are proposing here and in case of automatic resolution, the
> in-built or corresponding user-defined functions will be invoked for
> conflict resolution. There are more details to figure out in the
> automatic resolution scheme but I see a lot of value in doing the
> same.
Yeah, I also see a lot of value in automatic conflict resolution. But
maybe we can have both ways? For example, in case where the user wants
to resolve conflicts in different ways or a conflict that cannot be
resolved by automatic resolution (not sure there is in practice
though), the manual resolution would also have value.
Regards,
--
Masahiko Sawada
EDB: https://www.enterprisedb.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Amit Kapila | 2021-05-27 06:35:57 | Re: Forget close an open relation in ReorderBufferProcessTXN() |
Previous Message | Dilip Kumar | 2021-05-27 06:26:08 | Re: Race condition in recovery? |