mirror of
https://github.com/postgres/postgres.git
synced 2025-09-02 04:21:28 +03:00
expandRTE and get_rte_attribute_type mistakenly always imputed typmod -1
to columns of an RTE that was a function returning RECORD with a column definition list. Apparently no one has tried to use non-default typmod with a function returning RECORD before.
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
*
|
||||
*
|
||||
* IDENTIFICATION
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/parse_relation.c,v 1.90.2.1 2004/04/18 18:13:31 tgl Exp $
|
||||
* $Header: /cvsroot/pgsql/src/backend/parser/parse_relation.c,v 1.90.2.2 2005/05/29 17:10:52 tgl Exp $
|
||||
*
|
||||
*-------------------------------------------------------------------------
|
||||
*/
|
||||
@@ -1410,7 +1410,7 @@ expandRTE(ParseState *pstate, RangeTblEntry *rte,
|
||||
varnode = makeVar(rtindex,
|
||||
attnum,
|
||||
atttypid,
|
||||
-1,
|
||||
colDef->typename->typmod,
|
||||
sublevels_up);
|
||||
|
||||
*colvars = lappend(*colvars, varnode);
|
||||
@@ -1659,7 +1659,7 @@ get_rte_attribute_type(RangeTblEntry *rte, AttrNumber attnum,
|
||||
ColumnDef *colDef = nth(attnum - 1, coldeflist);
|
||||
|
||||
*vartype = typenameTypeId(colDef->typename);
|
||||
*vartypmod = -1;
|
||||
*vartypmod = colDef->typename->typmod;
|
||||
}
|
||||
else
|
||||
ereport(ERROR,
|
||||
|
Reference in New Issue
Block a user