aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/arrayfuncs.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2020-04-07 22:12:14 -0400
committerTom Lane <tgl@sss.pgh.pa.us>2020-04-07 22:12:14 -0400
commit981643dcdb70b6ce70d8a08417f71f465f236cb5 (patch)
treea9963feb87daf4a5796228d589bd8bc241e344ef /src/backend/utils/adt/arrayfuncs.c
parentc8434d64ce03c32e0029417a82ae937f2055268f (diff)
downloadpostgresql-981643dcdb70b6ce70d8a08417f71f465f236cb5.tar.gz
postgresql-981643dcdb70b6ce70d8a08417f71f465f236cb5.zip
Allow partitionwise join to handle nested FULL JOIN USING cases.
This case didn't work because columns merged by FULL JOIN USING are represented in the parse tree by COALESCE expressions, and the logic for recognizing a partitionable join failed to match upper-level join clauses to such expressions. To fix, synthesize suitable COALESCE expressions and add them to the nullable_partexprs lists. This is pretty ugly and brute-force, but it gets the job done. (I have ambitions of rethinking the way outer-join output Vars are represented, so maybe that will provide a cleaner solution someday. For now, do this.) Amit Langote, reviewed by Justin Pryzby, Richard Guo, and myself Discussion: https://postgr.es/m/CA+HiwqG2WVUGmLJqtR0tPFhniO=H=9qQ+Z3L_ZC+Y3-EVQHFGg@mail.gmail.com
Diffstat (limited to 'src/backend/utils/adt/arrayfuncs.c')
0 files changed, 0 insertions, 0 deletions