Hi. I decided to test our stuff against the v18 beta1.
And right off the bat, I'm getting differences when introspecting a
schema via the catalogs, which now return NOT NULL constraints for
regular columns, which was not the case before, and when the doc seems
to say pg_constraint.contype = n is for domains only, while on our
test, the schema contains only the table as below, and no DOMAIN
types.
CREATE TABLE test_table (id numeric NOT NULL, name varchar(256))
Is this change of behavior normal?
This breaks our code, which is of course fixable, but this is old code
that hasn't changed since at least v14, thus I'm surprised. Was this
intentional?
Thanks, --DD
PS: Interestingly, our code also has this comment, which seems related:
// We used information_schema.table_constraints in the past ,
// but that view also presents system-generated not null constraints.
// Using pg_catalog.pg_constraint gets rid of the problem