Re: CREATE SCHEMA ... CREATE DOMAIN support - Mailing list pgsql-hackers

From Tom Lane
Subject Re: CREATE SCHEMA ... CREATE DOMAIN support
Date
Msg-id 1525354.1733105723@sss.pgh.pa.us
Whole thread Raw
In response to Re: CREATE SCHEMA ... CREATE DOMAIN support  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: CREATE SCHEMA ... CREATE DOMAIN support
List pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes:
> If I'm parsing the spec right, the doc mentions in its 5)~6) of the
> syntax rules in CREATE SCHEMA that non-schema-qualified objects should
> use the new schema name defined in the CREATE SCHEMA query.  So that
> pretty much settles the rules to use when having a new object that has
> a reference to a non-qualified object created in the same CREATE
> SCHEMA query?

I don't see where you're getting that from?  DB2 says that unqualified
reference names (not to be confused with unqualified creation-target
names) are taken to be in the new schema, but I don't see any
corresponding restriction in the spec.

What I do see (11.1 SR 6 in SQL:2021) is:

    If <schema path specification> is not specified, then a <schema
    path specification> containing an implementation-defined <schema
    name list> that contains the <schema name> contained in <schema
    name clause> is implicit.

What I read this as is that the "search path" during schema-element
creation must include at least the new schema, but can also include
some other schemas as defined by the implementation.  That makes
our behavior compliant, because we can define the other schemas
as those in the session's prevailing search_path.  (DB2's behavior
is also compliant, but they're defining the path as containing only
the new schema.)

Also, if SQL intended to constrain the search path for unqualified
identifiers to be only the new schema, they'd hardly need a concept
of <schema path specification> at all.

            regards, tom lane



pgsql-hackers by date:

Previous
From: Pavel Stehule
Date:
Subject: Re: cannot to compile extension by meson on windows
Next
From: Amit Kapila
Date:
Subject: Re: Conflict detection for update_deleted in logical replication