postgresql/src/include/optimizer
Tom Lane 77387f0ac8 Suppress creation of backwardly-indexed paths for LATERAL join clauses.
Given a query such as

SELECT * FROM foo JOIN LATERAL (SELECT foo.var1) ss(x) ON ss.x = foo.var2

the existence of the join clause "ss.x = foo.var2" encourages indxpath.c to
build a parameterized path for foo using any index available for foo.var2.
This is completely useless activity, though, since foo has got to be on the
outside not the inside of any nestloop join with ss.  It's reasonably
inexpensive to add tests that prevent creation of such paths, so let's do
that.
2012-08-30 14:33:00 -04:00
..
clauses.h Account for SRFs in targetlists in planner rowcount estimates. 2012-07-21 17:45:07 -04:00
cost.h Fix up planner infrastructure to support LATERAL properly. 2012-08-26 22:50:23 -04:00
geqo_copy.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_gene.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_misc.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_mutation.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_pool.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_random.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_recombination.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo_selection.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
geqo.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
joininfo.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
pathnode.h Fix up planner infrastructure to support LATERAL properly. 2012-08-26 22:50:23 -04:00
paths.h Suppress creation of backwardly-indexed paths for LATERAL join clauses. 2012-08-30 14:33:00 -04:00
placeholder.h Revisit handling of UNION ALL subqueries with non-Var output columns. 2012-03-16 13:11:55 -04:00
plancat.h Fix planner to pass correct collation to operator selectivity estimators. 2012-07-08 23:51:08 -04:00
planmain.h Fix up planner infrastructure to support LATERAL properly. 2012-08-26 22:50:23 -04:00
planner.h Fix up planner infrastructure to support LATERAL properly. 2012-08-26 22:50:23 -04:00
predtest.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
prep.h More fixes for planner's handling of LATERAL. 2012-08-12 16:01:26 -04:00
restrictinfo.h Revise parameterized-path mechanism to fix assorted issues. 2012-04-19 15:53:47 -04:00
subselect.h Run pgindent on 9.2 source tree in preparation for first 9.3 2012-06-10 15:20:04 -04:00
tlist.h Update copyright notices for year 2012. 2012-01-01 18:01:58 -05:00
var.h Centralize the logic for detecting misplaced aggregates, window funcs, etc. 2012-08-10 11:36:15 -04:00