Re: further clarification: alter table alter column set not null - table scan is skipped - Mailing list pgsql-docs

From David G. Johnston
Subject Re: further clarification: alter table alter column set not null - table scan is skipped
Date
Msg-id CAKFQuwbkV4yQU_5rHWwCfwSY3mjhh_jk50THwYEdRvwAZ36BRQ@mail.gmail.com
Whole thread Raw
In response to further clarification: alter table alter column set not null - table scan is skipped  (PG Doc comments form <noreply@postgresql.org>)
Responses Re: further clarification: alter table alter column set not null - table scan is skipped
List pgsql-docs
On Wed, Jul 30, 2025, 13:55 PG Doc comments form <noreply@postgresql.org> wrote:
The following documentation comment has been logged on the website:

Page: https://www.postgresql.org/docs/17/docguide.html
Description:

Hello there,
I like PostgreSQL a lot so this is my way of giving back.

The "table scan is skipped" optimization can use some clarification
https://www.postgresql.org/docs/current/sql-altertable.html#SQL-ALTERTABLE-DESC-SET-DROP-NOT-NULL
My proposal is "then the table scan is skipped if the alter statement
doesn't drop the constraint."

The reason behind the proposal is documented here
https://dev.to/andrewpsy/the-set-not-null-downtime-trap-in-postgresql-1o71

Thank you for working on such an awesome project.
Cheers,
Andrew

I'm kinda hoping this is actually just a fixable bug...

Otherwise I'd probably go for a parenthetical:
(however, the constraint used must not be dropped in the same alter table command).

David J.

pgsql-docs by date:

Previous
From: Jeff Davis
Date:
Subject: Re: Initcap works differently with different locale providers
Next
From: "David G. Johnston"
Date:
Subject: Lets prohibit predicting the future in the documentation.