Skip to content
Snippets Groups Projects
  1. Mar 17, 2008
  2. Mar 16, 2008
  3. Mar 15, 2008
    • Tom Lane's avatar
      Change hash index creation so that rather than always establishing exactly · c9a1cc69
      Tom Lane authored
      two buckets at the start, we create a number of buckets appropriate for the
      estimated size of the table.  This avoids a lot of expensive bucket-split
      actions during initial index build on an already-populated table.
      
      This is one of the two core ideas of Tom Raney and Shreya Bhargava's patch
      to reduce hash index build time.  I'm committing it separately to make it
      easier for people to test the effects of this separately from the effects
      of their other core idea (pre-sorting the index entries by bucket number).
      c9a1cc69
    • Tom Lane's avatar
      Fix inappropriately-timed memory context switch in autovacuum_do_vac_analyze. · 4873c96f
      Tom Lane authored
      This accidentally failed to fail before 8.3, because the context we were
      switching back to was long-lived anyway; but it sure looks risky as can be
      now.  Well spotted by Pavan Deolasee.
      4873c96f
  4. Mar 14, 2008
  5. Mar 13, 2008
    • Tom Lane's avatar
    • Tom Lane's avatar
      Fix varstr_cmp's special case for UTF8 encoding on Windows so that strings · 5e00913d
      Tom Lane authored
      that are reported as "equal" by wcscoll() are checked to see if they really
      are bitwise equal, and are sorted per strcmp() if not.  We made this happen
      a couple of years ago in the regular code path, but it unaccountably got
      left out of the Windows/UTF8 case (probably brain fade on my part at the
      time).  As in the prior set of changes, affected users may need to reindex
      indexes on textual columns.
      
      Backpatch as far as 8.2, which is the oldest release we are still supporting
      on Windows.
      5e00913d
    • Tom Lane's avatar
      Fix heap_page_prune's problem with failing to send cache invalidation · 3e701a04
      Tom Lane authored
      messages if the calling transaction aborts later on.  Collapsing out line
      pointer redirects is a done deal as soon as we complete the page update,
      so syscache *must* be notified even if the VACUUM FULL as a whole doesn't
      complete.  To fix, add some functionality to inval.c to allow the pending
      inval messages to be sent immediately while heap_page_prune is still
      running.  The implementation is a bit chintzy: it will only work in the
      context of VACUUM FULL.  But that's all we need now, and it can always be
      extended later if needed.  Per my trouble report of a week ago.
      3e701a04
    • Bruce Momjian's avatar
      Add URL for: · f4bce7e0
      Bruce Momjian authored
      * Do async I/O for faster random read-ahead of data
      
        Async I/O allows multiple I/O requests to be sent to the disk with
        results coming back asynchronously.
      
      >   http://archives.postgresql.org/pgsql-performance/2007-09/msg00255.php
      f4bce7e0
    • Tom Lane's avatar
      Fix pg_plan_queries() to restore the previous setting of ActiveSnapshot · da6a707c
      Tom Lane authored
      (probably NULL) before exiting.  Up to now it's just left the variable as it
      set it, which means that after we're done processing the current client
      message, ActiveSnapshot is probably pointing at garbage (because this function
      is typically run in MessageContext which will get reset).  There doesn't seem
      to have been any code path in which that mattered before 8.3, but now the
      plancache module might try to use the stale value if the next client message
      is a Bind for a prepared statement that is in need of replanning.  Per report
      from Alex Hunsaker.
      da6a707c
  6. Mar 12, 2008
  7. Mar 11, 2008
Loading