Hi, On 2025-12-17 09:19:57 +0530, Dilip Kumar wrote: > On Tue, Dec 16, 2025 at 11:15 PM Andres Freund <[email protected]> wrote: > > Actually, wouldn't a table-level property be completely inappropriate for > > that? Imagine one publication that's used for HA (or major version upgrade) > > and doesn't use a conflict table, which replicates all tables (including the > > conflict table of another pub/sub). And a subscription doing bi-direction > > replication that *does* obviously use the conflict table. In one of those > > cases you want to replicate changes to the conflict table, in the other > > not. So a table / pg_class property would be inappropriate, no? > > Not sure I completely got this point, but let me explain the > requirement, so the idea is that the conflict log table which are > created for the subscription if the conflict log table option is set > then all the conflict occurred on the node would be inserted into this > table, so you can consider this as a log which we want to use for > better lookup instead of looking into the server logs. So IMHO this > table stores very node specific conflict information which might not > make any sense for other nodes.
Imagine you have a bi-directional replication setup between A <-> B. Then you want to upgrade A to a new major version A'. To minimize downtime, you want to use logical replication for that. For the logical replication A -> A', you *would* want to logically replicate the conflict log table, because the history of logical conflicts is actually important. Greetings, Andres Freund
