1. 19 Oct, 2010 3 commits
  2. 18 Oct, 2010 5 commits
    • Peter Eisentraut's avatar
      bc8624b1
    • Bruce Momjian's avatar
      Document the tablespace directory "should" be empty, rather than "must" · 433c7a65
      Bruce Momjian authored
      be empty.  Because of binary migration usage, it might not be empty.
      433c7a65
    • Robert Haas's avatar
      Change example pg_hba.conf in docs to match altered pg_hba.conf.sample · 9c73e20f
      Robert Haas authored
      Peter Eisentraut's recent patch to allow host names in pg_hba.conf
      changed the contents of pg_hba.conf.sample
      
      Fujii Masao
      9c73e20f
    • Tom Lane's avatar
      Fix a passel of inappropriately-named global functions in GIN. · 419d2374
      Tom Lane authored
      The GIN code has absolutely no business exporting GIN-specific functions
      with names as generic as compareItemPointers() or newScanKey(); that's
      just trouble waiting to happen.  I got annoyed about this again just now
      and decided to fix it.  This commit ensures that all global symbols
      defined in access/gin/ have names including "gin" or "Gin".  There were a
      couple of cases, like names involving "PostingItem", where arguably the
      names were already sufficiently nongeneric; but I figured as long as I was
      risking creating merge problems for unapplied GIN patches I might as well
      impose a uniform policy.
      
      I didn't touch any static symbol names.  There might be some places
      where it'd be appropriate to rename some static functions to match
      siblings that are exported, but I'll leave that for another time.
      419d2374
    • Tom Lane's avatar
      Improve GIN indexscan cost estimation. · 48c7d9f6
      Tom Lane authored
      The better estimate requires more statistics than we previously stored:
      in particular, counts of "entry" versus "data" pages within the index,
      as well as knowledge of the number of distinct key values.  We collect
      this information during initial index build and update it during VACUUM,
      storing the info in new fields on the index metapage.  No initdb is
      required because these fields will read as zeroes in a pre-existing
      index, and the new gincostestimate code is coded to behave (reasonably)
      sanely if they are zeroes.
      
      Teodor Sigaev, reviewed by Jan Urbanski, Tom Lane, and Itagaki Takahiro.
      48c7d9f6
  3. 17 Oct, 2010 1 commit
    • Magnus Hagander's avatar
      Fix msvc build for localized versions of Visual C++ · cd0e8253
      Magnus Hagander authored
      Look only at the non-localized part of the output from "vcbuild /?",
      which is used to determine the version of Visual Studio in use. Different
      languages seem to localize different amounts of the string, but we assume
      the part "Microsoft Visual C++" won't be modified.
      cd0e8253
  4. 16 Oct, 2010 2 commits
  5. 15 Oct, 2010 8 commits
  6. 14 Oct, 2010 10 commits
  7. 13 Oct, 2010 6 commits
  8. 12 Oct, 2010 3 commits
    • Tom Lane's avatar
      Remove some unnecessary tests of pgstat_track_counts. · f4d242ef
      Tom Lane authored
      We may as well make pgstat_count_heap_scan() and related macros just count
      whenever rel->pgstat_info isn't null.  Testing pgstat_track_counts buys
      nothing at all in the normal case where that flag is ON; and when it's OFF,
      the pgstat_info link will be null, so it's still a useless test.
      
      This change is unlikely to buy any noticeable performance improvement,
      but a cycle shaved is a cycle earned; and my investigations earlier today
      convinced me that we're down to the point where individual instructions in
      the inner execution loops are starting to matter.
      f4d242ef
    • Alvaro Herrera's avatar
      Fix typo · 82659e04
      Alvaro Herrera authored
      82659e04
    • Tom Lane's avatar
      Fix plpython so that it again honors typmod while assigning to tuple fields. · 09130e58
      Tom Lane authored
      This was broken in 9.0 while improving plpython's conversion behavior for
      bytea and boolean.  Per bug report from maizi.
      09130e58
  9. 11 Oct, 2010 2 commits
    • Tom Lane's avatar
      Fix assorted bugs in GIN's WAL replay logic. · 4016bdef
      Tom Lane authored
      The original coding was quite sloppy about handling the case where
      XLogReadBuffer fails (because the page has since been deleted).  This
      would result in either "bad buffer id: 0" or an Assert failure during
      replay, if indeed the page were no longer there.  In a couple of places
      it also neglected to check whether the change had already been applied,
      which would probably result in corrupted index contents.  I believe that
      bug #5703 is an instance of the first problem.  These issues could show up
      without replication, but only if you were unfortunate enough to crash
      between modification of a GIN index and the next checkpoint.
      
      Back-patch to 8.2, which is as far back as GIN has WAL support.
      4016bdef
    • Tom Lane's avatar
      Improve the planner's simplification of NOT constructs. · 220e45bf
      Tom Lane authored
      This patch merges the responsibility for NOT-flattening into
      eval_const_expressions' processing.  It wasn't done that way originally
      because prepqual.c is far older than eval_const_expressions.  But putting
      this work into eval_const_expressions saves one pass over the qual trees,
      and in fact saves even more than that because we can exploit the knowledge
      that the subexpressions have already been recursively simplified.  Doing it
      this way also lets us do it uniformly over all expressions, whereas
      prepqual.c formerly just did it at top level to save cycles.  That should
      improve the planner's ability to recognize logically-equivalent constructs.
      
      While at it, also add the ability to fold a NOT into BooleanTest and
      NullTest constructs (the latter only for the scalar-datatype case).
      
      Per discussion of bug #5702.
      220e45bf