postgresql/src/backend/catalog
Robert Haas 9a974cbcba pg_upgrade: Preserve relfilenodes and tablespace OIDs.
Currently, database OIDs, relfilenodes, and tablespace OIDs can all
change when a cluster is upgraded using pg_upgrade. It seems better
to preserve them, because (1) it makes troubleshooting pg_upgrade
easier, since you don't have to do a lot of work to match up files
in the old and new clusters, (2) it allows 'rsync' to save bandwidth
when used to re-sync a cluster after an upgrade, and (3) if we ever
encrypt or sign blocks, we would likely want to use a nonce that
depends on these values.

This patch only arranges to preserve relfilenodes and tablespace
OIDs. The task of preserving database OIDs is left for another patch,
since it involves some complexities that don't exist in these cases.

Database OIDs have a similar issue, but there are some tricky points
in that case that do not apply to these cases, so that problem is left
for another patch.

Shruthi KC, based on an earlier patch from Antonin Houska, reviewed
and with some adjustments by me.

Discussion: http://postgr.es/m/CA+TgmoYgTwYcUmB=e8+hRHOFA0kkS6Kde85+UNdon6q7bt1niQ@mail.gmail.com
2022-01-17 13:40:27 -05:00
..
.gitignore Build in some knowledge about foreign-key relationships in the catalogs. 2021-02-02 17:11:55 -05:00
Catalog.pm Update copyright for 2022 2022-01-07 19:04:57 -05:00
Makefile Update copyright for 2022 2022-01-07 19:04:57 -05:00
aclchk.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
catalog.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
dependency.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
genbki.pl Update copyright for 2022 2022-01-07 19:04:57 -05:00
heap.c pg_upgrade: Preserve relfilenodes and tablespace OIDs. 2022-01-17 13:40:27 -05:00
index.c pg_upgrade: Preserve relfilenodes and tablespace OIDs. 2022-01-17 13:40:27 -05:00
indexing.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
information_schema.sql Update copyright for 2022 2022-01-07 19:04:57 -05:00
namespace.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
objectaccess.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
objectaddress.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
partition.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_aggregate.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_cast.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_class.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_collation.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_constraint.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_conversion.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_db_role_setting.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_depend.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_enum.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_inherits.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_largeobject.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_namespace.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_operator.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_proc.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_publication.c Add index on pg_publication_rel.prpubid 2022-01-12 16:24:26 -03:00
pg_range.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_shdepend.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_subscription.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
pg_type.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
sql_feature_packages.txt Cleanup in SQL features files 2020-03-28 08:46:18 +01:00
sql_features.txt doc: More documentation on regular expressions and SQL standard 2021-12-20 10:36:44 +01:00
storage.c Update copyright for 2022 2022-01-07 19:04:57 -05:00
system_functions.sql Update copyright for 2022 2022-01-07 19:04:57 -05:00
system_views.sql Add stxdinherit flag to pg_statistic_ext_data 2022-01-16 13:38:01 +01:00
toasting.c Fix memory leak in indexUnchanged hint mechanism. 2022-01-12 15:41:04 -08:00