RE: Added schema level support for publication.

From: "houzj(dot)fnst(at)fujitsu(dot)com" <houzj(dot)fnst(at)fujitsu(dot)com>
To: vignesh C <vignesh21(at)gmail(dot)com>
Cc: "tanghy(dot)fnst(at)fujitsu(dot)com" <tanghy(dot)fnst(at)fujitsu(dot)com>, Greg Nancarrow <gregn4422(at)gmail(dot)com>, Masahiko Sawada <sawada(dot)mshk(at)gmail(dot)com>, Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Peter Smith <smithpb2250(at)gmail(dot)com>, Ajin Cherian <itsajin(at)gmail(dot)com>, Rahila Syed <rahilasyed90(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>, Bharath Rupireddy <bharath(dot)rupireddyforpostgres(at)gmail(dot)com>, Amit Kapila <amit(dot)kapila16(at)gmail(dot)com>
Subject: RE: Added schema level support for publication.
Date: 2021-10-11 07:20:05
Message-ID: OS0PR01MB5716C0D61AD4530BAFB4C59794B59@OS0PR01MB5716.jpnprd01.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Monday, October 11, 2021 2:39 PM vignesh C <vignesh21(at)gmail(dot)com> wrote:
>
> These comments are fixed in the v38 patch attached.

Thanks for updating the patches.
Here are a few comments on the v38-0004-Doc patch.

1.
+ <para>
+ Adding/Setting a table that is part of schema specified in
+ <literal>ALL TABLES IN SCHEMA</literal>, adding/setting a schema to a
+ publication along with same schema's table specified with
+ <literal>TABLE</literal>, adding/setting a schema to a publication that
+ already has a table that is part of specified schema or adding/setting a
+ table to a publication that already has a table's schema as part of
+ specified schema is not supported.

ISTM we can remove the description "adding/setting a schema to a publication
along with same schema's table specified with <literal>TABLE</literal>",
because it seems the same as the first mentioned case "Adding/Setting a table
that is part of schema specified in <literal>ALL TABLES IN SCHEMA</literal>"

2.

+</programlisting></para>
+
+ <para>
+ Add some schemas to the publication:
+<programlisting>
+ALTER PUBLICATION sales_publication ADD ALL TABLES IN SCHEMA marketing_june, sales_june;
+</programlisting>
+ </para>
+
+ <para>
+ Add some tables and schemas to the publication:
...
+
+ <para>
+ Drop some schemas from the publication:
...
+ <para>
+ Set some schemas to the publication:
+<programlisting>
+ALTER PUBLICATION production_publication SET ALL TABLES IN SCHEMA production_september, production_october;

Personally, I think we don't need the example about DROP and SET here.
The example of ADD seems sufficient.

3.
+</programlisting>
+ </para>
+
+ <para>
+ Create a publication that publishes all changes for all the tables present in
+ the schema "production":
+<programlisting>
+CREATE PUBLICATION production_publication FOR ALL TABLES IN SCHEMA production;
+</programlisting>
+ </para>
...
+ <para>
+ Create a publication that publishes all changes for all the tables present in
+ the schemas "marketing" and "sales":
+<programlisting>
+CREATE PUBLICATION sales_publication FOR ALL TABLES IN SCHEMA marketing, sales;

I think the example for publishing all the tables in schemas "marketing" and
"sales" is sufficient, the example for pulishing signal schema seems can be
removed.

Best regards,
Hou zj

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bharath Rupireddy 2021-10-11 07:20:28 Re: Reword docs of feature "Remove temporary files after backend crash"
Previous Message Kyotaro Horiguchi 2021-10-11 07:11:02 Re: Inconsistency in startup process's MyBackendId and procsignal array registration with ProcSignalInit()