Re: cataloguing NOT NULL constraints

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Peter Eisentraut <peter(dot)eisentraut(at)enterprisedb(dot)com>
Cc: Pg Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: cataloguing NOT NULL constraints
Date: 2023-04-05 23:33:56
Message-ID: 20230405233356.qs4w4jtfc3kq4obl@alvherre.pgsql
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2023-Mar-27, Peter Eisentraut wrote:

> I suggest going through the tests carefully again and make sure all the
> changes are sensible and all the comments are correct. There are a few
> places where the behavior of tests has changed (intentionally) but the
> surrounding comments don't match anymore, or objects that previously weren't
> created now succeed but then affect following tests. Also, it seems some
> tests are left over from the first variant of this patch (where not-null
> constraints were converted to check constraints), and test names or comments
> should be updated to the current behavior.

Thanks for reviewing!

Yeah, there were some obsolete tests. I fixed those, added a couple
more, and while doing that I realized that failing to have NO INHERIT
constraints may be seen as regressing feature-wise, because there would
be no way to return to the situation where a parent table has a NOT NULL
but the children don't necessarily. So I added that, and that led me to
changing the code structure a bit more in order to support *not* copying
the attnotnull flag in the cases where the parent only has it because of
a NO INHERIT constraint.

I'll go over this again tomorrow with fresh eyes, but I think it should
be pretty close to ready. (Need to amend docs to note the new NO
INHERIT option for NOT NULL table constraints, and make sure pg_dump
complies.)

Tests are currently running: https://cirrus-ci.com/build/6261827823206400

--
Álvaro Herrera 48°01'N 7°57'E — https://www.EnterpriseDB.com/
"Las navajas y los monos deben estar siempre distantes" (Germán Poo)

Attachment Content-Type Size
v6-0001-Catalog-NOT-NULL-constraints.patch text/x-diff 173.9 KB

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Thomas Munro 2023-04-06 00:17:37 Re: Using each rel as both outer and inner for JOIN_ANTI
Previous Message Amit Langote 2023-04-05 23:27:35 Re: on placeholder entries in view rule action query's range table