Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commite6903c4

Browse files
committed
proisstrict must be assumed FALSE when dumping from a 7.0 database,
not TRUE. Otherwise we break pl call handler functions. fmgr_oldstylewill take care of making sure the semantics are the same for C functions.Clean up some slightly grotty coding in 7.0 pg_class reading, also.
1 parent631b3e4 commite6903c4

File tree

1 file changed

+12
-11
lines changed

1 file changed

+12
-11
lines changed

‎src/bin/pg_dump/pg_dump.c

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
*
2323
*
2424
* IDENTIFICATION
25-
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.205.2.1 2001/05/1201:09:47 pjw Exp $
25+
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.205.2.2 2001/05/1223:36:44 tgl Exp $
2626
*
2727
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
2828
*
@@ -1928,7 +1928,7 @@ getFuncs(int *numFuncs)
19281928
"SELECT pg_proc.oid, proname, prolang, pronargs, prorettype, "
19291929
"proretset, proargtypes, prosrc, probin, "
19301930
"(select usename from pg_user where proowner = usesysid) as usename, "
1931-
"proiscachable, 't'::boolean as proisstrict "
1931+
"proiscachable, 'f'::boolean as proisstrict "
19321932
"from pg_proc "
19331933
"where pg_proc.oid > '%u'::oid",
19341934
g_last_builtin_oid);
@@ -2056,7 +2056,7 @@ getTables(int *numTables, FuncInfo *finfo, int numFuncs)
20562056
if (g_fout->remoteVersion >=70100)
20572057
{
20582058
appendPQExpBuffer(query,
2059-
"SELECT pg_class.oid, relname,relkind, relacl, "
2059+
"SELECT pg_class.oid, relname,relacl, relkind, "
20602060
"(select usename from pg_user where relowner = usesysid) as usename, "
20612061
"relchecks, reltriggers, relhasindex "
20622062
"from pg_class "
@@ -2066,22 +2066,23 @@ getTables(int *numTables, FuncInfo *finfo, int numFuncs)
20662066
RELKIND_RELATION,RELKIND_SEQUENCE,RELKIND_VIEW);
20672067
}else {
20682068
/*
2069-
*In 7.1, view relkind was not set to 'v', so wefake this by checking
2070-
* if we have a view by lookingup pg_class & pg_rewrite.
2069+
*Before 7.1, view relkind was not set to 'v', so wemust check
2070+
* if we have a view by lookingfor a rule in pg_rewrite.
20712071
*/
20722072
appendPQExpBuffer(query,
20732073
"SELECT c.oid, relname, relacl, "
20742074
"CASE WHEN relhasrules and relkind = 'r' "
2075-
" AndEXISTS(SELECTr.rulename FROM pg_rewrite r WHERE "
2076-
"r.ev_class = c.oid AND r.ev_type = '1'::\"char\") "
2077-
"THEN 'v'::\"char\" "
2078-
"ELSE relkindEnd AS relkind,"
2079-
"relacl,(select usename from pg_user where relowner = usesysid) as usename, "
2075+
"andEXISTS(SELECT rulename FROM pg_rewrite r WHERE "
2076+
" r.ev_class = c.oid AND r.ev_type = '1') "
2077+
"THEN '%c'::\"char\" "
2078+
"ELSE relkindEND AS relkind,"
2079+
"(select usename from pg_user where relowner = usesysid) as usename, "
20802080
"relchecks, reltriggers, relhasindex "
20812081
"from pg_class c "
20822082
"where relname !~ '^pg_' "
20832083
"and relkind in ('%c', '%c', '%c') "
20842084
"order by oid",
2085+
RELKIND_VIEW,
20852086
RELKIND_RELATION,RELKIND_SEQUENCE,RELKIND_VIEW);
20862087
}
20872088

@@ -2102,8 +2103,8 @@ getTables(int *numTables, FuncInfo *finfo, int numFuncs)
21022103

21032104
i_reloid=PQfnumber(res,"oid");
21042105
i_relname=PQfnumber(res,"relname");
2105-
i_relkind=PQfnumber(res,"relkind");
21062106
i_relacl=PQfnumber(res,"relacl");
2107+
i_relkind=PQfnumber(res,"relkind");
21072108
i_usename=PQfnumber(res,"usename");
21082109
i_relchecks=PQfnumber(res,"relchecks");
21092110
i_reltriggers=PQfnumber(res,"reltriggers");

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp