pgsql: Clean up representation of function RTEs for functions returning

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Clean up representation of function RTEs for functions returning
Date: 2006-03-16 00:31:55
Message-ID: 20060316003155.012479DC9AC@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Clean up representation of function RTEs for functions returning RECORD.
The original coding stored the raw parser output (ColumnDef and TypeName
nodes) which was ugly, bulky, and wrong because it failed to create any
dependency on the referenced datatype --- and in fact would not track type
renamings and suchlike. Instead store a list of column type OIDs in the
RTE.

Also fix up general failure of recordDependencyOnExpr to do anything sane
about recording dependencies on datatypes. While there are many cases where
there will be an indirect dependency (eg if an operator returns a datatype,
the dependency on the operator is enough), we do have to record the datatype
as a separate dependency in examples like CoerceToDomain.

initdb forced because of change of stored rules.

Modified Files:
--------------
pgsql/src/backend/access/common:
tupdesc.c (r1.115 -> r1.116)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/access/common/tupdesc.c.diff?r1=1.115&r2=1.116)
pgsql/src/backend/catalog:
dependency.c (r1.50 -> r1.51)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/catalog/dependency.c.diff?r1=1.50&r2=1.51)
pgsql/src/backend/executor:
nodeFunctionscan.c (r1.37 -> r1.38)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeFunctionscan.c.diff?r1=1.37&r2=1.38)
pgsql/src/backend/nodes:
copyfuncs.c (r1.330 -> r1.331)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c.diff?r1=1.330&r2=1.331)
equalfuncs.c (r1.266 -> r1.267)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/equalfuncs.c.diff?r1=1.266&r2=1.267)
outfuncs.c (r1.270 -> r1.271)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c.diff?r1=1.270&r2=1.271)
readfuncs.c (r1.186 -> r1.187)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/readfuncs.c.diff?r1=1.186&r2=1.187)
pgsql/src/backend/parser:
parse_clause.c (r1.148 -> r1.149)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_clause.c.diff?r1=1.148&r2=1.149)
parse_relation.c (r1.120 -> r1.121)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/parser/parse_relation.c.diff?r1=1.120&r2=1.121)
pgsql/src/backend/utils/adt:
ruleutils.c (r1.216 -> r1.217)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/adt/ruleutils.c.diff?r1=1.216&r2=1.217)
pgsql/src/include/access:
tupdesc.h (r1.48 -> r1.49)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/access/tupdesc.h.diff?r1=1.48&r2=1.49)
pgsql/src/include/catalog:
catversion.h (r1.320 -> r1.321)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/catalog/catversion.h.diff?r1=1.320&r2=1.321)
pgsql/src/include/nodes:
parsenodes.h (r1.304 -> r1.305)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/parsenodes.h.diff?r1=1.304&r2=1.305)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2006-03-16 18:11:17 pgsql: Fix invalid use of #if within a macro, per Laurenz Albe.
Previous Message User H-saito 2006-03-15 14:31:23 psqlodbc - psqlodbc: There was a problem by SSLMODE.