1. 09 11月, 2006 6 次提交
    • T
      Change Windows rename and unlink substitutes so that they time out after · dcbdf9b1
      Tom Lane 提交于
      30 seconds instead of retrying forever.  Also modify xlog.c so that if
      it fails to rename an old xlog segment up to a future slot, it will
      unlink the segment instead.  Per discussion of bug #2712, in which it
      became apparent that Windows can handle unlinking a file that's being
      held open, but not renaming it.
      dcbdf9b1
    • T
      Modify aset.c to track the next intended block allocation size explicitly. · 808b3190
      Tom Lane 提交于
      The former coding relied on the actual allocated size of the last block,
      which made it behave strangely if the first allocation in a context was
      larger than ALLOC_CHUNK_LIMIT: subsequent allocations would be referenced
      to that and not to the intended series of block sizes.  Noted while
      studying a memory wastage gripe from Tatsuo.
      808b3190
    • T
      Tweak accumArrayResult() to double the size of its working arrays when · fc5eb3f6
      Tom Lane 提交于
      more space is needed, instead of incrementing by a fixed amount; the old
      method wastes lots of space and time when the ultimate size is large.
      Per gripe from Tatsuo.
      fc5eb3f6
    • T
      Fix performance issues in replace_text(), replace_text_regexp(), and · a5cf12e2
      Tom Lane 提交于
      text_to_array(): they all had O(N^2) behavior on long input strings in
      multibyte encodings, because of repeated rescanning of the input text to
      identify substrings whose positions/lengths were computed in characters
      instead of bytes.  Fix by tracking the current source position as a char
      pointer as well as a character-count.  Also avoid some unnecessary palloc
      operations.  text_to_array() also leaked memory intracall due to failure
      to pfree temporary strings.  Per gripe from Tatsuo Ishii.
      a5cf12e2
    • N
      Fix two typos. · 9d6f2632
      Neil Conway 提交于
      9d6f2632
    • T
      New README, forgotten when docs was updated · 092ed294
      Teodor Sigaev 提交于
      092ed294
  2. 08 11月, 2006 4 次提交
  3. 07 11月, 2006 3 次提交
  4. 06 11月, 2006 5 次提交
    • T
      Revert to the pre-8.2 method of probing for libm, that is, always · 02f37bd8
      Tom Lane 提交于
      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
    • T
      Get rid of some unnecessary dependencies on DataDir: wherever possible, · 74686b6d
      Tom Lane 提交于
      the backend should rely on its working-directory setting instead.
      Also do some message-style police work in contrib/adminpack.
      74686b6d
    • N
      Minor fix for LDAP authentication: if an error occurs, we need to · 62fe410e
      Neil Conway 提交于
      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
    • T
      Fix recently-identified PITR recovery hazard: the base backup could contain · 76d5667b
      Tom Lane 提交于
      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
    • T
      Fix recently-understood problems with handling of XID freezing, particularly · 48188e16
      Tom Lane 提交于
      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
  5. 05 11月, 2006 2 次提交
  6. 03 11月, 2006 1 次提交
  7. 02 11月, 2006 1 次提交
    • T
      Fix "failed to re-find parent key" btree VACUUM failure by revising page · 70ce5c90
      Tom Lane 提交于
      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
  8. 01 11月, 2006 3 次提交
  9. 31 10月, 2006 3 次提交
  10. 30 10月, 2006 1 次提交
  11. 27 10月, 2006 2 次提交
  12. 26 10月, 2006 3 次提交
  13. 25 10月, 2006 1 次提交
  14. 24 10月, 2006 5 次提交