In pg_upgrade, copy pg_largeobject_metadata and its index for 9.0+

servers because, like pg_largeobject, it is a system table whose
contents are not dumped by pg_dump --schema-only.
This commit is contained in:
Bruce Momjian 2011-01-04 23:35:52 -05:00
parent 845626f506
commit 9a22ea242b

View File

@ -331,13 +331,16 @@ get_rel_infos(migratorContext *ctx, const DbInfo *dbinfo,
" ) OR ( "
" n.nspname = 'pg_catalog' "
" AND relname IN "
" ('pg_largeobject', 'pg_largeobject_loid_pn_index') )) "
" ('pg_largeobject', 'pg_largeobject_loid_pn_index'%s) )) "
" AND relkind IN ('r','t', 'i'%s)"
"GROUP BY c.oid, n.nspname, c.relname, c.relfilenode,"
" c.reltoastrelid, t.spclocation, "
" n.nspname "
"ORDER BY n.nspname, c.relname;",
FirstNormalObjectId,
/* does pg_largeobject_metadata need to be migrated? */
(GET_MAJOR_VERSION(ctx->old.major_version) <= 804) ?
"" : ", 'pg_largeobject_metadata', 'pg_largeobject_metadata_oid_index'",
/* see the comment at the top of old_8_3_create_sequence_script() */
(GET_MAJOR_VERSION(ctx->old.major_version) <= 803) ?
"" : ", 'S'");