pgsql: First phase of project to use fixed OIDs for all system catalogs - Mailing list pgsql-committers

From tgl@svr1.postgresql.org (Tom Lane)
Subject pgsql: First phase of project to use fixed OIDs for all system catalogs
Date
Msg-id 20050414013822.75E0A5336E@svr1.postgresql.org
Whole thread Raw
List pgsql-committers
Log Message:
-----------
First phase of project to use fixed OIDs for all system catalogs and
indexes.  Extend the macros in include/catalog/*.h to carry the info
about hand-assigned OIDs, and adjust the genbki script and bootstrap
code to make the relations actually get those OIDs.  Remove the small
number of RelOid_pg_foo macros that we had in favor of a complete
set named like the catname.h and indexing.h macros.  Next phase will
get rid of internal use of names for looking up catalogs and indexes;
but this completes the changes forcing an initdb, so it looks like a
good place to commit.
Along the way, I made the shared relations (pg_database etc) not be
'bootstrap' relations any more, so as to reduce the number of hardwired
entries and simplify changing those relations in future.  I'm not
sure whether they ever really needed to be handled as bootstrap
relations, but it seems to work fine to not do so now.

Modified Files:
--------------
    pgsql/doc/src/sgml:
        bki.sgml (r1.15 -> r1.16)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/bki.sgml.diff?r1=1.15&r2=1.16)
    pgsql/src/backend/bootstrap:
        bootparse.y (r1.75 -> r1.76)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/bootstrap/bootparse.y.diff?r1=1.75&r2=1.76)
    pgsql/src/backend/catalog:
        README (r1.8 -> r1.9)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/README.diff?r1=1.8&r2=1.9)
        dependency.c (r1.42 -> r1.43)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/dependency.c.diff?r1=1.42&r2=1.43)
        genbki.sh (r1.34 -> r1.35)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/genbki.sh.diff?r1=1.34&r2=1.35)
        heap.c (r1.282 -> r1.283)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/heap.c.diff?r1=1.282&r2=1.283)
        index.c (r1.250 -> r1.251)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/index.c.diff?r1=1.250&r2=1.251)
        pg_aggregate.c (r1.73 -> r1.74)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_aggregate.c.diff?r1=1.73&r2=1.74)
        pg_constraint.c (r1.23 -> r1.24)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_constraint.c.diff?r1=1.23&r2=1.24)
        pg_conversion.c (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_conversion.c.diff?r1=1.20&r2=1.21)
        pg_operator.c (r1.89 -> r1.90)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_operator.c.diff?r1=1.89&r2=1.90)
        pg_proc.c (r1.126 -> r1.127)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_proc.c.diff?r1=1.126&r2=1.127)
        pg_type.c (r1.98 -> r1.99)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/pg_type.c.diff?r1=1.98&r2=1.99)
    pgsql/src/backend/commands:
        aggregatecmds.c (r1.24 -> r1.25)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/aggregatecmds.c.diff?r1=1.24&r2=1.25)
        cluster.c (r1.134 -> r1.135)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/cluster.c.diff?r1=1.134&r2=1.135)
        comment.c (r1.81 -> r1.82)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/comment.c.diff?r1=1.81&r2=1.82)
        functioncmds.c (r1.59 -> r1.60)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/functioncmds.c.diff?r1=1.59&r2=1.60)
        indexcmds.c (r1.128 -> r1.129)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/indexcmds.c.diff?r1=1.128&r2=1.129)
        opclasscmds.c (r1.30 -> r1.31)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/opclasscmds.c.diff?r1=1.30&r2=1.31)
        proclang.c (r1.58 -> r1.59)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/proclang.c.diff?r1=1.58&r2=1.59)
        tablecmds.c (r1.153 -> r1.154)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/tablecmds.c.diff?r1=1.153&r2=1.154)
        trigger.c (r1.184 -> r1.185)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/trigger.c.diff?r1=1.184&r2=1.185)
        typecmds.c (r1.68 -> r1.69)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/typecmds.c.diff?r1=1.68&r2=1.69)
        user.c (r1.149 -> r1.150)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/user.c.diff?r1=1.149&r2=1.150)
        view.c (r1.89 -> r1.90)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/commands/view.c.diff?r1=1.89&r2=1.90)
    pgsql/src/backend/executor:
        execMain.c (r1.245 -> r1.246)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/execMain.c.diff?r1=1.245&r2=1.246)
    pgsql/src/backend/rewrite:
        rewriteDefine.c (r1.102 -> r1.103)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/rewrite/rewriteDefine.c.diff?r1=1.102&r2=1.103)
    pgsql/src/backend/tcop:
        utility.c (r1.234 -> r1.235)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/tcop/utility.c.diff?r1=1.234&r2=1.235)
    pgsql/src/backend/utils/adt:
        ruleutils.c (r1.191 -> r1.192)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c.diff?r1=1.191&r2=1.192)
    pgsql/src/backend/utils/cache:
        inval.c (r1.70 -> r1.71)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/inval.c.diff?r1=1.70&r2=1.71)
        relcache.c (r1.218 -> r1.219)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/cache/relcache.c.diff?r1=1.218&r2=1.219)
    pgsql/src/backend/utils/init:
        flatfiles.c (r1.4 -> r1.5)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/init/flatfiles.c.diff?r1=1.4&r2=1.5)
    pgsql/src/include/catalog:
        catname.h (r1.34 -> r1.35)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catname.h.diff?r1=1.34&r2=1.35)
        catversion.h (r1.264 -> r1.265)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.264&r2=1.265)
        duplicate_oids (r1.6 -> r1.7)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/duplicate_oids.diff?r1=1.6&r2=1.7)
        heap.h (r1.73 -> r1.74)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/heap.h.diff?r1=1.73&r2=1.74)
        index.h (r1.61 -> r1.62)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/index.h.diff?r1=1.61&r2=1.62)
        indexing.h (r1.85 -> r1.86)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/indexing.h.diff?r1=1.85&r2=1.86)
        pg_aggregate.h (r1.50 -> r1.51)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_aggregate.h.diff?r1=1.50&r2=1.51)
        pg_am.h (r1.32 -> r1.33)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_am.h.diff?r1=1.32&r2=1.33)
        pg_amop.h (r1.62 -> r1.63)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_amop.h.diff?r1=1.62&r2=1.63)
        pg_amproc.h (r1.52 -> r1.53)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_amproc.h.diff?r1=1.52&r2=1.53)
        pg_attrdef.h (r1.18 -> r1.19)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attrdef.h.diff?r1=1.18&r2=1.19)
        pg_attribute.h (r1.115 -> r1.116)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_attribute.h.diff?r1=1.115&r2=1.116)
        pg_cast.h (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_cast.h.diff?r1=1.20&r2=1.21)
        pg_class.h (r1.86 -> r1.87)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_class.h.diff?r1=1.86&r2=1.87)
        pg_constraint.h (r1.15 -> r1.16)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_constraint.h.diff?r1=1.15&r2=1.16)
        pg_conversion.h (r1.14 -> r1.15)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_conversion.h.diff?r1=1.14&r2=1.15)
        pg_database.h (r1.34 -> r1.35)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_database.h.diff?r1=1.34&r2=1.35)
        pg_depend.h (r1.5 -> r1.6)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_depend.h.diff?r1=1.5&r2=1.6)
        pg_description.h (r1.22 -> r1.23)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_description.h.diff?r1=1.22&r2=1.23)
        pg_group.h (r1.20 -> r1.21)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_group.h.diff?r1=1.20&r2=1.21)
        pg_index.h (r1.36 -> r1.37)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_index.h.diff?r1=1.36&r2=1.37)
        pg_inherits.h (r1.19 -> r1.20)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_inherits.h.diff?r1=1.19&r2=1.20)
        pg_language.h (r1.25 -> r1.26)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_language.h.diff?r1=1.25&r2=1.26)
        pg_largeobject.h (r1.18 -> r1.19)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_largeobject.h.diff?r1=1.18&r2=1.19)
        pg_listener.h (r1.18 -> r1.19)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_listener.h.diff?r1=1.18&r2=1.19)
        pg_namespace.h (r1.16 -> r1.17)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_namespace.h.diff?r1=1.16&r2=1.17)
        pg_opclass.h (r1.63 -> r1.64)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_opclass.h.diff?r1=1.63&r2=1.64)
        pg_operator.h (r1.130 -> r1.131)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_operator.h.diff?r1=1.130&r2=1.131)
        pg_proc.h (r1.358 -> r1.359)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_proc.h.diff?r1=1.358&r2=1.359)
        pg_rewrite.h (r1.24 -> r1.25)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_rewrite.h.diff?r1=1.24&r2=1.25)
        pg_shadow.h (r1.27 -> r1.28)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_shadow.h.diff?r1=1.27&r2=1.28)
        pg_statistic.h (r1.28 -> r1.29)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_statistic.h.diff?r1=1.28&r2=1.29)
        pg_tablespace.h (r1.5 -> r1.6)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_tablespace.h.diff?r1=1.5&r2=1.6)
        pg_trigger.h (r1.21 -> r1.22)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_trigger.h.diff?r1=1.21&r2=1.22)
        pg_type.h (r1.159 -> r1.160)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_type.h.diff?r1=1.159&r2=1.160)
        unused_oids (r1.6 -> r1.7)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/unused_oids.diff?r1=1.6&r2=1.7)
    pgsql/src/include/commands:
        defrem.h (r1.63 -> r1.64)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/commands/defrem.h.diff?r1=1.63&r2=1.64)
    pgsql/src/include:
        postgres.h (r1.70 -> r1.71)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/postgres.h.diff?r1=1.70&r2=1.71)
    pgsql/src/include/utils:
        relcache.h (r1.48 -> r1.49)
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/utils/relcache.h.diff?r1=1.48&r2=1.49)

Removed Files:
-------------
    pgsql/src/include/catalog:
        pg_version.h
        (http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/pg_version.h)

pgsql-committers by date:

Previous
From: tgl@svr1.postgresql.org (Tom Lane)
Date:
Subject: pgsql: Simplify initdb-time assignment of OIDs as I proposed yesterday,
Next
From: andrewsn@pgfoundry.org (User Andrewsn)
Date:
Subject: newsysviews - newsysview: rules view