Most system catalog columns should be NOT NULL

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: pgsql-hackers(at)postgreSQL(dot)org
Subject: Most system catalog columns should be NOT NULL
Date: 2002-07-07 16:46:08
Message-ID: 8920.1026060368@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

A conversation in pgsql-interfaces reminded me that it would be a good
idea for initdb to try to set attnotnull correctly for columns of the
system catalogs. Although we generally don't recommend that people
update catalogs directly, it's sometimes done anyway; having NOT NULL
constraints set on the columns that mustn't be null would help make
the system more robust.

It would be fairly easy to make bootstrap.c set attnotnull to true
for any column that's of a fixed-width datatype. That appears to
solve 99% of the problem with an appropriate amount of effort.
We could imagine inventing some BKI macro to explicitly label nullable
or not-nullable columns in the include/catalog headers, but I don't
think it's worth that much trouble.

Comments?

regards, tom lane

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2002-07-07 20:27:13 Re: libpq++ build problems
Previous Message Tom Lane 2002-07-07 16:03:08 Re: libpq++ build problems