Re: Skipping logical replication transactions on subscriber side
Amit Kapila <amit.kapila16@gmail.com>
On Fri, Feb 11, 2022 at 7:40 AM Masahiko Sawada <sawada.mshk@gmail.com> wrote: > > On Thu, Jan 27, 2022 at 10:42 PM Peter Eisentraut > <peter.eisentraut@enterprisedb.com> wrote: > > > > On 26.01.22 05:05, Masahiko Sawada wrote: > > >> I think it is okay to clear after the first successful application of > > >> any transaction. What I was not sure was about the idea of giving > > >> WARNING/ERROR if the first xact to be applied is not the same as > > >> skip_xid. > > > Do you prefer not to do anything in this case? > > > > I think a warning would be sensible. If the user specifies to skip a > > certain transaction and then that doesn't happen, we should at least say > > something. > > Meanwhile waiting for comments on the discussion about the designs of > both pg_stat_subscription_workers and ALTER SUBSCRIPTION SKIP feature, > I’ve incorporated some (minor) comments on the current design patch, > which includes: > > * Use LSN instead of XID. > 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. Do you see any problem with the same? -- With Regards, Amit Kapila.
Commits
-
Test ALIGNOF_DOUBLE==4 compatibility under ALIGNOF_DOUBLE==8.
- c1da0acbb06e 15.0 landed
-
Reorder subskiplsn in pg_subscription to avoid alignment issues.
- 79b716cfb7a1 15.0 landed
-
Add ALTER SUBSCRIPTION ... SKIP.
- 208c5d65bbd6 15.0 landed
-
Optionally disable subscriptions on error.
- 705e20f8550c 15.0 cited
-
Update docs of logical replication for commit 8d74fc96db.
- 85c61ba8920b 15.0 landed
-
Respect permissions within logical replication.
- a2ab9c06ea15 15.0 cited
-
Fix regression test failure caused by commit 8d74fc96db.
- 41e66fee0516 15.0 landed
-
Add a view to show the stats of subscription workers.
- 8d74fc96db5f 15.0 landed
-
Add logical change details to logical replication worker errcontext.
- abc0910e2e0a 15.0 landed
-
Rename LOGICAL_REP_MSG_STREAM_END to LOGICAL_REP_MSG_STREAM_STOP.
- 4cd7a1896871 15.0 landed
-
Fix typo in protocol.sgml.
- e1915646658d 14.0 landed
- 0ac1aee0d7d8 15.0 landed
-
Remove unused argument in apply_handle_commit_internal().
- f4b939f1a372 14.0 landed
- 16bd4becee32 15.0 landed
-
Fix replication of in-progress transactions in tablesync worker.
- 0926e96c4934 14.0 cited
-
Reorder pg_sequence columns to avoid alignment issue
- f3b421da5f4a 10.0 cited