aboutsummaryrefslogtreecommitdiff
path: root/src/backend/parser/parse_target.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2011-04-09 14:40:09 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2011-04-09 14:40:09 -0400
commita19002d4e5da028ff7280554b281e402c609898b (patch)
treeac25f9dab75856d24d88a3a2bfac5faf34c25fba /src/backend/parser/parse_target.c
parent7c76906b7e24d9ea94a2b0e33396ebcac600437d (diff)
downloadpostgresql-a19002d4e5da028ff7280554b281e402c609898b.tar.gz
postgresql-a19002d4e5da028ff7280554b281e402c609898b.zip
Adjust collation determination rules as per discussion.
Remove crude hack that tried to propagate collation through a function-returning-record, ie, from the function's arguments to individual fields selected from its result record. That is just plain inconsistent, because the function result is composite and cannot have a collation; and there's no hope of making this kind of action-at-a-distance work consistently. Adjust regression test cases that expected this to happen. Meanwhile, the behavior of casting to a domain with a declared collation stays the same as it was, since that seemed to be the consensus.
Diffstat (limited to 'src/backend/parser/parse_target.c')
-rw-r--r--src/backend/parser/parse_target.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/parser/parse_target.c b/src/backend/parser/parse_target.c
index d53d1d9f008..52c6db2eb5c 100644
--- a/src/backend/parser/parse_target.c
+++ b/src/backend/parser/parse_target.c
@@ -1290,7 +1290,7 @@ ExpandRowReference(ParseState *pstate, Node *expr,
fselect->fieldnum = i + 1;
fselect->resulttype = att->atttypid;
fselect->resulttypmod = att->atttypmod;
- /* resultcollid may get overridden by parse_collate.c */
+ /* save attribute's collation for parse_collate.c */
fselect->resultcollid = att->attcollation;
if (targetlist)