Re: Skipping logical replication transactions on subscriber side - Mailing list pgsql-hackers

From Amit Kapila
Subject Re: Skipping logical replication transactions on subscriber side
Date
Msg-id CAA4eK1LS-6uREKkJOjh392ibtQOQbfkC8K1oOFsiEptAKOf-BQ@mail.gmail.com
Whole thread Raw
In response to Re: Skipping logical replication transactions on subscriber side  (Masahiko Sawada <sawada.mshk@gmail.com>)
Responses Re: Skipping logical replication transactions on subscriber side
List pgsql-hackers
On Wed, Jan 26, 2022 at 12:51 PM Masahiko Sawada <sawada.mshk@gmail.com> wrote:
>
> On Wed, Jan 26, 2022 at 1:43 PM David G. Johnston
> <david.g.johnston@gmail.com> wrote:
> >
> > We probably should just provide an option for the user to specify "subrelid".  If null, only the main apply worker
willskip the given xid, otherwise only the worker tasked with syncing that particular table will do so.  It might take
asequence of ALTER SUBSCRIPTION SET commands to get a broken initial table synchronization to load completely but at
leastthere will not be any surprises as to which tables had transactions skipped and which did not. 
>
> That would work but I’m concerned that the users can specify it
> properly. Also, we would need to change the errcontext message
> generated by apply_error_callback() so the user can know that the
> error occurred in either apply worker or tablesync worker.
>
> Or, as another idea, since an error during table synchronization is
> not common and could be resolved by truncating the table and
> restarting the synchronization in practice, there might be no need
> this much and we can support it only for apply worker errors.
>

Yes, that is what I have also in mind. We can always extend this
feature for tablesync process because it can not only fail for the
specified skip_xid but also for many other reasons during the initial
copy.

--
With Regards,
Amit Kapila.



pgsql-hackers by date:

Previous
From: Amit Kapila
Date:
Subject: Re: row filtering for logical replication
Next
From: Julien Rouhaud
Date:
Subject: Re: Replace uses of deprecated Python module distutils.sysconfig