postgresql/src/include/optimizer
Tom Lane c291203ca3 Fix EquivalenceClass code to handle volatile sort expressions in a more
predictable manner; in particular that if you say ORDER BY output-column-ref,
it will in fact sort by that specific column even if there are multiple
syntactic matches.  An example is
	SELECT random() AS a, random() AS b FROM ... ORDER BY b, a;
While the use-case for this might be a bit debatable, it worked as expected
in earlier releases, so we should preserve the behavior for 8.3.  Per my
recent proposal.

While at it, fix convert_subquery_pathkeys() to handle RelabelType stripping
in both directions; it needs this for the same reasons make_sort_from_pathkeys
does.
2007-11-08 21:49:48 +00:00
..
clauses.h Get rid of some old and crufty global variables in the planner. When 2007-02-19 07:03:34 +00:00
cost.h Fix cost estimates for EXISTS subqueries that are evaluated as initPlans 2007-09-22 21:36:40 +00:00
geqo.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_copy.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_gene.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_misc.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_mutation.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_pool.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_random.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_recombination.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
geqo_selection.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
joininfo.h Refactor planner's pathkeys data structure to create a separate, explicit 2007-01-20 20:45:41 +00:00
pathnode.h Refactor planner's pathkeys data structure to create a separate, explicit 2007-01-20 20:45:41 +00:00
paths.h Fix EquivalenceClass code to handle volatile sort expressions in a more 2007-11-08 21:49:48 +00:00
plancat.h Rename DLLIMPORT macro to PGDLLIMPORT to avoid conflict with 2007-07-25 12:22:54 +00:00
planmain.h Fix the plan-invalidation mechanism to treat regclass constants that refer to 2007-10-11 18:05:27 +00:00
planner.h Rename DLLIMPORT macro to PGDLLIMPORT to avoid conflict with 2007-07-25 12:22:54 +00:00
predtest.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
prep.h Update CVS HEAD for 2007 copyright. Back branches are typically not 2007-01-05 22:20:05 +00:00
restrictinfo.h Refactor planner's pathkeys data structure to create a separate, explicit 2007-01-20 20:45:41 +00:00
subselect.h Get rid of some old and crufty global variables in the planner. When 2007-02-19 07:03:34 +00:00
tlist.h Fix EquivalenceClass code to handle volatile sort expressions in a more 2007-11-08 21:49:48 +00:00
var.h HOT updates. When we update a tuple without changing any of its indexed 2007-09-20 17:56:33 +00:00