Re: Skipping logical replication transactions on subscriber side
Peter Eisentraut <peter.eisentraut@enterprisedb.com>
On 03.12.21 03:53, Amit Kapila wrote: >> I don't know how difficult it would be, but allowing multiple xids might >> be desirable. > > Are there many cases where there could be multiple xid failures that > the user can skip? Apply worker always keeps looping at the same error > failure so the user wouldn't know of the second xid failure (if any) > till the first failure is resolved. Yeah, nevermind, doesn't make sense. > Yeah, I also think so. BTW, what do you think of providing extra > flexibility of giving other options like 'operation', 'rel' along with > xid? I think such options could be useful for large transactions that > operate on multiple tables as it is quite possible that only a > particular operation from the entire transaction is the cause of > failure. Now, on one side, we can argue that skipping the entire > transaction is better from the consistency point of view but I think > it is already possible that we just skip a particular update/delete > (if the corresponding tuple doesn't exist on the subscriber). For the > sake of simplicity, we can just allow providing xid at this stage and > then extend it later as required but I am not very sure of that point. Skipping transactions partially sounds dangerous, especially when exposed as an option to users. Needs more careful thought.
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