1. 06 Nov, 2006 3 commits
    • Tom Lane's avatar
      Revert to the pre-8.2 method of probing for libm, that is, always · 02f37bd8
      Tom Lane authored
      include it if it links properly.  It seems too risky to assume that
      standard functions like pow() are not special-cased by the compiler.
      Per report from Andreas Lange that build fails on Solaris cc compiler
      with -fast.  Even though we don't consider that a supported option,
      I'm worried that similar issues will arise with other compilers.
      02f37bd8
    • Tom Lane's avatar
      Get rid of some unnecessary dependencies on DataDir: wherever possible, · 74686b6d
      Tom Lane authored
      the backend should rely on its working-directory setting instead.
      Also do some message-style police work in contrib/adminpack.
      74686b6d
    • Neil Conway's avatar
      Minor fix for LDAP authentication: if an error occurs, we need to · 62fe410e
      Neil Conway authored
      manually release the LDAP handle via ldap_unbind(). This isn't a
      significant problem in practice because an error eventually results
      in exiting the process, but we can cleanup correctly without too
      much pain.
      
      In passing, fix an error in snprintf() usage: the "size" parameter
      to snprintf() is the size of the destination buffer, including space
      for the NUL terminator. Also, depending on the value of NAMEDATALEN,
      the old coding could have allowed for a buffer overflow.
      62fe410e
  2. 05 Nov, 2006 2 commits
    • Tom Lane's avatar
      Fix recently-identified PITR recovery hazard: the base backup could contain · 76d5667b
      Tom Lane authored
      stale relcache init files (pg_internal.init), and there is no mechanism for
      updating them during WAL replay.  Easiest solution is just to delete the init
      files at conclusion of startup, and let the first backend started in each
      database take care of rebuilding the init file.  Simon Riggs and Tom Lane.
      
      Back-patched to 8.1.  Arguably this should be fixed in 8.0 too, but it would
      require significantly more code since 8.0 has no handy startup-time scan of
      pg_database to piggyback on.  Manual solution of the problem is possible
      in 8.0 (just delete the pg_internal.init files before starting WAL replay),
      so that may be a sufficient answer.
      76d5667b
    • Tom Lane's avatar
      Fix recently-understood problems with handling of XID freezing, particularly · 48188e16
      Tom Lane authored
      in PITR scenarios.  We now WAL-log the replacement of old XIDs with
      FrozenTransactionId, so that such replacement is guaranteed to propagate to
      PITR slave databases.  Also, rather than relying on hint-bit updates to be
      preserved, pg_clog is not truncated until all instances of an XID are known to
      have been replaced by FrozenTransactionId.  Add new GUC variables and
      pg_autovacuum columns to allow management of the freezing policy, so that
      users can trade off the size of pg_clog against the amount of freezing work
      done.  Revise the already-existing code that forces autovacuum of tables
      approaching the wraparound point to make it more bulletproof; also, revise the
      autovacuum logic so that anti-wraparound vacuuming is done per-table rather
      than per-database.  initdb forced because of changes in pg_class, pg_database,
      and pg_autovacuum catalogs.  Heikki Linnakangas, Simon Riggs, and Tom Lane.
      48188e16
  3. 04 Nov, 2006 2 commits
  4. 03 Nov, 2006 1 commit
  5. 01 Nov, 2006 3 commits
    • Tom Lane's avatar
      Fix "failed to re-find parent key" btree VACUUM failure by revising page · 70ce5c90
      Tom Lane authored
      deletion code to avoid the case where an upper-level btree page remains "half
      dead" for a significant period of time, and to block insertions into a key
      range that is in process of being re-assigned to the right sibling of the
      deleted page's parent.  This prevents the scenario reported by Ed L. wherein
      index keys could become out-of-order in the grandparent index level.
      
      Since this is a moderately invasive fix, I'm applying it only to HEAD.
      The bug exists back to 7.4, but the back branches will get a different patch.
      70ce5c90
    • Tom Lane's avatar
      pg_restore failed on tar-format archives if they contained large objects · 19d0c46d
      Tom Lane authored
      (blobs) with comments, per bug #2727 from Konstantin Pelepelin.
      Mea culpa for not having tested this case.
      Back-patch to 8.1; prior branches don't dump blob comments at all.
      19d0c46d
    • Tom Lane's avatar
      Update zic database to tzdata2006n. · c1fdbba4
      Tom Lane authored
      c1fdbba4
  6. 31 Oct, 2006 3 commits
  7. 30 Oct, 2006 2 commits
  8. 27 Oct, 2006 1 commit
  9. 26 Oct, 2006 3 commits
  10. 25 Oct, 2006 1 commit
    • Tom Lane's avatar
      expression_tree_walker failed to let walker function see the immediate child · 76d5f6f0
      Tom Lane authored
      node of a SubLink or SubPlan testexpr field.  Bug resulted from replacing
      the old lefthand/exprs list fields with a simple expression field, and not
      remembering that expression_tree_walker is coded to save a few cycles by
      recursing directly to self on list fields (on the assumption the walker
      isn't interested in List nodes per se).  On non-list fields it must of
      course call the walker.  Possibly that hack isn't worth the risk of more
      such bugs, but I'll leave it be for now.  Per bug report from James Robinson.
      76d5f6f0
  11. 24 Oct, 2006 5 commits
  12. 23 Oct, 2006 6 commits
  13. 22 Oct, 2006 4 commits
  14. 21 Oct, 2006 4 commits