Hi,
Here is a completely different idea. This may solve the immediate
problem re the replication of the Conflict Log Table (CLT) at least...
0. AFAIK, anything named with a "pg_" prefix generally means that the
named thing is intended for PG internal use, right?
1. So, the CLT should be automatically named to have a "pg_" prefix,
indicating that it really is an internal table, albeit not a system
catalog. IIRC, this kind of name was a recent suggestion anyhow.
2. Then, the CREATE PUBLICATION pub1 FOR ALL TABLES should be modified
to automatically *exclude* any tables having a "pg_" prefix.
3. But, if you *really* still want to publish the CLT, then you can do it:
3a) publish it explicitly
CREATE PUBLICATION pub1 FOR TABLE pg_clt_for_sub_1234
3b) invent a new option so that FOR ALL TABLES won't exclude it:
CREATE PUBLICATION pub1 FOR ALL TABLES WITH (publish_internal_tables=true);
======
Kind Regards,
Peter Smith.
Fujitsu Australia.