aboutsummaryrefslogtreecommitdiff
path: root/contrib/postgres_fdw/postgres_fdw.h
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2017-06-14 11:10:05 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2017-06-14 11:10:05 -0400
commit8e72239e9d961c27f02b242e33fa832c364c7a4b (patch)
tree5060415d99b58597c4b1282b3f9226d9be83aec8 /contrib/postgres_fdw/postgres_fdw.h
parenta571c7f661a7b601aafcb12196d004cdb8b8cb23 (diff)
downloadpostgresql-8e72239e9d961c27f02b242e33fa832c364c7a4b.tar.gz
postgresql-8e72239e9d961c27f02b242e33fa832c364c7a4b.zip
Fix no-longer-valid shortcuts in expression_returns_set().
expression_returns_set() used to short-circuit its recursion upon seeing certain node types, such as DistinctExpr, that it knew the executor did not support set-valued arguments for. That was never inherent, though, just a reflection of laziness in execQual.c. With the new implementation of SRFs there is no reason to think that any scalar-valued expression node could not have a set-valued subexpression, except for AggRefs and WindowFuncs where we know there is a parser check rejecting it. And indeed, the shortcut causes unexpected failures for cases such as a SRF underneath DistinctExpr, because the planner stops looking for SRFs too soon. Discussion: https://postgr.es/m/5259.1497044025@sss.pgh.pa.us
Diffstat (limited to 'contrib/postgres_fdw/postgres_fdw.h')
0 files changed, 0 insertions, 0 deletions