Re: Support EXCEPT for TABLES IN SCHEMA publications

Amit Kapila <amit.kapila16@gmail.com>

From: Amit Kapila <amit.kapila16@gmail.com>
To: Peter Smith <smithpb2250@gmail.com>
Cc: Nisha Moond <nisha.moond412@gmail.com>, Zsolt Parragi <zsolt.parragi@percona.com>, pgsql-hackers@lists.postgresql.org
Date: 2026-06-15T06:19:57Z
Lists: pgsql-hackers
On Thu, Jun 11, 2026 at 12:17 PM Peter Smith <smithpb2250@gmail.com> wrote:
>
> //////////
> v12-0002
>
> ======
> doc/src/sgml/ref/alter_publication.sgml
>
> 1.
> +     <para>
> +      For <literal>FOR TABLES IN SCHEMA</literal> publications, the
> +      <literal>EXCEPT</literal> clause is schema-scoped.  If a table listed in
> +      the <literal>EXCEPT</literal> clause is later moved to a different schema
> +      using <command>ALTER TABLE ... SET SCHEMA</command>, the exclusion is
> +      removed; the table will then be published if its new schema is part of a
> +      publication.  If the table is subsequently moved back to the original
> +      schema, the exclusion is not restored, and must be re-established
> +      explicitly using <command>ALTER PUBLICATION</command>.  Dropping a table
> +      always removes it from the <literal>EXCEPT</literal> clause,
> regardless of
> +      publication type.
> +     </para>
>
>
> I think the sentence "If the table is subsequently moved back..." is
> overkill, and does not need to be said. The prior info "the exclusion
> is removed" already tells me the exclusion is gone, and I think is
> reasonable to assume "removed" means that it is gone for good, with no
> ambiguity that it might magically come back.
>
> YMMV. Leave it as-is if you prefer.
>

I feel it is okay to keep the proposed sentence to avoid any ambiguity
by the user to consider the schema-scope state is symmetric.

-- 
With Regards,
Amit Kapila.



Commits

Same data as JSON: GET /api/v1/messages/:b64id/commits the thread's linked commits as JSON, with link sources. API reference →
  1. Doc: Clarify that publication exclusions track table identity.