Go to file
Tom Lane 7863404417 A bunch of changes aimed at reducing backend startup time...
Improve 'pg_internal.init' relcache entry preload mechanism so that it is
safe to use for all system catalogs, and arrange to preload a realistic
set of system-catalog entries instead of only the three nailed-in-cache
indexes that were formerly loaded this way.  Fix mechanism for deleting
out-of-date pg_internal.init files: this must be synchronized with transaction
commit, not just done at random times within transactions.  Drive it off
relcache invalidation mechanism so that no special-case tests are needed.

Cache additional information in relcache entries for indexes (their pg_index
tuples and index-operator OIDs) to eliminate repeated lookups.  Also cache
index opclass info at the per-opclass level to avoid repeated lookups during
relcache load.

Generalize 'systable scan' utilities originally developed by Hiroshi,
move them into genam.c, use in a number of places where there was formerly
ugly code for choosing either heap or index scan.  In particular this allows
simplification of the logic that prevents infinite recursion between syscache
and relcache during startup: we can easily switch to heapscans in relcache.c
when and where needed to avoid recursion, so IndexScanOK becomes simpler and
does not need any expensive initialization.

Eliminate useless opening of a heapscan data structure while doing an indexscan
(this saves an mdnblocks call and thus at least one kernel call).
2002-02-19 20:11:20 +00:00
config Add memcmp() test and new memcmp.c file, for SunOS. Tested by Tatsuo. 2001-12-20 21:23:05 +00:00
contrib Remove CHECKPOINT call from pgbench -- Not needed and affects performance. 2002-02-18 05:46:41 +00:00
doc Privileges on functions and procedural languages 2002-02-18 23:11:58 +00:00
src A bunch of changes aimed at reducing backend startup time... 2002-02-19 20:11:20 +00:00
COPYRIGHT Better formatting 2001-12-19 18:53:47 +00:00
GNUmakefile.in /doc/src -> /doc for Peter. 2001-11-21 23:19:25 +00:00
HISTORY Consistend spelling for PL/pgSQL 2002-01-31 21:20:03 +00:00
INSTALL Rebuild from source. 2002-01-31 00:46:26 +00:00
Makefile Restructure the key include files per recent pghackers discussion: there 2001-02-10 02:31:31 +00:00
README New edition 2001-12-19 18:53:58 +00:00
aclocal.m4 Put the right runpath to libpq into the Perl module shared object on more 2001-08-26 22:28:04 +00:00
configure Set version to 7.3devel. 2002-02-18 21:46:17 +00:00
configure.in Set version to 7.3devel. 2002-02-18 21:46:17 +00:00
register.txt Stamp 7.2 for release. 2002-02-03 21:00:09 +00:00

README

PostgreSQL Database Management System
=====================================
  
This directory contains the source code distribution of the PostgreSQL
database management system.

PostgreSQL is an advanced object-relational database management system
that supports an extended subset of the SQL standard, including
transactions, foreign keys, subqueries, triggers, user-defined types
and functions.  This distribution also contains several language
bindings, including C, C++, Perl, Python, and Tcl, as well as drivers
for JDBC and ODBC.

See the file INSTALL for instructions on how to build and install
PostgreSQL.  That file also lists supported operating systems and
hardware platforms and contains information regarding any other
software packages that are required to build or run the PostgreSQL
system.  Changes between all PostgreSQL releases are recorded in the
file HISTORY.  Copyright and license information can be found in the
file COPYRIGHT.  A comprehensive documentation set is included in this
distribution; it can be read as described in the installation
instructions.

The latest version of this software may be obtained at
ftp://ftp.postgresql.org/pub/.  For more information look at our web
site located at http://www.postgresql.org/.