1. 12 Aug, 2009 4 commits
    • 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
  2. 11 Aug, 2009 5 commits
  3. 10 Aug, 2009 8 commits
  4. 09 Aug, 2009 1 commit
    • Peter Eisentraut's avatar
      Ship documentation without intermediate tarballs · ed920882
      Peter Eisentraut authored
      Documentation files in HTML and man formats are now prepared for
      distribution using the distprep make target, like everything else.  They
      are placed in doc/src/sgml/html and manX and installed from there by
      make install, if present.  The business with the tarballs in the tarball
      is gone.
      ed920882
  5. 08 Aug, 2009 1 commit
  6. 07 Aug, 2009 10 commits
  7. 06 Aug, 2009 2 commits
  8. 05 Aug, 2009 5 commits
    • Alvaro Herrera's avatar
      Fix manpages related to SPI functions. · 6403c35e
      Alvaro Herrera authored
      This patch adds declaration so that they end up in section 3, and adds
      them to the Makefiles to install them.
      
      Also, some synopses needed reflowing so that they look nice in 80-column
      terminals.
      6403c35e
    • Tom Lane's avatar
      25bd9ce3
    • Heikki Linnakangas's avatar
      Improve error messages in md.c. When a filesystem operation like open() or · 23dc89d2
      Heikki Linnakangas authored
      fsync() fails, say "file" rather than "relation" when printing the filename.
      
      This makes messages that display block numbers a bit confusing. For example,
      in message 'could not read block 150000 of file "base/1234/5678.1"', 150000
      is the block number from the beginning of the relation, ie. segment 0, not
      150000th block within that segment. Per discussion, users aren't usually
      interested in the exact location within the file, so we can live with that.
      
      To ease constructing error messages, add FilePathName(File) function to
      return the pathname of a virtual fd.
      23dc89d2
    • Joe Conway's avatar
      Implement dblink_get_notify(). · f4095b4c
      Joe Conway authored
      Adds the ability to retrieve async notifications using dblink,
      via the addition of the function dblink_get_notify(). Original patch
      by Marcus Kempe, suggestions by Tom Lane and Alvaro Herrera, patch
      review and adjustments by Joe Conway.
      f4095b4c
    • Michael Meskes's avatar
      Fixed copyright notice. · 16f3cf8c
      Michael Meskes authored
      16f3cf8c
  9. 04 Aug, 2009 4 commits
    • Peter Eisentraut's avatar
      Use DocBook XSL stylesheets for man page building · c29d7f02
      Peter Eisentraut authored
      This switches the man page building process to use the DocBook XSL stylesheet
      toolchain.  The previous targets for Docbook2X are removed. configure has been
      updated to look for the new tools.  The Documentation appendix contains the
      new build instructions.  There are also a few isolated tweaks in the
      documentation to improve places that came out strangely in the man pages.
      c29d7f02
    • Tom Lane's avatar
      Fix pg_dump to do the right thing when escaping the contents of large objects. · b1732111
      Tom Lane authored
      The previous implementation got it right in most cases but failed in one:
      if you pg_dump into an archive with standard_conforming_strings enabled, then
      pg_restore to a script file (not directly to a database), the script will set
      standard_conforming_strings = on but then emit large object data as
      nonstandardly-escaped strings.
      
      At the moment the code is made to emit hex-format bytea strings when dumping
      to a script file.  We might want to change to old-style escaping for backwards
      compatibility, but that would be slower and bulkier.  If we do, it's just a
      matter of reimplementing appendByteaLiteral().
      
      This has been broken for a long time, but given the lack of field complaints
      I'm not going to worry about back-patching.
      b1732111
    • Alvaro Herrera's avatar
      Avoid including miscadmin.h into plpgsql.h; instead include it into the two · 50d08346
      Alvaro Herrera authored
      source files that need it.
      50d08346
    • Tom Lane's avatar
      Fix an ecpg test, too. Are we there yet? · 466a4925
      Tom Lane authored
      466a4925