Re: Added schema level support for publication.

vignesh C <vignesh21@gmail.com>

From: vignesh C <vignesh21@gmail.com>
To: Greg Nancarrow <gregn4422@gmail.com>
Cc: Amit Kapila <amit.kapila16@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>, "houzj.fnst@fujitsu.com" <houzj.fnst@fujitsu.com>, "tanghy.fnst@fujitsu.com" <tanghy.fnst@fujitsu.com>, Peter Eisentraut <peter.eisentraut@enterprisedb.com>, Tom Lane <tgl@sss.pgh.pa.us>, Peter Smith <smithpb2250@gmail.com>, Ajin Cherian <itsajin@gmail.com>, Rahila Syed <rahilasyed90@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>
Date: 2021-10-21T13:16:58Z
Lists: pgsql-hackers

Attachments

On Thu, Oct 21, 2021 at 4:41 AM Greg Nancarrow <gregn4422@gmail.com> wrote:
>
> On Thu, Oct 21, 2021 at 3:25 AM vignesh C <vignesh21@gmail.com> wrote:
> >
> > Attached v44 patch as the fixes for the same.
> >
>
> Regarding the documentation, I think some minor updates are needed in:
>  doc/src/sgml/logical-replication.sgml.
> For example, currently it says:
>    Publications may currently only contain tables. Objects must be
> added explicitly, except when a publication is created for
> <literal>ALL TABLES</literal>.
> There is also some security-related information in this file which may
> need updating for ALL TABLES IN SCHEMA.

Modified

> Also, I'm not sure the documentation updates in the patches clearly
> define how partitions relate to ALL TABLES IN SCHEMA.
> For example, if a partitioned table belongs to a different schema to
> that of a child partition that belongs to a schema specified for ALL
> TABLES IN SCHEMA, is it implicitly included in the publication or not
> included?

Added

Thanks for the comments, the attached v45 patch has the fix for the same.

Regards,
Vignesh

Commits

  1. Include schema/table publications even with exclude options in dump.

  2. Rename some enums to use TABLE instead of REL.

  3. Add tap tests for the schema publications.

  4. Allow publishing the tables of schema.

  5. In pg_dump, use simplehash.h to look up dumpable objects by OID.