A replication origin records the database or node where a replicated transaction began. Logical replication must distinguish local changes from changes arriving from other nodes. section 5.5
A tempting multi-master setup publishes every table in both directions without filtering origins. Each node can then replicate transactions it previously received, creating a feedback loop that ping-pongs WAL until disks fill with extraneous data. section 5.5
Filter forwarded transactions
For a native logical replication subscription, use WITH (origin=NONE); the equivalent pglogical setting is forward_origins='{}'. Creating the second subscription can warn that initial copied rows may have a different origin, so verify the initial data before proceeding.
Replication-origin context also appears in failures: a missing replicated column is reported while processing remote data for a named replication origin, identifying the replication path involved.
