SELECT pg_get_constraintdef(c.oid) FROM pg_catalog.pg_constraint c;
If I execute the query in two different servers with PostgreSQL 17.1 and in different databases in these servers, then I get the answer
ERROR: invalid constraint type "n"
In case of an empty database I do not get the error. The query worked in the servers before upgrading to PostgreSQL 17.
If I execute the query in a database of a server with PostgreSQL 15, then I do not get the error.
Looks like this is an omission in the catalog-not-null-constraints patch. It happens when you've got a domain that has a not null constraint on it. Easily reproducible with
create domain test as int int not null;
SELECT pg_get_constraintdef(c.oid) FROM pg_catalog.pg_constraint c;