1. 11 May, 2012 2 commits
    • Heikki Linnakangas's avatar
      On GiST page split, release the locks on child pages before recursing up. · 3652d72d
      Heikki Linnakangas authored
      When inserting the downlinks for a split gist page, we used hold the locks
      on the child pages until the insertion into the parent - and recursively its
      parent if it had to be split too - were all completed. Change that so that
      the locks on child pages are released after the insertion in the immediate
      parent is done, before recursing further up the tree.
      
      This reduces the number of lwlocks that are held simultaneously. Holding
      many locks is bad for concurrency, and in extreme cases you can even hit
      the limit of 100 simultaneously held lwlocks in a backend. If you're really
      unlucky, you can hit the limit while in a critical section, which brings
      down the whole system.
      
      This fixes bug #6629 reported by Tom Forbes. Backpatch to 9.1. The page
      splitting code was rewritten in 9.1, and the old code did not have this
      problem.
      3652d72d
    • Tom Lane's avatar
      Improve discussion of setting server parameters. · 817ec1bc
      Tom Lane authored
      Rewrite description of "include_if_exists" for clarity.  Add subsection
      headings to make the structure of the page a little clearer.  A couple
      other minor improvements too.
      
      Josh Kupershmidt and Tom Lane
      817ec1bc
  2. 10 May, 2012 35 commits
  3. 09 May, 2012 3 commits
    • Peter Eisentraut's avatar
      Add make dependency so that postgres.bki is rebuilt in major version change · 5d39807a
      Peter Eisentraut authored
      Every time since the current rule for postgres.bki was put in place
      when we change the major version, people complain that their tests
      fail in strange ways.  This is because the version number in
      postgres.bki is not updated, because it has no dependency for that.
      And you can't even force the rebuild manually if you don't happen to
      know which file has the problem.  Fix that now before it will happen
      again.
      
      The only remaining problem with switching major versions, as far as
      the regression tests are concerned, is that contrib needs to be
      rebuilt.  But that's easily invoked, and in any case the failure modes
      are more friendly if you forget that.
      5d39807a
    • Peter Eisentraut's avatar
      Split contrib documentation into extensions and programs · 1c882e07
      Peter Eisentraut authored
      Create separate appendixes for contrib extensions and other server
      plugins on the one hand, and utility programs on the other.  Recast
      the documentation of the latter as refentries, so that man pages are
      generated.
      1c882e07
    • Peter Eisentraut's avatar