Skip to content
Snippets Groups Projects
  1. Apr 10, 2011
  2. Jan 01, 2011
  3. Sep 20, 2010
  4. Feb 26, 2010
  5. Jan 15, 2010
    • Tom Lane's avatar
      Do parse analysis of an EXPLAIN's contained statement during the normal · 08f8d478
      Tom Lane authored
      parse analysis phase, rather than at execution time.  This makes parameter
      handling work the same as it does in ordinary plannable queries, and in
      particular fixes the incompatibility that Pavel pointed out with plpgsql's
      new handling of variable references.  plancache.c gets a little bit
      grottier, but the alternatives seem worse.
      08f8d478
  6. Jan 02, 2010
  7. Nov 04, 2009
    • Tom Lane's avatar
      Add support for invoking parser callback hooks via SPI and in cached plans. · 9bedd128
      Tom Lane authored
      As proof of concept, modify plpgsql to use the hooks.  plpgsql is still
      inserting $n symbols textually, but the "back end" of the parsing process now
      goes through the ParamRef hook instead of using a fixed parameter-type array,
      and then execution only fetches actually-referenced parameters, using a hook
      added to ParamListInfo.
      
      Although there's a lot left to be done in plpgsql, this already cures the
      "if (TG_OP = 'INSERT' and NEW.foo ...)"  problem, as illustrated by the
      changed regression test.
      9bedd128
  8. Jan 01, 2009
  9. Jan 01, 2008
  10. Nov 15, 2007
  11. Mar 13, 2007
    • Tom Lane's avatar
      First phase of plan-invalidation project: create a plan cache management · b9527e98
      Tom Lane authored
      module and teach PREPARE and protocol-level prepared statements to use it.
      In service of this, rearrange utility-statement processing so that parse
      analysis does not assume table schemas can't change before execution for
      utility statements (necessary because we don't attempt to re-acquire locks
      for utility statements when reusing a stored plan).  This requires some
      refactoring of the ProcessUtility API, but it ends up cleaner anyway,
      for instance we can get rid of the QueryContext global.
      
      Still to do: fix up SPI and related code to use the plan cache; I'm tempted to
      try to make SQL functions use it too.  Also, there are at least some aspects
      of system state that we want to ensure remain the same during a replan as in
      the original processing; search_path certainly ought to behave that way for
      instance, and perhaps there are others.
      b9527e98
  12. Jan 05, 2007
  13. Oct 04, 2006
  14. Sep 06, 2006
    • Tom Lane's avatar
      Change processing of extended-Query mode so that an unnamed statement · 5983a1aa
      Tom Lane authored
      that has parameters is always planned afresh for each Bind command,
      treating the parameter values as constants in the planner.  This removes
      the performance penalty formerly often paid for using out-of-line
      parameters --- with this definition, the planner can do constant folding,
      LIKE optimization, etc.  After a suggestion by Andrew@supernews.
      5983a1aa
  15. Apr 22, 2006
  16. Mar 05, 2006
  17. Dec 28, 2005
    • Tom Lane's avatar
      Implement SQL-compliant treatment of row comparisons for < <= > >= cases · 6e077097
      Tom Lane authored
      (previously we only did = and <> correctly).  Also, allow row comparisons
      with any operators that are in btree opclasses, not only those with these
      specific names.  This gets rid of a whole lot of indefensible assumptions
      about the behavior of particular operators based on their names ... though
      it's still true that IN and NOT IN expand to "= ANY".  The patch adds a
      RowCompareExpr expression node type, and makes some changes in the
      representation of ANY/ALL/ROWCOMPARE SubLinks so that they can share code
      with RowCompareExpr.
      
      I have not yet done anything about making RowCompareExpr an indexable
      operator, but will look at that soon.
      
      initdb forced due to changes in stored rules.
      6e077097
  18. Dec 31, 2004
    • PostgreSQL Daemon's avatar
      · 2ff50159
      PostgreSQL Daemon authored
      Tag appropriate files for rc3
      
      Also performed an initial run through of upgrading our Copyright date to
      extend to 2005 ... first run here was very simple ... change everything
      where: grep 1996-2004 && the word 'Copyright' ... scanned through the
      generated list with 'less' first, and after, to make sure that I only
      picked up the right entries ...
      2ff50159
  19. Aug 29, 2004
  20. Aug 02, 2004
    • Tom Lane's avatar
      Allow DECLARE CURSOR to take parameters from the portal in which it is · f622c540
      Tom Lane authored
      executed.  Previously, the DECLARE would succeed but subsequent FETCHes
      would fail since the parameter values supplied to DECLARE were not
      propagated to the portal created for the cursor.
      In support of this, add type Oids to ParamListInfo entries, which seems
      like a good idea anyway since code that extracts a value can double-check
      that it got the type of value it was expecting.
      Oliver Jowett, with minor editorialization by Tom Lane.
      f622c540
  21. Nov 29, 2003
    • PostgreSQL Daemon's avatar
      · 55b11325
      PostgreSQL Daemon authored
      make sure the $Id tags are converted to $PostgreSQL as well ...
      55b11325
  22. Aug 04, 2003
  23. Dec 14, 2002
    • Tom Lane's avatar
      Clean up plantree representation of SubPlan-s --- SubLink does not appear · 2d8d6662
      Tom Lane authored
      in the planned representation of a subplan at all any more, only SubPlan.
      This means subselect.c doesn't scribble on its input anymore, which seems
      like a good thing; and there are no longer three different possible
      interpretations of a SubLink.  Simplify node naming and improve comments
      in primnodes.h.  No change to stored rules, though.
      2d8d6662
  24. Dec 13, 2002
  25. Dec 05, 2002
    • Tom Lane's avatar
      Phase 1 of read-only-plans project: cause executor state nodes to point · 1fd0c59e
      Tom Lane authored
      to plan nodes, not vice-versa.  All executor state nodes now inherit from
      struct PlanState.  Copying of plan trees has been simplified by not
      storing a list of SubPlans in Plan nodes (eliminating duplicate links).
      The executor still needs such a list, but it can build it during
      ExecutorStart since it has to scan the plan tree anyway.
      No initdb forced since no stored-on-disk structures changed, but you
      will need a full recompile because of node-numbering changes.
      1fd0c59e
  26. Nov 25, 2002
  27. Jun 20, 2002
  28. Nov 05, 2001
  29. Oct 28, 2001
  30. Oct 25, 2001
  31. Jan 24, 2001
  32. Jan 26, 2000
    • Bruce Momjian's avatar
      Add: · 5c25d602
      Bruce Momjian authored
        * Portions Copyright (c) 1996-2000, PostgreSQL, Inc
      
      to all files copyright Regents of Berkeley.  Man, that's a lot of files.
      5c25d602
  33. Jul 16, 1999
  34. Feb 14, 1999
  35. Sep 01, 1998
  36. Feb 26, 1998
  37. Feb 13, 1998
  38. Sep 08, 1997
Loading