@@ -2825,8 +2825,8 @@ getBlobs(Archive *fout)
2825
2825
"%s AS initrlomacl "
2826
2826
"FROM pg_largeobject_metadata l "
2827
2827
"LEFT JOIN pg_init_privs pip ON "
2828
- "(l.oid = pip.objoid AND pip.classoid = "
2829
- "(SELECT oid FROM pg_class WHERE relname = 'pg_largeobject') "
2828
+ "(l.oid = pip.objoid "
2829
+ "AND pip.classoid = 'pg_largeobject'::regclass "
2830
2830
"AND pip.objsubid = 0) ",
2831
2831
username_subquery,
2832
2832
acl_subquery->data,
@@ -3569,8 +3569,8 @@ getNamespaces(Archive *fout, int *numNamespaces)
3569
3569
"%s as initrnspacl "
3570
3570
"FROM pg_namespace n "
3571
3571
"LEFT JOIN pg_init_privs pip "
3572
- "ON (n.oid = pip.objoid AND pip.classoid = "
3573
- "(SELECT oid FROM pg_class WHERE relname = 'pg_namespace') "
3572
+ "ON (n.oid = pip.objoid "
3573
+ "AND pip.classoid = 'pg_namespace'::regclass "
3574
3574
"AND pip.objsubid = 0) ",
3575
3575
username_subquery,
3576
3576
acl_subquery->data,
@@ -3851,9 +3851,9 @@ getTypes(Archive *fout, int *numTypes)
3851
3851
"t.typname[0] = '_' AND t.typelem != 0 AND "
3852
3852
"(SELECT typarray FROM pg_type te WHERE oid = t.typelem) = t.oid AS isarray "
3853
3853
"FROM pg_type t "
3854
- "LEFT JOIN pg_init_privs pip "
3855
- "ON (t.oid = pip.objoid AND pip.classoid = "
3856
- "(SELECT oid FROM pg_class WHERE relname = 'pg_type') "
3854
+ "LEFT JOIN pg_init_privs pip ON "
3855
+ "(t.oid = pip.objoid "
3856
+ "AND pip.classoid = 'pg_type'::regclass "
3857
3857
"AND pip.objsubid = 0) ",
3858
3858
acl_subquery->data,
3859
3859
racl_subquery->data,
@@ -4713,8 +4713,8 @@ getAggregates(Archive *fout, int *numAggs)
4713
4713
"%s AS initraggacl "
4714
4714
"FROM pg_proc p "
4715
4715
"LEFT JOIN pg_init_privs pip ON "
4716
- "(p.oid = pip.objoid AND pip.classoid = "
4717
- "(SELECT oid FROM pg_class WHERE relname = 'pg_proc') "
4716
+ "(p.oid = pip.objoid "
4717
+ "AND pip.classoid = 'pg_proc'::regclass "
4718
4718
"AND pip.objsubid = 0) "
4719
4719
"WHERE p.proisagg AND ("
4720
4720
"p.pronamespace != "
@@ -4956,8 +4956,8 @@ getFuncs(Archive *fout, int *numFuncs)
4956
4956
"(%s p.proowner) AS rolname "
4957
4957
"FROM pg_proc p "
4958
4958
"LEFT JOIN pg_init_privs pip ON "
4959
- "(p.oid = pip.objoid AND pip.classoid = "
4960
- "(SELECT oid FROM pg_class WHERE relname = 'pg_proc') "
4959
+ "(p.oid = pip.objoid "
4960
+ "AND pip.classoid = 'pg_proc'::regclass "
4961
4961
"AND pip.objsubid = 0) "
4962
4962
"WHERE NOT proisagg "
4963
4963
"AND NOT EXISTS (SELECT 1 FROM pg_depend "
@@ -5246,9 +5246,10 @@ getTables(Archive *fout, int *numTables)
5246
5246
"CASE WHEN 'check_option=local' = ANY (c.reloptions) THEN 'LOCAL'::text "
5247
5247
"WHEN 'check_option=cascaded' = ANY (c.reloptions) THEN 'CASCADED'::text ELSE NULL END AS checkoption, "
5248
5248
"tc.reloptions AS toast_reloptions, "
5249
- "EXISTS (SELECT 1 FROM pg_attribute at LEFT JOIN pg_init_privs pip ON"
5250
- "(c.oid = pip.objoid AND pip.classoid = "
5251
- "(SELECT oid FROM pg_class WHERE relname = 'pg_class') AND pip.objsubid = at.attnum)"
5249
+ "EXISTS (SELECT 1 FROM pg_attribute at LEFT JOIN pg_init_privs pip ON "
5250
+ "(c.oid = pip.objoid "
5251
+ "AND pip.classoid = 'pg_class'::regclass "
5252
+ "AND pip.objsubid = at.attnum)"
5252
5253
"WHERE at.attrelid = c.oid AND ("
5253
5254
"%s IS NOT NULL "
5254
5255
"OR %s IS NOT NULL "
@@ -5264,9 +5265,9 @@ getTables(Archive *fout, int *numTables)
5264
5265
"d.refclassid = c.tableoid AND d.deptype = 'a') "
5265
5266
"LEFT JOIN pg_class tc ON (c.reltoastrelid = tc.oid) "
5266
5267
"LEFT JOIN pg_init_privs pip ON "
5267
- "(c.oid = pip.objoid AND pip.classoid = "
5268
- "(SELECT oid FROM pg_class "
5269
- "WHERE relname = 'pg_class') AND pip.objsubid = 0) "
5268
+ "(c.oid = pip.objoid "
5269
+ "AND pip.classoid = ' pg_class'::regclass "
5270
+ "AND pip.objsubid = 0) "
5270
5271
"WHERE c.relkind in ('%c', '%c', '%c', '%c', '%c', '%c') "
5271
5272
"ORDER BY c.oid",
5272
5273
acl_subquery->data,
@@ -7163,9 +7164,9 @@ getProcLangs(Archive *fout, int *numProcLangs)
7163
7164
"%s AS initrlanacl, "
7164
7165
"(%s l.lanowner) AS lanowner "
7165
7166
"FROM pg_language l "
7166
- "LEFT JOIN pg_init_privs pip "
7167
- "ON (l.oid = pip.objoid AND pip.classoid = "
7168
- "(SELECT oid FROM pg_class WHERE relname = 'pg_type') "
7167
+ "LEFT JOIN pg_init_privs pip ON "
7168
+ "(l.oid = pip.objoid "
7169
+ "AND pip.classoid = 'pg_type'::regclass "
7169
7170
"AND pip.objsubid = 0) "
7170
7171
"WHERE l.lanispl "
7171
7172
"ORDER BY l.oid",
@@ -8583,9 +8584,9 @@ getForeignDataWrappers(Archive *fout, int *numForeignDataWrappers)
8583
8584
"ORDER BY option_name"
8584
8585
"), E',\n ') AS fdwoptions "
8585
8586
"FROM pg_foreign_data_wrapper f "
8586
- "LEFT JOIN pg_init_privs pip "
8587
- "ON (f.oid = pip.objoid AND pip.classoid = "
8588
- "(SELECT oid FROM pg_class WHERE relname = 'pg_foreign_data_wrapper') "
8587
+ "LEFT JOIN pg_init_privs pip ON "
8588
+ "(f.oid = pip.objoid "
8589
+ "AND pip.classoid = 'pg_foreign_data_wrapper'::regclass "
8589
8590
"AND pip.objsubid = 0) ",
8590
8591
username_subquery,
8591
8592
acl_subquery->data,
@@ -8753,8 +8754,8 @@ getForeignServers(Archive *fout, int *numForeignServers)
8753
8754
"), E',\n ') AS srvoptions "
8754
8755
"FROM pg_foreign_server f "
8755
8756
"LEFT JOIN pg_init_privs pip "
8756
- "ON (f.oid = pip.objoid AND pip.classoid = "
8757
- "(SELECT oid FROM pg_class WHERE relname = 'pg_foreign_server') "
8757
+ "ON (f.oid = pip.objoid "
8758
+ "AND pip.classoid = 'pg_foreign_server'::regclass "
8758
8759
"AND pip.objsubid = 0) ",
8759
8760
username_subquery,
8760
8761
acl_subquery->data,
@@ -14600,13 +14601,13 @@ dumpACL(Archive *fout, CatalogId objCatId, DumpId objDumpId,
14600
14601
*/
14601
14602
if (strlen(initacls) != 0 || strlen(initracls) != 0)
14602
14603
{
14603
- appendPQExpBuffer(sql, "SELECT binary_upgrade_set_record_init_privs(true);\n");
14604
+ appendPQExpBuffer(sql, "SELECT pg_catalog. binary_upgrade_set_record_init_privs(true);\n");
14604
14605
if (!buildACLCommands(name, subname, type, initacls, initracls, owner,
14605
14606
"", fout->remoteVersion, sql))
14606
14607
exit_horribly(NULL,
14607
14608
"could not parse initial GRANT ACL list (%s) or initial REVOKE ACL list (%s) for object \"%s\" (%s)\n",
14608
14609
initacls, initracls, name, type);
14609
- appendPQExpBuffer(sql, "SELECT binary_upgrade_set_record_init_privs(false);\n");
14610
+ appendPQExpBuffer(sql, "SELECT pg_catalog. binary_upgrade_set_record_init_privs(false);\n");
14610
14611
}
14611
14612
14612
14613
if (!buildACLCommands(name, subname, type, acls, racls, owner,
@@ -14992,11 +14993,11 @@ dumpTable(Archive *fout, TableInfo *tbinfo)
14992
14993
"%s AS initrattacl "
14993
14994
"FROM pg_catalog.pg_attribute at "
14994
14995
"JOIN pg_catalog.pg_class c ON (at.attrelid = c.oid) "
14995
- "LEFT JOIN pg_init_privs pip ON "
14996
- "(pip.classoid = "
14997
- "(SELECT oid FROM pg_class WHERE relname = 'pg_class') AND "
14998
- " at.attrelid = pip.objoid AND at.attnum = pip.objsubid) "
14999
- "WHERE at.attrelid = '%u' AND "
14996
+ "LEFT JOIN pg_catalog. pg_init_privs pip ON "
14997
+ "(at.attrelid = pip.objoid "
14998
+ "AND pip.classoid = 'pg_catalog. pg_class'::pg_catalog.regclass "
14999
+ " AND at.attnum = pip.objsubid) "
15000
+ "WHERE at.attrelid = '%u'::pg_catalog.oid AND "
15000
15001
"NOT at.attisdropped "
15001
15002
"AND ("
15002
15003
"%s IS NOT NULL OR "
@@ -15025,7 +15026,7 @@ dumpTable(Archive *fout, TableInfo *tbinfo)
15025
15026
"SELECT attname, attacl, NULL as rattacl, "
15026
15027
"NULL AS initattacl, NULL AS initrattacl "
15027
15028
"FROM pg_catalog.pg_attribute "
15028
- "WHERE attrelid = '%u' AND NOT attisdropped "
15029
+ "WHERE attrelid = '%u'::pg_catalog.oid AND NOT attisdropped "
15029
15030
"AND attacl IS NOT NULL "
15030
15031
"ORDER BY attnum",
15031
15032
tbinfo->dobj.catId.oid);
0 commit comments