1. 30 Jan, 2005 1 commit
  2. 23 Jan, 2005 1 commit
  3. 22 Jan, 2005 2 commits
  4. 15 Jan, 2005 3 commits
  5. 06 Jan, 2005 2 commits
  6. 13 Dec, 2004 1 commit
  7. 01 Dec, 2004 1 commit
    • Tom Lane's avatar
      Change planner to use the current true disk file size as its estimate of · 5374d097
      Tom Lane authored
      a relation's number of blocks, rather than the possibly-obsolete value
      in pg_class.relpages.  Scale the value in pg_class.reltuples correspondingly
      to arrive at a hopefully more accurate number of rows.  When pg_class
      contains 0/0, estimate a tuple width from the column datatypes and divide
      that into current file size to estimate number of rows.  This improved
      methodology allows us to jettison the ancient hacks that put bogus default
      values into pg_class when a table is first created.  Also, per a suggestion
      from Simon, make VACUUM (but not VACUUM FULL or ANALYZE) adjust the value
      it puts into pg_class.reltuples to try to represent the mean tuple density
      instead of the minimal density that actually prevails just after VACUUM.
      These changes alter the plans selected for certain regression tests, so
      update the expected files accordingly.  (I removed join_1.out because
      it's not clear if it still applies; we can add back any variant versions
      as they are shown to be needed.)
      5374d097
  8. 27 Nov, 2004 2 commits
  9. 22 Nov, 2004 2 commits
  10. 21 Nov, 2004 1 commit
    • Tom Lane's avatar
      Fix plperl and pltcl error handling per my previous proposal. SPI · 35f49941
      Tom Lane authored
      operations are now run as subtransactions, so that errors in them
      can be reported as ordinary Perl or Tcl errors and caught by the
      normal error handling convention of those languages.  Also do some
      minor code cleanup in pltcl.c: extract a large chunk of duplicated
      code in pltcl_SPI_execute and pltcl_SPI_execute_plan into a shared
      subroutine.
      35f49941
  11. 20 Nov, 2004 1 commit
  12. 11 Nov, 2004 1 commit
  13. 10 Nov, 2004 3 commits
  14. 05 Nov, 2004 1 commit
    • Tom Lane's avatar
      Create 'default_tablespace' GUC variable that supplies a TABLESPACE · 98e8b480
      Tom Lane authored
      clause implicitly whenever one is not given explicitly.  Remove concept
      of a schema having an associated tablespace, and simplify the rules for
      selecting a default tablespace for a table or index.  It's now just
      (a) explicit TABLESPACE clause; (b) default_tablespace if that's not an
      empty string; (c) database's default.  This will allow pg_dump to use
      SET commands instead of tablespace clauses to determine object locations
      (but I didn't actually make it do so).  All per recent discussions.
      98e8b480
  15. 24 Oct, 2004 1 commit
  16. 22 Oct, 2004 1 commit
  17. 08 Oct, 2004 1 commit
  18. 04 Oct, 2004 2 commits
  19. 01 Oct, 2004 1 commit
  20. 24 Sep, 2004 1 commit
  21. 13 Sep, 2004 1 commit
    • Tom Lane's avatar
      Redesign query-snapshot timing so that volatile functions in READ COMMITTED · b2c40712
      Tom Lane authored
      mode see a fresh snapshot for each command in the function, rather than
      using the latest interactive command's snapshot.  Also, suppress fresh
      snapshots as well as CommandCounterIncrement inside STABLE and IMMUTABLE
      functions, instead using the snapshot taken for the most closely nested
      regular query.  (This behavior is only sane for read-only functions, so
      the patch also enforces that such functions contain only SELECT commands.)
      As per my proposal of 6-Sep-2004; I note that I floated essentially the
      same proposal on 19-Jun-2002, but that discussion tailed off without any
      action.  Since 8.0 seems like the right place to be taking possibly
      nontrivial backwards compatibility hits, let's get it done now.
      b2c40712
  22. 10 Sep, 2004 1 commit
    • Tom Lane's avatar
      Fire non-deferred AFTER triggers immediately upon query completion, · b339d1ff
      Tom Lane authored
      rather than when returning to the idle loop.  This makes no particular
      difference for interactively-issued queries, but it makes a big difference
      for queries issued within functions: trigger execution now occurs before
      the calling function is allowed to proceed.  This responds to numerous
      complaints about nonintuitive behavior of foreign key checking, such as
      http://archives.postgresql.org/pgsql-bugs/2004-09/msg00020.php, and
      appears to be required by the SQL99 spec.
      Also take the opportunity to simplify the data structures used for the
      pending-trigger list, rename them for more clarity, and squeeze out a
      bit of space.
      b339d1ff
  23. 30 Aug, 2004 2 commits
  24. 27 Aug, 2004 1 commit
  25. 26 Aug, 2004 3 commits
  26. 24 Aug, 2004 1 commit
  27. 21 Aug, 2004 1 commit
  28. 18 Aug, 2004 1 commit