Re: PG 18 release notes draft committed - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: PG 18 release notes draft committed
Date
Msg-id aBgdLiBeQJgyCFEM@momjian.us
Whole thread Raw
In response to Re: PG 18 release notes draft committed  (Álvaro Herrera <alvherre@kurilemu.de>)
List pgsql-hackers
On Sun, May  4, 2025 at 01:35:30PM +0200, Álvaro Herrera wrote:
> Regarding these items
> 
> * Allow ALTER TABLE to set the NOT VALID attribute of NOT NULL constraints
>   (Rushabh Lathia, Jian He)
> 
> * Allow NOT VALID foreign key constraints on partitioned tables (Amul Sul)
> 
> * Allow modification of the inheritability of constraints (Suraj Kharage, Álvaro Herrera)
> 
>   The syntax is ALTER TABLE ... ALTER CONSTRAINT ... [NO] INHERIT.
> 
> * Store column NOT NULL specifications in pg_constraint (Álvaro Herrera, Bernd Helmle)
> 
>   This allows names to be specified for NOT NULL constraint. This also adds NOT
>   NULL constraints to foreign tables and NOT NULL inheritance control to local
>   tables.
> 
> 
> I think the wording and order of them is a bit unclear.  I would put the
> last item first, immediately followed by the other two; alternatively we
> could merge them all into a single one:

I moved the last item to first in the group.

> * Store NOT NULL constraints in pg_constraint for better preservability
>   (Álvaro, Bernd, Suraj, Rushabh, Jian)
> 
>   The constraint names are well defined and are preserved across
>   dump/restore.  Also, the NOT VALID and NO INHERIT properties work
>   as expected and can be modified by users via ALTER TABLE.
> 
> Or something along those lines.

I think the merged text is too confusing.

> This one in particular:
>   Allow modification of the inheritability of constraints (Suraj Kharage, Álvaro Herrera)
> 
>   The syntax is ALTER TABLE ... ALTER CONSTRAINT ... [NO] INHERIT.
> 
> only works with not-null constraints, which is why I suggest to merge
> together with the above item.  Ideally, on the next release somebody
> would work to make that feature more general (work with other types of
> constraints).

Yes, I see that detail in the docs of the first commit, and in the second commit
text.  I modified to say NOT NULL.

> 
> I think this item
>   Allow CHECK and foreign key constraints to be specified as NOT ENFORCED
>   (Amul Sul)
> 
>   This also adds column pg_constraint.conenforced.
> 
> should come second or maybe even first in that section, as it is I think
> the most user-visible.

I made it second.

> These two items
>   Allow NOT VALID foreign key constraints on partitioned tables (Amul Sul)
> 
>   Allow dropping of constraints ONLY on partitioned tables (Álvaro Herrera)
> 
>   This was previously erroneously prohibited.
> 
> can mostly be considered bug-fixes, so they should be last in the
> section; they aren't new features, just making existing features work
> correctly.  The one I have second is I think of lesser importance.

Agreed, moved as you suggested.  I have trouble figuring out the
importance sometimes, and this section is very large.

Patch attached.

-- 
  Bruce Momjian  <bruce@momjian.us>        https://momjian.us
  EDB                                      https://enterprisedb.com

  Do not let urgent matters crowd out time for investment in the future.

Attachment

pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: PG 18 release notes draft committed
Next
From: Bruce Momjian
Date:
Subject: Re: PG 18 release notes draft committed