In pg_upgrade, copy pg_largeobject_metadata and its index for 9.0+
authorBruce Momjian
Wed, 5 Jan 2011 04:35:49 +0000 (23:35 -0500)
committerBruce Momjian
Wed, 5 Jan 2011 04:35:49 +0000 (23:35 -0500)
servers because, like pg_largeobject, it is a system table whose
contents are not dumped by pg_dump --schema-only.

contrib/pg_upgrade/info.c

index 9e69ecd1f8c876923a22589519e578944b84ffe6..8d566c0b2d689405c53dcf3b9b7d1e9815aac64e 100644 (file)
@@ -310,13 +310,16 @@ get_rel_infos(ClusterInfo *cluster, 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 t.spclocation, n.nspname, c.relname;",
             FirstNormalObjectId,
+   /* does pg_largeobject_metadata need to be migrated? */
+            (GET_MAJOR_VERSION(old_cluster.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(old_cluster.major_version) <= 803) ?
             "" : ", 'S'");