postgresql/src/include
Tom Lane fc032bed2f Be more careful about marking catalog columns NOT NULL by default.
The bug fixed in commit 72eab84a5 would not have occurred if initdb
had a less surprising rule about which columns should be marked
NOT NULL by default.  Let's make that rule be strictly that the
column must be fixed-width and its predecessors must be fixed-width
and NOT NULL, removing the hacky and unsafe exceptions for oidvector
and int2vector.

Since we do still want all existing oidvector and int2vector columns
to be marked NOT NULL, we have to put BKI_FORCE_NOT_NULL labels on
them.  But making this less magic and more documented seems like a
good idea, even if it's a shade more verbose.

I didn't bump catversion since the initial catalog contents are
not actually changed by this patch.  Note however that the
contents of postgres.bki do change, and feeding an old copy of
that to a new backend will produce wrong results.

Discussion: https://postgr.es/m/204760.1595181800@sss.pgh.pa.us
2020-07-21 13:03:48 -04:00
..
access Rename wal_keep_segments to wal_keep_size. 2020-07-20 13:30:18 +09:00
bootstrap Update copyrights for 2020 2020-01-01 12:21:45 -05:00
catalog Be more careful about marking catalog columns NOT NULL by default. 2020-07-21 13:03:48 -04:00
commands Unify drop-by-OID functions 2020-06-09 09:39:46 +02:00
common Fix some header identifications 2020-07-14 13:39:45 +09:00
datatype Update copyrights for 2020 2020-01-01 12:21:45 -05:00
executor Use MinimalTuple for tuple queues. 2020-07-17 15:04:16 +12:00
fe_utils Move frontend-side archive APIs from src/common/ to src/fe_utils/ 2020-06-11 15:48:46 +09:00
foreign Update copyrights for 2020 2020-01-01 12:21:45 -05:00
jit Fix some header identifications 2020-07-14 13:39:45 +09:00
lib Initial pgindent and pgperltidy run for v13. 2020-05-14 13:06:50 -04:00
libpq code: replace 'master' with 'leader' where appropriate. 2020-07-08 12:58:32 -07:00
mb Allow Unicode escapes in any server encoding, not only UTF-8. 2020-03-06 14:17:43 -05:00
nodes HashAgg: before spilling tuples, set unneeded columns to NULL. 2020-07-12 22:59:32 -07:00
optimizer Rename enable_incrementalsort for clarity 2020-07-05 11:43:08 +02:00
parser Revert 0f5ca02f53 2020-04-08 11:37:27 +03:00
partitioning Fix some header identifications 2020-07-14 13:39:45 +09:00
port Avoid need for valgrind suppressions for pg_atomic_init_u64 on some platforms. 2020-06-08 19:52:19 -07:00
portability Update copyrights for 2020 2020-01-01 12:21:45 -05:00
postmaster Trigger autovacuum based on number of INSERTs 2020-03-28 19:20:12 +13:00
regex Assume that we have <wchar.h>. 2020-02-21 14:30:47 -05:00
replication Fix construction of updated-columns bitmap in logical replication. 2020-07-20 13:40:16 -04:00
rewrite Update copyrights for 2020 2020-01-01 12:21:45 -05:00
snowball Update snowball 2020-06-08 08:07:15 +02:00
statistics Initial pgindent and pgperltidy run for v13. 2020-05-14 13:06:50 -04:00
storage Add huge_page_size setting for use on Linux. 2020-07-17 14:33:00 +12:00
tcop code: replace 'master' with 'primary' where appropriate. 2020-07-08 12:57:23 -07:00
tsearch Assume that we have <wchar.h>. 2020-02-21 14:30:47 -05:00
utils Make floating-point "NaN / 0" return NaN instead of raising an error. 2020-07-20 19:44:45 -04:00
.gitignore Refactor dlopen() support 2018-09-06 11:33:04 +02:00
c.h Fix -Wcast-function-type warnings 2020-07-14 19:55:25 +02:00
fmgr.h Fix -Wcast-function-type warnings 2020-07-14 19:55:25 +02:00
funcapi.h Avoid holding a directory FD open across assorted SRF calls. 2020-03-16 21:05:52 -04:00
getaddrinfo.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
getopt_long.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
Makefile Get rid of jsonpath_gram.h and jsonpath_scanner.h 2019-03-20 11:13:34 +03:00
miscadmin.h Add unlikely() to CHECK_FOR_INTERRUPTS() 2020-06-05 16:49:25 -04:00
pg_config.h.in Define OPENSSL_API_COMPAT 2020-07-19 12:14:42 +02:00
pg_config_ext.h.in Autoconfiscate selection of 64-bit int type for 64-bit large object API. 2012-10-07 21:52:43 -04:00
pg_config_manual.h Add Valgrind buffer access instrumentation. 2020-07-17 17:49:45 -07:00
pg_getopt.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
pg_trace.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
pgstat.h Improve server code to read files as part of a base backup. 2020-06-17 11:39:17 -04:00
pgtar.h Assorted cleanup of tar-related code. 2020-06-15 15:28:49 -04:00
pgtime.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
port.h Initial pgindent and pgperltidy run for v13. 2020-05-14 13:06:50 -04:00
postgres.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
postgres_ext.h Phase 2 of pgindent updates. 2017-06-21 15:19:25 -04:00
postgres_fe.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
rusagestub.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00
windowapi.h Update copyrights for 2020 2020-01-01 12:21:45 -05:00