1. 20 Aug, 2009 1 commit
  2. 19 Aug, 2009 3 commits
  3. 18 Aug, 2009 10 commits
  4. 17 Aug, 2009 3 commits
  5. 16 Aug, 2009 2 commits
  6. 15 Aug, 2009 3 commits
  7. 14 Aug, 2009 7 commits
  8. 13 Aug, 2009 4 commits
  9. 12 Aug, 2009 6 commits
    • Tom Lane's avatar
      Improve error message for the case where a requested foreign key constraint · b6bde524
      Tom Lane authored
      does match some unique index on the referenced table, but that index is
      only deferrably unique.  We were doing this nicely for the
      default-to-primary-key case, but were being lazy for the other case.
      
      Dean Rasheed
      b6bde524
    • Tom Lane's avatar
    • Tom Lane's avatar
      Allow backends to start up without use of the flat-file copy of pg_database. · 04011cc9
      Tom Lane authored
      To make this work in the base case, pg_database now has a nailed-in-cache
      relation descriptor that is initialized using hardwired knowledge in
      relcache.c.  This means pg_database is added to the set of relations that
      need to have a Schema_pg_xxx macro maintained in pg_attribute.h.  When this
      path is taken, we'll have to do a seqscan of pg_database to find the row
      we need.
      
      In the normal case, we are able to do an indexscan to find the database's row
      by name.  This is made possible by storing a global relcache init file that
      describes only the shared catalogs and their indexes (and therefore is usable
      by all backends in any database).  A new backend loads this cache file,
      finds its database OID after an indexscan on pg_database, and then loads
      the local relcache init file for that database.
      
      This change should effectively eliminate number of databases as a factor
      in backend startup time, even with large numbers of databases.  However,
      the real reason for doing it is as a first step towards getting rid of
      the flat files altogether.  There are still several other sub-projects
      to be tackled before that can happen.
      04011cc9
    • Tom Lane's avatar
      Fix old bug in log_autovacuum_min_duration code: it was relying on being able · a1f0c9ba
      Tom Lane authored
      to access a Relation entry it had just closed.  I happened to be testing with
      CLOBBER_CACHE_ALWAYS, which made this a guaranteed core dump (at least on
      machines where sprintf %s isn't forgiving of a NULL pointer).  It's probably
      quite unlikely that it would fail in the field, but a bug is a bug.  Fix by
      moving the relation_close call down past the logging action.
      a1f0c9ba
    • Peter Eisentraut's avatar
      Split the plpython regression test into test cases arranged by topic, instead · 9d984866
      Peter Eisentraut authored
      of the previous monolithic setup-create-run sequence, that was apparently
      inherited from a previous test infrastructure, but makes working with the
      tests and adding new ones weird.
      9d984866
    • Peter Eisentraut's avatar
      Document the minimum required Python version. · ef7574eb
      Peter Eisentraut authored
      It turns out that Python 2.2 is the oldest version that PL/Python compiles
      with, apparently related to the introduction of iterators.  Might as well
      document this.
      ef7574eb
  10. 11 Aug, 2009 1 commit