summaryrefslogtreecommitdiff
path: root/src/backend/optimizer
AgeCommit message (Expand)Author
2007-09-06Make eval_const_expressions() preserve typmod when simplifying something likeTom Lane
2007-09-03Implement function-local GUC parameter settings, as per recent discussion.Tom Lane
2007-08-31Apply a band-aid fix for the problem that 8.2 and up completely misestimateTom Lane
2007-08-31Rewrite make_outerjoininfo's construction of min_lefthand and min_righthandTom Lane
2007-08-26Make ARRAY(SELECT ...) return an empty array, rather than a NULL, when theTom Lane
2007-07-24Fix predicate-proving logic to cope with binary-compatibility cases whenTom Lane
2007-07-18Fix an old thinko in SS_make_initplan_from_plan, which is used when optimizingTom Lane
2007-07-12Fix mistaken Assert in adjust_appendrel_attr_needed, per Greg Stark.Tom Lane
2007-07-07Fix a couple of planner bugs introduced by the new ability to discardTom Lane
2007-06-23Separate parse-analysis for utility commands out of parser/analyze.cTom Lane
2007-06-11Support UPDATE/DELETE WHERE CURRENT OF cursor_name, per SQL standard.Tom Lane
2007-06-05Downgrade implicit casts to text to be assignment-only, except for the onesTom Lane
2007-05-31Change build_index_pathkeys() so that the expressions it builds to representTom Lane
2007-05-26Repair two constraint-exclusion corner cases triggered by proving that anTom Lane
2007-05-25Create hooks to let a loadable plugin monitor (or even replace) the plannerTom Lane
2007-05-22Repair planner bug introduced in 8.2 by ability to rearrange outer joins:Tom Lane
2007-05-22Fix best_inner_indexscan to return both the cheapest-total-cost andTom Lane
2007-05-21Teach tuplestore.c to throw away data before the "mark" point when the callerTom Lane
2007-05-12Improve predicate_refuted_by_simple_clause() to handle IS NULL and IS NOT NULLTom Lane
2007-05-04Teach tuplesort.c about "top N" sorting, in which only the first N tuplesTom Lane
2007-05-01Fix a thinko in my patch of a couple months ago for bug #3116: it did theTom Lane
2007-04-30Marginal performance hack: use a dedicated routine instead of copyObjectTom Lane
2007-04-30Marginal performance hack: avoid unnecessary work in expression_tree_mutator.Tom Lane
2007-04-27Modify processing of DECLARE CURSOR and EXPLAIN so that they can resolve theTom Lane
2007-04-21Some further performance tweaks for planning large inheritance trees thatTom Lane
2007-04-21Avoid useless work during set_plain_rel_pathlist() when the relationTom Lane
2007-04-21Tweak make_inh_translation_lists() to check the common case wherein parent andTom Lane
2007-04-21Tweak set_rel_width() to avoid redundant executions of getrelid().Tom Lane
2007-04-17Rewrite choose_bitmap_and() to make it more robust in the presence ofTom Lane
2007-04-16Expose more cursor-related functionality in SPI: specifically, allowTom Lane
2007-04-15Avoid running build_index_pathkeys() in situations where there cannotTom Lane
2007-04-06Don't remove the 'alias' field from flattened rangetable entries;Tom Lane
2007-04-06Make 'col IS NULL' clauses be indexable conditions.Tom Lane
2007-04-02Support enum data types. Along the way, use macros for the values ofTom Lane
2007-03-27Fix array coercion expressions to ensure that the correct volatility isTom Lane
2007-03-21Fix some problems with selectivity estimation for partial indexes.Tom Lane
2007-03-17Fix up the remaining places where the expression node structure would loseTom Lane
2007-03-13First phase of plan-invalidation project: create a plan cache managementTom Lane
2007-03-06Fix oversight in original coding of inline_function(): sinceTom Lane
2007-02-27Get rid of the separate EState for subplans, and just let them share theTom Lane
2007-02-25Put back copyObject() call I removed in a fit of brain fade. This oneTom Lane
2007-02-23Now that plans have flat rangetable lists, it's a lot easier to get EXPLAIN toTom Lane
2007-02-22Change Agg and Group nodes so that Vars contained in their targetlistsTom Lane
2007-02-22Turn the rangetable used by the executor into a flat list, and avoid storingTom Lane
2007-02-20Remove the Query structure from the executor's API. This allows us to stopTom Lane
2007-02-19Get rid of some old and crufty global variables in the planner. WhenTom Lane
2007-02-19Put function expressions and values lists into FunctionScan and ValuesScanTom Lane
2007-02-16Teach find_nonnullable_rels to handle OR cases: if every arm of an ORTom Lane
2007-02-16Adjust the definition of is_pushed_down so that it's always true for INNERTom Lane
2007-02-16Fix another problem in 8.2 changes that allowed "one-time" qual conditions toTom Lane