1. 28 Nov, 2008 4 commits
  2. 27 Nov, 2008 9 commits
  3. 26 Nov, 2008 12 commits
  4. 25 Nov, 2008 5 commits
  5. 24 Nov, 2008 4 commits
  6. 23 Nov, 2008 1 commit
    • Tom Lane's avatar
      Teach RequestCheckpoint() to wait and retry a few times if it can't signal · 6f6a6d8b
      Tom Lane authored
      the bgwriter immediately.  This covers the case where the bgwriter is still
      starting up, as seen in a recent buildfarm failure.  In future it might also
      assist with clean recovery after a bgwriter termination and restart ---
      right now the postmaster treats early bgwriter exit as a system crash,
      but that might not always be so.
      6f6a6d8b
  7. 22 Nov, 2008 1 commit
    • Tom Lane's avatar
      Switch the planner over to treating qualifications of a JOIN_SEMI join as · 8309d006
      Tom Lane authored
      though it is an inner rather than outer join type.  This essentially means
      that we don't bother to separate "pushed down" qual conditions from actual
      join quals at a semijoin plan node; which is okay because the restrictions of
      SQL syntax make it impossible to have a pushed-down qual that references the
      inner side of a semijoin.  This allows noticeably better optimization of
      IN/EXISTS cases than we had before, since the equivalence-class machinery can
      now use those quals.  Also fix a couple of other mistakes that had essentially
      disabled the ability to unique-ify the inner relation and then join it to just
      a subset of the left-hand relations.  An example case using the regression
      database is
      
      select * from tenk1 a, tenk1 b
      where (a.unique1,b.unique2) in (select unique1,unique2 from tenk1 c);
      
      which is planned reasonably well by 8.3 and earlier but had been forcing a
      cartesian join of a/b in CVS HEAD.
      8309d006
  8. 21 Nov, 2008 4 commits