Re: Support EXCEPT for TABLES IN SCHEMA publications

Peter Smith <smithpb2250@gmail.com>

From: Peter Smith <smithpb2250@gmail.com>
To: Amit Kapila <amit.kapila16@gmail.com>
Cc: Nisha Moond <nisha.moond412@gmail.com>, Zsolt Parragi <zsolt.parragi@percona.com>, pgsql-hackers@lists.postgresql.org
Date: 2026-06-17T03:38:10Z
Lists: pgsql-hackers
On Tue, Jun 16, 2026 at 9:08 PM Amit Kapila <amit.kapila16@gmail.com> wrote:
>
> On Tue, Jun 16, 2026 at 12:06 PM Peter Smith <smithpb2250@gmail.com> wrote:
> >
> > On Tue, Jun 16, 2026 at 2:36 PM Amit Kapila <amit.kapila16@gmail.com> wrote:
> > >
> > > No, I don't think this is a bug for PG19 and the new behaviour for
> > > PG20 is intentional and required because in this case, the EXCEPT
> > > clause is schema-scoped, so once schema is changed, the table should
> > > be removed from the exclusion list. OTOH, in PG19, the exclusion list
> > > follows the table-level exclusion based on its OID as we can see in
> > > the example provided by you. I think we can consider adding a line for
> > > this in docs if you and others feel that such explicit mention can
> > > avoid ambiguity around this. How about something like the following as
> > > a separate para in EXCEPT clause description: Once a table is
> > > excluded, the exclusion applies to that table itself, regardless of
> > > its name or schema. Renaming the table or moving it to another schema
> > > with <command>ALTER TABLE ... SET SCHEMA</command> does not cancel the
> > > exclusion."
> > >
> >
> > OK. The explanatory text LGTM.
> >
> > What's the next step? Should I create a new thread/patch to deal with this?
> >
>
> WFM.
>

Done. See new thread/patch [1].

======
[1] https://www.postgresql.org/message-id/flat/CAHut%2BPvQ5BqnawCQd6r1tqqd%2BiAJC-CuRY8wscuXSrpHGUzofA%40mail.gmail.com

Kind Regards,
Peter Smith.
Fujitsu Australia



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.