Re: why can't a table be part of the same publication as its schema

From: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
To: "houzj(dot)fnst(at)fujitsu(dot)com" <houzj(dot)fnst(at)fujitsu(dot)com>, vignesh C <vignesh21(at)gmail(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: why can't a table be part of the same publication as its schema
Date: 2022-09-14 19:36:37
Message-ID: b2ffd236-fefd-f8f8-05a0-dc603e5a2bae@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 14.09.22 07:10, houzj(dot)fnst(at)fujitsu(dot)com wrote:
> After applying the patch, we support adding a table with column list along with
> the table's schema[1], and it will directly apply the column list in the
> logical replication after applying the patch.
>
> [1]--
> CREATE PUBLICATION pub FOR TABLE public.test(a), FOR ALL TABLES IN SCHEMA public;
> -----
>
> If from the point of view of consistency, for column list, we could report an
> ERROR because we currently don't allow using different column lists for a
> table. Maybe an ERROR like:
>
> "ERROR: cannot use column for table x when the table's schema is also in the publication"
>
> But if we want to report an ERROR for column list in above case. We might need
> to restrict the ALTER TABLE SET SCHEMA as well because user could move a table
> which is published with column list to a schema that is also published in the
> publication, so we might need to add some similar check(which is removed in
> Vignesh's patch) to tablecmd.c to disallow this case.
>
> Another option could be just ingore the column list if table's schema is also
> part of publication. But it seems slightly inconsistent with the rule that we
> disallow using different column list for a table.

Ignoring things doesn't seem like a good idea.

A solution might be to disallow adding any schemas to a publication if
column lists on a table are specified.

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Nathan Bossart 2022-09-14 20:03:05 Re: archive modules
Previous Message Peter Eisentraut 2022-09-14 19:33:46 Re: archive modules