Re: BUG #15044: materialized views incompatibility with logicalreplication in postgres 10 - Mailing list pgsql-bugs

From Peter Eisentraut
Subject Re: BUG #15044: materialized views incompatibility with logicalreplication in postgres 10
Date
Msg-id 6e375316-91a4-7825-ef8b-9b8915ab6980@2ndquadrant.com
Whole thread Raw
In response to Re: BUG #15044: materialized views incompatibility with logicalreplication in postgres 10  (Petr Jelinek <petr.jelinek@2ndquadrant.com>)
Responses Re: BUG #15044: materialized views incompatibility with logicalreplication in postgres 10  (Peter Eisentraut <peter.eisentraut@2ndquadrant.com>)
List pgsql-bugs
On 2/5/18 10:33, Petr Jelinek wrote:
>> Exactly.  The matview does not show up in pg_publication_tables but it's
>> registered at some level.
> 
> Indeed this is a bug. For normal publications we take care of this when
> adding the relation to the publication but since ALL TABLES publications
> don't check for membership we have to filter this directly in the output
> plugin.

I think the filtering in pgoutput ought to make use of
is_publishable_class() in some way.  That takes care of non-tables such
as materialized views, but it also filters out the information_schema
tables for example.  Right now, if you insert something into one of the
IS tables, it gets shipped over the wire but is then dropped by the
apply because there is no pg_subscription_rel entry of the table.  That
doesn't quite have the user-visible effect as this bug, but it's bogus
nonetheless.

So I propose this alternative patch that covers all these cases.

-- 
Peter Eisentraut              http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services

Attachment

pgsql-bugs by date:

Previous
From: Bradley Ayers
Date:
Subject: Transaction local custom settings set to '' rather than removedentirely after transaction ends
Next
From: PG Bug reporting form
Date:
Subject: BUG #15072: Unable to get tablespace from pg_tables for new createdtable