public inbox for [email protected]
help / color / mirror / Atom feedFrom: Álvaro Herrera <[email protected]>
To: Bruce Momjian <[email protected]>
Cc: jian he <[email protected]>
Cc: PostgreSQL-development <[email protected]>
Subject: Re: First draft of PG 17 release notes
Date: Thu, 9 May 2024 20:40:00 +0200
Message-ID: <[email protected]> (raw)
In-Reply-To: <[email protected]>
On 2024-May-09, Bruce Momjian wrote:
> However, I don't see it mentioned as a release note item in the commit
> message or mentioned in our docs. I suppose the release note text would
> be:
>
> Removing a PRIMARY KEY will remove the NOT NULL column specification
>
> Previously the NOT NULL specification would be retained.
>
> Do we have agreement that we want this release note item?
Yes. Maybe we want some others too (especially regarding inheritance,
but also regarding the way we handle the constraints internally), and
maybe in this one we want different wording. How about something like
this:
Removing a primary key constraint may change the nullability
characteristic of the columns that the primary key covered.
If explicit not-null constraints exist on the same column, then they
continue to be /known not nullable/; otherwise they become /possibly
nullable/.
This is largely based on the SQL standard's language of a column
descriptor having a "nullability characteristic", which for columns with
not-null or primary key constraints is "known not null". I don't think
we use those terms anywhere. I hope this isn't too confusing.
The standard's text on this, in section "4.13 Columns, fields, and
attributes", is
Every column has a nullability characteristic that indicates whether
the value from that column can be the null value. A nullability
characteristic is either known not nullable or possibly nullable.
--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
view thread (146+ messages) latest in thread
reply
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: [email protected]
Cc: [email protected], [email protected], [email protected]
Subject: Re: First draft of PG 17 release notes
In-Reply-To: <[email protected]>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox