Re: CREATE SCHEMA ... CREATE DOMAIN support

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Nathan Bossart <nathandbossart(at)gmail(dot)com>
Cc: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Noah Misch <noah(at)leadboat(dot)com>, jian he <jian(dot)universality(at)gmail(dot)com>, Kirill Reshke <reshkekirill(at)gmail(dot)com>, Peter Eisentraut <peter(at)eisentraut(dot)org>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: CREATE SCHEMA ... CREATE DOMAIN support
Date: 2026-09-09 16:44:51
Message-ID: 627673.1788972291@sss.pgh.pa.us
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Nathan Bossart <nathandbossart(at)gmail(dot)com> writes:
> On Wed, Sep 09, 2026 at 06:53:58PM +0300, Heikki Linnakangas wrote:
>> Reverting seems like the safest thing to do. This is a really niche thing,
>> but whatever behavior we pick, we'll be stuck with it for a long time. If
>> we're not 100% certain about the new behavior, better to take a step back
>> and discuss and design it with more time.

> +1

After looking at the git history a bit, the relevant commits are

Branch: master Release: REL_19_BR [049b742da] 2026-06-23 14:12:03 -0400
psql: Tighten heuristics for BEGIN/END within CREATE SCHEMA.
Branch: master Release: REL_19_BR [d51697484] 2026-04-06 15:16:25 -0400
Support more object types within CREATE SCHEMA.
Branch: master Release: REL_19_BR [404db8f9e] 2026-04-06 15:16:25 -0400
Execute foreign key constraints in CREATE SCHEMA at the end.
Branch: master Release: REL_19_BR [a9c350d9e] 2026-04-06 15:16:25 -0400
Don't try to re-order the subcommands of CREATE SCHEMA.

It looks like it might be possible to revert a9c350d9e and d51697484
while keeping 404db8f9e, which would preserve a feature clearly
required by the SQL standard (F311-01, "Support for circular
references in that <referential constraint definition>s in two
different <table definition>s may reference columns in the other
table") while not breaking compatibility with our pre-19 behavior.
Any opinions about whether that's a good thing to try to do, rather
than a wholesale revert?

I'm also inclined to keep this bit of 049b742da:

This patch also fixes what seems to me (tgl) a small bug: \;
would reset BEGIN/END detection even when inside parens or BEGIN.
That's unlike what a plain semicolon would do, and no such effect
is suggested by the documentation.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Haibo Yan 2026-09-09 16:48:39 Re: Skipping NULL keys when uniqueifying a semijoin's RHS
Previous Message Andrew Dunstan 2026-09-09 16:24:32 Re: pg_get_*_ddl() needs a redesign