Re: Skipping schema changes in publication

Peter Smith <smithpb2250@gmail.com>

From: Peter Smith <smithpb2250@gmail.com>
To: "Hayato Kuroda (Fujitsu)" <kuroda.hayato@fujitsu.com>
Cc: vignesh C <vignesh21@gmail.com>, Shlok Kyal <shlok.kyal.oss@gmail.com>, Amit Kapila <amit.kapila16@gmail.com>, Dilip Kumar <dilipbalaut@gmail.com>, shveta malik <shveta.malik@gmail.com>, Masahiko Sawada <sawada.mshk@gmail.com>, Nisha Moond <nisha.moond412@gmail.com>, Ashutosh Sharma <ashu.coek88@gmail.com>, "David G. Johnston" <david.g.johnston@gmail.com>, "Zhijie Hou (Fujitsu)" <houzj.fnst@fujitsu.com>, YeXiu <1518981153@qq.com>, Ian Lawrence Barwick <barwick@gmail.com>, Bharath Rupireddy <bharath.rupireddyforpostgres@gmail.com>, PostgreSQL Hackers <pgsql-hackers@lists.postgresql.org>
Date: 2026-03-31T04:22:40Z
Lists: pgsql-hackers
On Tue, Mar 31, 2026 at 2:54 PM Hayato Kuroda (Fujitsu)
<kuroda.hayato@fujitsu.com> wrote:
>
> Dear Peter,
>
> > ======
> > src/bin/psql/tab-complete.in.c
> >
> > 4.
> > - COMPLETE_WITH("EXCEPT TABLE (");
> > + COMPLETE_WITH("EXCEPT ( TABLE");
> >
> > (this is in several places in  ALTER and CREATE)
> >
> > In v3 the space in "( TABLE" was changed to "(TABLE", but now in v4
> > the space is back again. AFAICT the v3 change was in response to
> > review [1] (comment #2). Was it reverted deliberately?
>
> I think it's proper to have the blank before/after the parentheses. See the
> existing example.
>
> ```
>         /* ALTER TABLE <name> SPLIT PARTITION <name> */
>         else if (Matches("ALTER", "TABLE", MatchAny, "SPLIT", "PARTITION", MatchAny))
>                 COMPLETE_WITH("INTO ( PARTITION");
> ```
>
> Also, if we type till `CREATE PUBLICATION pub WITH` and type tab several times,
> the suggested string is something like below:
>
> ```
> CREATE PUBLICATION pub WITH ( PUBLISH
> ```
>
> It means normally the blank exists in between the term.
>

OK. I didn't really have an opinion about it. I was only pointing out
it was changed in v3 and then changed again in v4 so I was just
checking if it was deliberate.

======
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. Fix miscellaneous issues in EXCEPT publication clause.

  2. Change syntax of EXCEPT TABLE clause in publication commands.

  3. Add support for EXCEPT TABLE in ALTER PUBLICATION.

  4. Allow table exclusions in publications via EXCEPT TABLE.

  5. Add wait_for_subscription_sync for TAP tests.