Skip to content
Snippets Groups Projects
  1. Mar 28, 2005
    • Tom Lane's avatar
      Remove dead push/pop rollback code. Vadim once planned to implement · 11919160
      Tom Lane authored
      transaction rollback via UNDO but I think that's highly unlikely to
      happen, so we may as well remove the stubs.  (Someday we ought to
      rip out the stub xxx_undo routines, too.)  Per Alvaro.
      11919160
    • Tom Lane's avatar
      Rethink the order of expression preprocessing: eval_const_expressions · 5db2e838
      Tom Lane authored
      really ought to run before canonicalize_qual, because it can now produce
      forms that canonicalize_qual knows how to improve (eg, NOT clauses).
      Also, because eval_const_expressions already knows about flattening
      nested ANDs and ORs into N-argument form, the initial flatten_andors
      pass in canonicalize_qual is now completely redundant and can be
      removed.  This doesn't save a whole lot of code, but the time and
      palloc traffic eliminated is a useful gain on large expression trees.
      5db2e838
    • Tom Lane's avatar
      First steps towards index scans with heap access decoupled from index · bf3dbb58
      Tom Lane authored
      access: define new index access method functions 'amgetmulti' that can
      fetch multiple TIDs per call.  (The functions exist but are totally
      untested as yet.)  Since I was modifying pg_am anyway, remove the
      no-longer-needed 'rel' parameter from amcostestimate functions, and
      also remove the vestigial amowner column that was creating useless
      work for Alvaro's shared-object-dependencies project.
      Initdb forced due to changes in pg_am.
      bf3dbb58
  2. Mar 27, 2005
    • Tom Lane's avatar
      Teach const-expression simplification to simplify boolean equality cases, · 351519af
      Tom Lane authored
      that is 'x = true' becomes 'x' and 'x = false' becomes 'NOT x'.  This isn't
      all that amazingly useful in itself, but it ensures that we will recognize
      the different forms as being logically equivalent when checking partial
      index predicates.  Per example from Patrick Clery.
      351519af
    • Tom Lane's avatar
      Eliminate duplicate hasnulls bit testing in index tuple access, and · 617dd33b
      Tom Lane authored
      clean up itup.h a little bit.
      617dd33b
    • Tom Lane's avatar
      Add a back-link from IndexOptInfo structs to their parent RelOptInfo · 926e8a00
      Tom Lane authored
      structs.  There are many places in the planner where we were passing
      both a rel and an index to subroutines, and now need only pass the
      index struct.  Notationally simpler, and perhaps a tad faster.
      926e8a00
    • Tom Lane's avatar
      Expand the 'special index operator' machinery to handle special cases · febc9a61
      Tom Lane authored
      for boolean indexes.  Previously we would only use such an index with
      WHERE clauses like 'indexkey = true' or 'indexkey = false'.  The new
      code transforms the cases 'indexkey', 'NOT indexkey', 'indexkey IS TRUE',
      and 'indexkey IS FALSE' into one of these.  While this is only marginally
      useful in itself, I intend soon to change constant-expression simplification
      so that 'foo = true' and 'foo = false' are reduced to just 'foo' and
      'NOT foo' ... which would lose the ability to use boolean indexes for
      such queries at all, if the indexscan machinery couldn't make the
      reverse transformation.
      febc9a61
  3. Mar 26, 2005
  4. Mar 25, 2005
  5. Mar 24, 2005
Loading