git.postgresql.org Git - postgresql.git/commit

git projects / postgresql.git / commit
? search:
summary | shortlog | log | commit | commitdiff | tree
(parent: 0bf8364) | patch
Remove special BKI_LOOKUP magic for namespace and role OIDs.
Wed, 3 Feb 2021 17:01:48 +0000 (12:01 -0500)
Wed, 3 Feb 2021 17:01:48 +0000 (12:01 -0500)
commit ba0faf81c65ac99dd42ce192f3257d4d2231ea50
Remove special BKI_LOOKUP magic for namespace and role OIDs.

Now that commit 62f34097c attached BKI_LOOKUP annotation to all the
namespace and role OID columns in the catalogs, there's no real reason
to have the magic PGNSP and PGUID symbols. Get rid of them in favor
of implementing those lookups according to genbki.pl's normal pattern.

This means that in the catalog headers, BKI_DEFAULT(PGNSP) becomes
BKI_DEFAULT(pg_catalog), which seems a lot more transparent.
BKI_DEFAULT(PGUID) becomes BKI_DEFAULT(POSTGRES), which is perhaps
less so; but you can look into pg_authid.dat to discover that
POSTGRES is the nonce name for the bootstrap superuser.

This change also means that if we ever need cross-references in the
initial catalog data to any of the other built-in roles besides
POSTGRES, or to some other built-in schema besides pg_catalog,
we can just do it.

No catversion bump here, as there's no actual change in the contents
of postgres.bki.

Discussion: https://postgr.es/m/3240355.1612129197@sss.pgh.pa.us
19 files changed:
doc/src/sgml/bki.sgml diff | blob | blame | history
src/backend/catalog/genbki.pl diff | blob | blame | history
src/include/catalog/pg_authid.dat diff | blob | blame | history
src/include/catalog/pg_class.h diff | blob | blame | history
src/include/catalog/pg_collation.h diff | blob | blame | history
src/include/catalog/pg_conversion.h diff | blob | blame | history
src/include/catalog/pg_database.h diff | blob | blame | history
src/include/catalog/pg_language.h diff | blob | blame | history
src/include/catalog/pg_namespace.h diff | blob | blame | history
src/include/catalog/pg_opclass.h diff | blob | blame | history
src/include/catalog/pg_operator.h diff | blob | blame | history
src/include/catalog/pg_opfamily.h diff | blob | blame | history
src/include/catalog/pg_proc.h diff | blob | blame | history
src/include/catalog/pg_tablespace.h diff | blob | blame | history
src/include/catalog/pg_ts_config.h diff | blob | blame | history
src/include/catalog/pg_ts_dict.h diff | blob | blame | history
src/include/catalog/pg_ts_parser.h diff | blob | blame | history
src/include/catalog/pg_ts_template.h diff | blob | blame | history
src/include/catalog/pg_type.h diff | blob | blame | history
This is the main PostgreSQL git repository.
RSS Atom

AltStyle によって変換されたページ (->オリジナル) /