Don't try to constant-fold functions returning RECORD. We were never
Tom Lane <tgl@sss.pgh.pa.us>
Don't try to constant-fold functions returning RECORD. We were never able to do this before, but I had tried to make an exception for functions with OUT parameters. Michael Fuhr found one problem with it already, and I found another, which was it didn't work for strict functions with a NULL input. While both of these could be worked around, the probability that there are more gotchas seems high; I think prudence dictates just reverting to the former behavior for now. Accordingly, remove the kluge added to get_expr_result_type() for Michael's case.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/optimizer/util/clauses.c | modified | +11 −7 |
| src/backend/utils/fmgr/funcapi.c | modified | +1 −31 |