Upgrade doc stuff to 6.3.

This commit is contained in:
Bruce Momjian 1998-02-01 21:20:26 +00:00
parent 6159ba3ab1
commit a654db303e
7 changed files with 496 additions and 220 deletions

163
HISTORY
View File

@ -1,3 +1,166 @@
PostgreSQL 6.3 Sun Feb 1 14:57:30 EST 1998
-------------------------------------------------------------
A dump/restore is required for those wishing to migrate data from
previous releases of PostgreSQL.
CHANGES IN THE 6.3 RELEASE
--------------------------
Bug Fixes
---------
Fix binary cursors broken by MOVE implementation(Vadim)
Fix for tcl library crash(Jan)
Fix for array handling, from Gerhard Hintermayer
Fix acl error, and remove duplicate pqtrace(Bruce)
Fix psql \e for empty file(Bruce)
Fix for textcat on varchar() fields(Bruce)
Fix for DBT Sendproc (Zeugswetter Andres)
Fix vacuum analyze syntax problem(Bruce)
Fix for international identifiers(Tatsuo)
Fix aggregates on inherited tables(Bruce)
Fix substr() for out-of-bounds data
Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2)(Bruce)
Fix notty output to show status result. -q option still turns it off(Bruce)
Fix for count(*), aggs with views and multiple tables and sum(3)(Bruce)
Fix cluster(Bruce)
Fix for PQtrace start/stop several times(Bruce)
Fix a variety of locking problems like newer lock waiters getting
lock before older waiters, and having readlock people not share
locks if a writer is waiting for a lock, and waiting writers not
getting priority over waiting readers(Bruce)
Fix crashes in psql when executing queries from external files(James)
Fix problem with multiple order by columns, with the first one having
NULL values(Jeroen)
Use correct hash table support functions for float8 and int4(Thomas)
Re-enable JOIN= option in CREATE OPERATOR statement (Thomas)
Change precedence for boolean operators to match expected behavior(Thomas)
Generate elog(ERROR) on over-large integer(Bruce)
Allow multiple-argument functions in constraint clauses(Thomas)
Check boolean input literals for 'true','false','yes','no','1','0'
and throw elog(ERROR) if unrecognized(Thomas)
Enhancements
------------
Real deadlock detection, no more timeouts(Bruce)
<NOT DONE YET> Subselects with EXISTS, IN, ALL, ANY keywords (Vadim, Bruce, Thomas)
Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP,
CURRENT_USER(Thomas)
Speedup by inlining some frequently-called functions
Modify constraint syntax to be SQL92-compliant(Thomas)
Implement SQL92 PRIMARY KEY and UNIQUE clauses using indices(Thomas)
Recognize SQL92 syntax for FOREIGN KEY. Throw elog notice(Thomas)
Allow NOT NULL UNIQUE constraint clause (each allowed separately before)(Thomas)
Allow Postgres-style casting ("::") of non-constants(Thomas)
Add support for SQL3 TRUE and FALSE boolean constants(Thomas)
Support SQL92 syntax for IS TRUE/IS FALSE/IS NOT TRUE/IS NOT FALSE(Thomas)
Allow shorter strings for boolean literals (e.g. "t", "tr", "tru")(Thomas)
Allow SQL92 delimited identifiers(Thomas)
Implement SQL92 binary and hexadecimal string decoding (b'10' and x'1F')(Thomas)
Support SQL92 syntax for type coercion of literal strings
(e.g. "DATETIME 'now'")(Thomas)
Add conversions for int2, int4, and OID types to and from text(Thomas)
Use shared lock when building indices(Vadim)
Free memory allocated for an user query inside transaction block after
this query is done, was turned off in <= 6.2.1(Vadim)
New SQL statement CREATE PROCEDURAL LANGUAGE(Jan)
New PostgreSQL Procedural Language (PL) backend interface(Jan)
Rename pg_dump -H option to -h(Bruce)
Add Java support for passwords, European dates(Peter)
Use indices for LIKE and ~, !~ operations(Bruce)
Add hash functions for datetime and timespan(Thomas)
Time Travel removed(Vadim, Bruce)
Add paging for \d and \z, and fix \i(Bruce)
Add Unix domain socket support to backend and to frontend library(Goran)
Implement CREATE DATABASE/WITH LOCATION and initlocation utility(Thomas)
Allow more SQL92 and/or Postgres reserved words as column identifiers(Thomas)
Augment support for SQL92 SET TIME ZONE...(Thomas)
SET/SHOW/RESET TIME ZONE uses TZ backend environment variable(Thomas)
Implement SET keyword = DEFAULT and SET TIME ZONE DEFAULT(Thomas)
Enable SET TIME ZONE using TZ environment variable(Thomas)
Add PGDATESTYLE environment variable to frontend and backend initialization(Thomas)
Add PGTZ, PGCOSTHEAP, PGCOSTINDEX, PGRPLANS, PGGEQO
frontend library initialization environment variables(Thomas)
Regression tests time zone automatically set with "setenv PGTZ PST8PDT"(Thomas)
Add pg_description table for info on tables, columns, operators, types, and
aggregates(Bruce)
Increase 16 char limit on system table/index names to 32 characters(Bruce)
Rename system indices(Bruce)
Add 'GERMAN' option to SET DATESTYLE(Thomas)
Define an "ISO-style" timespan output format with "hh:mm:ss" fields(Thomas)
Allow fractional values for delta times (e.g. '2.5 days')(Thomas)
Validate numeric input more carefully for delta times(Thomas)
Implement day of year as possible input to date_part()(Thomas)
Define timespan_finite() and text_timespan() functions(Thomas)
Remove archive stuff(Bruce)
Allow for a pg_password authentication database that is separate from
the system password file(Todd)
Dump ACLs, GRANT, REVOKE permissions(Matt)
Define text, varchar, and bpchar string length functions(Thomas)
Fix Query handling for inheritance, and cost computations(Bruce)
Implement CREATE TABLE/AS SELECT (alternative to SELECT/INTO)(Thomas)
Allow NOT, IS NULL, IS NOT NULL in constraints(Thomas)
Implement UNIONs for SELECT(Bruce)
Add UNION, GROUP, DISTINCT to INSERT(Bruce)
varchar() stores only necessary bytes on disk(Bruce)
Fix for BLOBs(Peter)
Mega-Patch for JDBC...see README_6.3 for list of changes(Peter)
Allow installation data block size and max tuple size configuration(Darren)
Remove unused "option" from PQconnectdb()
New LOCK command and lock manual page describing deadlocks(Bruce)
Add new psql \da, \dd, \df, \do, \dS, and \dT commands(Bruce)
Enhance psql \z to show sequences(Bruce)
Show NOT NULL and DEFAULT in psql \d table(Bruce)
New psql .psqlrc file startup(Andrew)
Modify sample startup script in contrib/linux to show syslog(Thomas)
New types for IP and MAC addresses in contrib/ip_and_mac(TomH)
Unix system time conversions with date/time types in contrib/unixdate(Thomas)
Update of contrib stuff(Massimo)
Add Unix socket support to DBD::Pg(Goran)
New python interface (PyGreSQL 2.0)(D'Arcy)
New frontend/backend protocol has a version number, network byte order(Phil)
Security features in pg_hba.conf enhanced and documented, many cleanups(Phil)
New HTML and Postscript documentation(Thomas)
Source Tree Changes
-------------------
Add new html development tools, and flow chart in /tools/backend
Fix for SCO compiles
Stratus computer port "Gillies, Robert" <GilliesR@Nichols.com>
Added support for shlib for BSD44_derived & i386_solaris
Make configure more automated(Brook)
Add script to check regression test results
Break parser functions into smaller files, group together(Bruce)
Rename heap_create to heap_create_and_catalog, rename heap_creatr
to heap_create()(Bruce)
Sparc/Linux patch for locking(TomS)
Remove PORTNAME and reorganize port-specific stuff(Marc)
Add optimizer README file(Bruce)
Remove some recursion in optimizer and clean up some code there(Bruce)
Fix for NetBSD locking(Henry)
Fix for libptcl make(Tatsuo)
AIX patch(Darren)
Change IS TRUE, IS FALSE, ... to expressions using "=" rather than
function calls to istrue() or isfalse() to allow optimization(Thomas)
Various fixes NetBSD/Sparc related(TomH)
Alpha linux locking(Travis,Ryan)
Change elog(WARN) to elog(ERROR)(Bruce)
FAQ for FreeBSD(Marc)
Bring in the PostODBC source tree as part of our standard distribution(Marc)
A minor patch for HP/UX 10 vs 9(Stan)
New pg_attribute.atttypmod for type-specific info like varchar length(Bruce)
Unixware patches(Billy)
New i386 'lock' for spin lock asm(Billy)
Support for multiplexed backends is removed
Start an OpenBSD port
Start an AUX port
Start a Cygnus port
Add string functions to regression suite(Thomas)
Expand a few function names formerly truncated to 16 characters(Thomas)
PostgreSQL 6.2.1 Fri Oct 17 00:01:27 EDT 1997
-------------------------------------------------------------

28
INSTALL
View File

@ -2,7 +2,7 @@ POSTGRESQL INSTALLATION INSTRUCTIONS
Copyright (c) 1997 Regents of the University of California
This is file /usr/src/pgsql/INSTALL. It contains notes on how to install
PostgreSQL v6.2.1. Up to date information on PostgreSQL may be found at
PostgreSQL v6.3. Up to date information on PostgreSQL may be found at
http://www.postgresql.org.
PostgreSQL is an RDBMS database server. It is not completely ANSI SQL
@ -110,7 +110,7 @@ PostgreSQL:
To check for disk space, use command "df -k".
4) Ftp file ftp://ftp.postgresql.org/pub/postgresql-v6.2.1.tar.gz from the
4) Ftp file ftp://ftp.postgresql.org/pub/postgresql-v6.3.tar.gz from the
Internet. Store it in your home directory.
5) Some platforms use flex. If your system uses flex then make sure
@ -149,11 +149,10 @@ PostgreSQL:
to change often every few weeks with no notice besides a quick comment
in the HACKERS mailing list. Full releases always require a dump/reload
from previous releases. It is therefore a bad idea to skip this
step. Also, do not use the pg_dumpall script from v6.0 or everything
will be owned by the Postgres super user. Type (with the gunzip line
and the following line typed as one line):
step. Type (with the gunzip line and the following line typed as one
line):
cd
gunzip -c postgresql-v6.2.1.tar.gz |
gunzip -c postgresql-v6.3.tar.gz |
tar xvf - src/bin/pg_dump/pg_dumpall
chmod a+x src/bin/pg_dump/pg_dumpall
src/bin/pg_dump/pg_dumpall > db.out
@ -218,7 +217,7 @@ PostgreSQL:
10) Unzip and untar the new source file. Type
cd /usr/src/pgsql
gunzip -c ~/postgresql-v6.2.1.tar.gz | tar xvf -
gunzip -c ~/postgresql-v6.3.tar.gz | tar xvf -
11) Configure the source code for your system. It is this step at which
you can specify your actual source path and installation paths for
@ -358,9 +357,10 @@ PostgreSQL:
location of this file will change accordingly.) This file should be
made read only again once you are finsihed.
If you are upgrading from v6.0 you can copy file pg_hba.conf from
your old database on top of the one in your new database, rather than
redoing this from scratch.
If you are upgrading, you can NOT copy file pg_hba.conf from your
old database on top of the one in your new database. You will
have to re-do your changes.
18) If you wish to skip the regression tests then skip to step 21.
However, we think skipping the tests is a BAD idea!
@ -405,7 +405,7 @@ PostgreSQL:
PostgreSQL.
For a i686/Linux-ELF platform, no tests failed since this is the
v6.2.1 regression testing reference platform.
v6.3 regression testing reference platform.
For the SPARC/Linux-ELF platform, using the 970525 beta version of
PostgreSQL v6.2 the following tests "failed":
@ -417,7 +417,7 @@ PostgreSQL:
the differences and then decide if those differences will affect your
intended use of PostgreSQL. However, keep in mind that this is likely
to be the most solid release of PostgreSQL to date, incorporating many
bug fixes from v6.1, and that previous versions of PostgreSQL have been
bug fixes from v6.2.1, and that previous versions of PostgreSQL have been
in use successfully for some time now.
After running the tests, type
@ -525,7 +525,7 @@ PostgreSQL:
rm -rf /usr/local/pgsql_6_0
# Also delete old database directory tree if it is not in
# /usr/local/pgsql_6_0/data
rm ~/postgresql-v6.2.1.tar.gz
rm ~/postgresql-v6.3.tar.gz
26) You will probably want to print out the documentation. Here is how
you might do it if you have Ghostscript on your system and are
@ -552,7 +552,7 @@ PostgreSQL:
supported platforms. We therefore ask you to let us know if you did
or did not get PostgreSQL to work on you system. Please send a
mail message to pgsql-ports@postgresql.org telling us the following:
- The version of PostgreSQL (v6.2.1, 6.1.1, beta 970703, etc.).
- The version of PostgreSQL (v6.3, 6.2.1, beta 970703, etc.).
- Your operating system (i.e. RedHat v4.0 Linux v2.0.26).
- Your hardware (SPARC, i486, etc.).
- Did you compile, install and run the regression tests cleanly?

2
README
View File

@ -2,7 +2,7 @@
PostgreSQL Data Base Management System (formerly known as Postgres, then
as Postgres95).
This directory contains the version 6.2.1 release of the PostgreSQL
This directory contains the version 6.3 release of the PostgreSQL
database server. The server is not ANSI SQL compliant, but it gets
closer with every release. After you unzip and untar the distribution
file, look at file INSTALL for the installation notes and file HISTORY

93
doc/FAQ
View File

@ -1,8 +1,7 @@
Frequently Asked Questions (FAQ) for PostgreSQL
Last updated: Wed Oct 15 23:16:48 EDT 1997
Version: 6.2.1
Last updated: Sun Feb 1 16:13:28 EST 1998
Current maintainer: Bruce Momjian (maillist@candle.pha.pa.us)
@ -14,8 +13,6 @@
Irix-specific questions are answered in
http://postgreSQL.org/docs/FAQ-irix.shtml.
Changes in this version (* = modified, + = new):
_________________________________________________________________
Questions answered:
@ -29,14 +26,15 @@ Questions answered:
1.5) Support for PostgreSQL
1.6) Latest release of PostgreSQL
1.7) Is there a commercial version of PostgreSQL?
1.8) What version of SQL does PostgreSQL use?
1.9) What documentation is available for PostgreSQL?
1.8) What documentation is available for PostgreSQL?
1.9) What version of SQL does PostgreSQL use?
1.10) Does PostgreSQL work with databases from earlier versions of
postgres?
1.11) Are there ODBC drivers for PostgreSQL?
1.12) What tools are available for hooking postgres to Web pages?
1.13) Does PostgreSQL have a graphical user interface? A report
generator? A embedded query language interface?
1.14) What is a good book to learn SQL?
2) Installation/Configuration questions
@ -91,6 +89,9 @@ Questions answered:
3.22) What is Genetic Query Optimization?
3.23) How do you remove a column from a table?
3.24) How do SELECT only the first few rows of a query?
3.25) Why can't I create a column named "time"?
3.26) How much database disk space is required to store data from a
typical flat file?
4) Questions about extending PostgreSQL
@ -242,8 +243,10 @@ Section 1: General Questions
1.6) Latest release of PostgreSQL
The latest release of PostgreSQL is version 6.2.1, which was released
on October 17th, 1997. For information about what is new in 6.2.1, see
our TODO list on our WWW page.
on October 17th, 1997. We are testing 6.3 beta. For information about
what is new in 6.3, see our TODO list on our WWW page.
We plan to have major releases every three months.
1.7) Is there a commercial version of PostgreSQL?
@ -279,6 +282,8 @@ Section 1: General Questions
PostgreSQL v1.09 is compatible with databases created with v1.01.
Upgrading to 6.3 from earlier releases requires a dump and restore.
Upgrading to 6.2.1 from pre-6.2 requires a dump and restore.
Upgrading to 6.2.1 from 6.2 does not require a dump, but see the
@ -286,7 +291,7 @@ Section 1: General Questions
Those ugrading from versions earlier than 1.09 must upgrade to 1.09
first without a dump/reload, then dump the data from 1.09, and then
load it into 6.2.1.
load it into 6.2.1 or 6.3 beta.
1.11) Are there ODBC drivers for PostgreSQL?
@ -312,15 +317,15 @@ Section 1: General Questions
1.12) What tools are available for hooking postgres to Web pages?
For web integration, PHP/FI is an excellent interface. The URL for
that is http://www.vex.net/php/
A nice introduction to Database-backed Web pages can be seen at:
http://www.webtools.com
For web integration, PHP is an excellent interface. The URL for that
is http://php.iquest.net
PHP is great for simple stuff, but for more complex stuff, some still
use the perl interface and CGI.pm.
An example of using WWW with C to talk to Postgres is can be tried at:
* http://postgreSQL.org/~mlc
An WWW gatway based on WDB using perl can be downloaded from:
* http://www.eol.ists.ca/~dunlop/wdb -p95
@ -331,6 +336,11 @@ Section 1: General Questions
reported some success at using 'pgbrowse' and 'onyx' as frontends to
PostgreSQL. Several contributions are working on tk based frontend
tools. Ask on the mailing list.
1.14) What is a good book to learn SQL?
Many of our users like The Practical SQL Handbook, Bowman et al,
Addison Wesley.
_________________________________________________________________
Section 2: Installation Questions
@ -409,9 +419,9 @@ Section 2: Installation Questions
this parameter too high, the process will not start or crash
unexpectedly. Each buffer is 8K and the defualt is 64 buffers.
You can also use the postmaster -S option to increase the maximum
amount of memory used by each backend process for temporary sorts.
Each buffer is 1K and the defualt is 512 buffers.
You can also use the postgres -S option to increase the maximum amount
of memory used by each backend process for temporary sorts. Each
buffer is 1K and the defualt is 512 buffers.
2.12) What debugging features are available in PostgreSQL?
@ -600,10 +610,10 @@ BYTEA bytea variable-length array of bytes
these fields or when doing other internal operations.
The last four types above are "varlena" types (i.e. the first four
bytes is the length, followed by the data). CHAR(#) and VARCHAR(#)
allocate the maximum number of bytes no matter how much data is stored
in the field. TEXT and BYTEA are the only character types that have
variable length on the disk.
bytes are the length, followed by the data). CHAR(#) allocates the
maximum number of bytes no matter how much data is stored in the
field. TEXT, VARCHAR(#), and BYTEA all have variable length on the
disk.
3.13) In a query, how do I detect if a field is NULL?
@ -708,7 +718,7 @@ BYTEA bytea variable-length array of bytes
separate tables. These oids can be used to identify specific user rows
and used in joins. It is recommended you use column type oid to store
oid values. See the sql(l) manual page to see the other internal
columns.
columns. You can create an index on the oid field for faster access.
Tids are used to indentify specific physical rows with block and
offset values. Tids change after rows are modified or reloaded. They
@ -750,7 +760,7 @@ BYTEA bytea variable-length array of bytes
DROP TABLE old_table;
ALTER TABLE new_table RENAME TO old_table;
3.23) How do SELECT only the first few rows of a query?
3.24) How do SELECT only the first few rows of a query?
See the fetch manual page.
@ -758,6 +768,41 @@ BYTEA bytea variable-length array of bytes
client. The entire query must be evaluated, even if you only want just
first few rows. Consider a query that has and ORDER BY. There is no
way to return any rows until the entire query is evaluated and sorted.
3.25) Why can't I create a column named "time"?
6.2.1 has added some new restricted keywords as we make PostgreSQL
more ANSI-92 compilant. The next release will have this restriction
removed. There is a patch on ftp.postgresql.org that will allow this
feature now.
3.26)How much database disk space is required to store data from a typical
flat file?
Consider a file with 300,000 lines with two integers on each line. The
flat file is 2.4MB. The size of the PostgreSQL database file
containing this data can be estimated:
40 bytes + each row header (approximate)
8 bytes + two int fields @ 4 bytes each
4 bytes + pointer on page to tuple
-------- =
52 bytes per row
The data page size in PostgreSQL is 8192(8k) bytes, so:
8192 bytes per page
------------------- = 157 rows per database page (rounded up)
52 bytes per row
300000 data rows
----------------- = 1911 database pages
157 rows per page
1911 database pages * 8192 bytes per page = 15,654,912 or 15.5MB
Indexes do not contain as much overhead, but do contain the data that
is being indexed, so they can be large also.
_________________________________________________________________
Section 4: Extending PostgreSQL
@ -803,4 +848,4 @@ Section 5: Bugs
You can also fill out the "bug-template" file and send it to:
* bugs@postgreSQL.org
This is the address of the developers mailing list.
This is the address of the developers mailing list.

426
doc/TODO
View File

@ -1,89 +1,98 @@
TODO list for PostgreSQL
========================
Last updated: Fri Oct 17 08:18:16 EDT 1997
Last updated: Sun Feb 1 15:08:57 EST 1998
Current maintainer: Bruce Momjian (maillist@candle.pha.pa.us)
The most recent version of this document can be viewed at
the PostgreSQL WWW site, http://www.postgreSQL.org.
THE CHANGES FOR 6.2 AND 6.2.1 APPEAR AT THE END OF THIS DOCUMENT
THE CHANGES FOR 6.3 APPEAR AT THE END OF THIS DOCUMENT
A dash(-) marks changes to be in the next release.
Developers who have claimed items are:
-------------------------------------
* Bruce is Bruce Momjian<maillist@candle.pha.pa.us>
* Bryan is Bryan Henderson<bryanh@giraffe.netgate.net>
* D'Arcy is D'Arcy J.M. Cain <darcy@druid.net>
* Dan is Dan McGuirk <mcguirk@indirect.com>
* Daniel is Daniel Kalchev <daniel@digsys.bg>
* Darren is Darren King <darrenk@insightdist.com>
* Edmund is Edmund Mergl <E.Mergl@bawue.de>
* Erich Stamberger <eberger@gewi.kfunigraz.ac.at>
* Gerhard is Gerhard Reithofer <gerhardr@tech-edv.co.at>
* Goran is Goran Thyni <goran@bildbasen.se>
* Henry is Henry B. Hotz <hotz@jpl.nasa.gov>
* Igor is Igor <igor@sba.miami.edu>
* Jan is Jan Wieck <wieck@sapserv.debis.de>
* Jun is Jun Kuwamura <juk@rccm.co.jp>
* Kurt is "Kurt J. Lidl" <lidl@va.pubnix.com>
* Marc is Marc Fournier <scrappy@hub.org>
* Martin is Martin S. Utesch <utesch@aut.tu-freiberg.de>
* Oleg is Oleg Bartunov <oleg@sai.msu.su>
* Paul is Paul M. Aoki <aoki@CS.Berkeley.EDU>
* Patrick is Patrick van Kleef <pvk@pobox.com>
* Peter is Peter T Mount <psqlhack@maidast.demon.co.uk>
* Raymond is Raymond Toy <toy@rtp.ericsson.se>
* Soo-Ho Ok <shok@detc.dongeui-tc.ac.kr>
* Stefan Simkovics <ssimkovi@rainbow.studorg.tuwien.ac.at>
* Sven is Sven Verdoolaege <skimo@breughel.ufsia.ac.be>
* Tatsuo is Tatsuo Ishii <t-ishii@sra.co.jp>
* Thomas is Thomas Lockhart <tgl@mythos.jpl.nasa.gov>
* Todd is Todd Brandys is <brandys@eng3.hep.uiuc.edu>
* Vadim is "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su>
* Vivek is Vivek Khera <khera@kci.kciLink.com>
RELIABILITY
-----------
* -Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup(Erich)
* -Overhaul bufmgr/lockmgr/transaction manager(Vadim)
* Fix CLUSTER
* Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup
* Overhaul bufmgr/lockmgr/transaction manager
* -Fix CLUSTER
* Remove EXTEND?
* Fix all NULL features, allow psql to print nulls meaningfully
* Fix compile and security of Kerberos/GSSAPI code (Daniel Kalchev?)
* COUNT on VIEW always returns zero (maybe because there is no oid for views?)
* -Aggregates on VIEW always returns zero (maybe because there is no oid for views?)
* CREATE VIEW requires super-user priviledge
* can lo_export()/lo_import() read/write anywhere, causing a security problem?
* Can lo_export()/lo_import() read/write anywhere, causing a security problem?
* Tables that start with xinv confused to be large objects
* Two and three dimmensional arrays display improperly, missing {}
* Add GROUP BY and HAVING to INSERT INTO table SELECT * FROM table2
* -Add GROUP BY to INSERT INTO table SELECT * FROM table2
* lo_unlink() crashes server
* Allow variable casts with BETWEEN 'today'::asbtime AND 'today'::abstime
* Prevent auto-table reference, like SELECT table.col WHERE col = 3 (?)
* Remove un-needed malloc() calls and replace with palloc().
* -Remove un-needed malloc() calls and replace with palloc().
* SELECT * FROM table WHERE int4_column = '1' fails
* SELECT a[1] FROM test fails, it needs test.a[1]
* SELECT COUNT(*) FROM TAB1, TAB2 fails
* SELECT SUM(2+2) FROM table dumps core
* -SELECT COUNT(*) FROM TAB1, TAB2 fails
* -SELECT SUM(2+2) FROM table dumps core
* UPDATE table SET table.value = 3 fails
* UPDATE key_table SET keyval=max(reftab.NUM)+1 WHERE tblname='reftab' fails
* INSERT INTO ... SELECT DISTINCT ... generates error on DISTINCT
* INSERT INTO table SELECT id, count(*) FROM table2 GROUP BY id generate error
* -UPDATE key_table SET keyval=count(reftab.num) fails
* -INSERT INTO ... SELECT DISTINCT ... does not accept DISTINCT
* -INSERT INTO table SELECT id, count(*) FROM table2 GROUP BY id generates error
* Make pg_dump preserve inheritance column order, do non-inherits first
* User who can create databases can modify pg_database table
ENHANCEMENTS
------------
* Replace table-level locking with row or page-level locking(Vadim)
* PRIMARY KEY during table creation
* -PRIMARY KEY during table creation(Thomas)
* Add SERIAL type
* Preserve GRANT/REVOKE/pg_group in pg_dump
* Transaction log
* -Preserve GRANT/REVOKE/pg_group in pg_dump
* Transaction log, so re-do log can be on a separate disk
* Allow transaction commits with rollback with no-fsync performance
* More access control over who can create tables and access the database
* Add full ANSI SQL capabilities (Stefan)
* add subselects, possibility using temporary SQL functions
* Add full ANSI SQL capabilities
* -add subselects(Vadim)
* Implement HAVING clause
* Implement EXISTS qualifier
* report "Not implemented" if valid syntax is supplied
* -Implement EXISTS qualifier
* -report "Not implemented" if valid syntax is supplied
* add OUTER joins, left and right (Thomas)
* make VIEWs updateable where possible
* add UNIONS, INTERSECTS, SUBTRACTS
* add temporary tables
* -add UNIONS(Bruce)
* add INTERSECTS, SUBTRACTS
* add temporary tables(Bruce)
* add sql3 recursive unions
* add the concept of dataspaces
* allow conversion type casts on SELECT target fields
* add DECIMAL, NUMERIC, DOUBLE PRECISION, BIT, BIT VARYING
* NCHAR (as distinguished from ordinary varchar),
* NCHAR (as distinguished from ordinary varchar),
* Allow compression of large fields or a compressed field type
* Fix the rules system(Jan?,Soo-Ho)
* robust
@ -92,9 +101,9 @@ ENHANCEMENTS
* Full set of text operations and functions
* word searches, concat,max() on text, char
* Large objects
* overwriting blocks has problems
* there are other problems, too.
* Fix large object mapping scheme
* -overwriting blocks has problems(Peter)
* -there are other problems, too.(Peter)
* Fix large object mapping scheme, own reltype
* not to stuff everything as files in a single directory
* Better interface for adding to pg_group
* Make MONEY/DECIMAL have a defined precision
@ -102,194 +111,253 @@ ENHANCEMENTS
* Threaded version of the server or libpq
* Allow libpq to cancel query requests
* Add REGEX internationalization
* Add other language types for built-in functions
* expand to allow tcl, perl, java,
* -Add other language types for built-in functions
* expand to allow tcl, perl, java
* generalize the function manager switch to pass
* function sources to interpreter engines.
* remove time-travel feature(Vadim)
* reduce system column overhead(Vadmin)
* remove pg_time table(Vadim)
* -remove time-travel feature(Vadim)
* -reduce system column overhead(Vadmin)
* -remove pg_time table(Vadim)
* allow row re-use without vacuum, maybe?(Vadim)
* can't vacuum large objects
* can't reduce index file size with vacuum
* Remove restriction that ORDER BY field must be in SELECT list(?)
* Allow queries about owner of tables, like:
* SELECT u.usesysid FROM postgres.pg_user u;
* Remove restriction that ORDER BY field must be in SELECT list
* Add word index for text fields, maybe with trigrams, i.e.:
* ' (cat | dog) & ! fox ' meaning text has cat or dog, but not fox
* Allow readline-type or editor command editing of multi-line SQL commands
* Populate backend status area and write program to dump status data
* Add ALTER TABLE DROP COLUMN feature
* Remove stale files upon startup(Vivek)
* Add command to show privileges
* Allow INSERT INTO ... SELECT to convert column types
* Add syslog functionality
* Add syslog functionality(Marc)
* Add STDDEV/VARIANCE() function for standard deviation computation/variance
* Add table/column/function discription table indexed by oid
* add pg_type attribute to identify types that need length (bpchar, varchar)
* -Add table/column/function discription table indexed by oid
* -add pg_type attribute to identify types that need length (bpchar, varchar)
* add UNIQUE capability to non-btree indexes
* make large objects have their own reltype
* make number of backends a config parameter, storage/sinvaladt.h:MaxBackendId
* certain indexes will not shrink, i.e. oid indexes with many inserts
* make NULL's come out at the beginning or end depending on the ORDER BY direction
* change the library/backend interface to use network byte order
* allow unix domain sockets for local connections for performance and security
* Add PAGER for psql's \dt and \d tablename
* Make timezone set-able by client applications(Thomas)
* -allow unix domain sockets for local connections for performance and security
* -Add PAGER for psql's \dt, \d, \z tablename
* -Make timezone set-able by client applications(Thomas)
* Restore unused oid's on backend exit if no one else has gotten oids
* remove non-standard types from the system, and make them loadable
* -make reads queue behind a write waiting for a lock(Bruce)
* -add LOCK statement(Bruce)
* -add report of offending line when COPY command fails
* have UPDATE/DELETE clean out indexes
* -allow varchar() to only store used bytes, not maximum
* allow WHERE restriction on ctid
* allow pg_descriptions when creating types, tables, columns, and functions
* Fix compile and security of Kerberos/GSSAPI code
* Allow psql to print nulls as distinct from ""(?)
* Allow variable casts with BETWEEN 'today'::asbtime AND 'today'::abstime
* Allow VIEW permissions to be set separately from the underlying tables
* Allow text, char(), and varchar() overhead to be only 2 bytes, not 4 bytes
PERFORMANCE
-----------
* Use indexes in ORDER BY
* Allow LIKE/wildcard matches to use indexes if the wildcard character is not first
* Use indexes in ORDER BY, min(), max()
* -Allow LIKE/wildcard matches to use indexes if the wildcard character is not first
* Optimizing disjunctive queries
* Fix bushy-plans (Martin)
* Other optimizer bugs
* Is fsync use optimized?
* Prevent fsync in SELECT-only queries
* Cache most recent query plan(s?)
* Shared catalog cache, reduce lseek()'s by caching table size in shared area
* Allow compression of log and meta data
* Add FILLFACTOR to index creation
* Allow indexes to be used with OR clauses(Vadim)
* update pg_statistic table to remove operator column
* make index creation use psort code, because it is now faster(Vadim)
* remove fork()/exec() of backend and make it just fork()
DOCUMENTATION
-------------
* Update usermanual source(many)
* remove time-travel in documentation(Bruce)
* added features used in grammer but not in docs, like :: and CAST
* update libpq++ manual page
PORTABILITY
-----------
---------------------------------------------------------------------------
CHANGES IN THE 6.2.1 RELEASE
Changes in this release
-----------------------
Allow TIME and TYPE column names(Thomas)
Allow larger range of true/false as boolean values(Thomas)
Support output of "now" and "current"(Thomas)
Handle DEFAULT with INSERT of NULL properly(Vadim)
Fix for relation reference counts problem in buffer manager(Vadim)
Allow strings to span lines, like ANSI(Thomas)
Fix for backward cursor with ORDER BY(Vadim)
Fix avg(cash) computation(Thomas)
Fix for specifying a column twice in ORDER/GROUP BY(Vadim)
Documented new libpq function to return affected rows, PQcmdTuples(Bruce)
Trigger function for inserting user names for INSERT/UPDATE(Brook Milligan)
* update libpq++ and pginterface manual page
* Add keyword list to documentation, already in /tools
CHANGES IN THE 6.2 RELEASE
=============================================================================
CHANGES IN THE 6.3 RELEASE
--------------------------
Developers who have claimed items are:
-------------------------------------
* Billy is Billy G. Allie <Bill.Allie@mug.org>
* Brook is Brook Milligan
* Bruce is Bruce Momjian <maillist@candle.pha.pa.us>
* D'Arcy is D'Arcy J.M. Cain <darcy@druid.net>
* Dan is Dan McGuirk <mcguirk@indirect.com>
* Darren is Darren King <darrenk@insightdist.com>
* Goran is Goran Thyni <goran@bildbasen.se>
* Henry is Henry B. Hotz <hotz@jpl.nasa.gov>
* James is James Hughes <jamesh@interpath.com>
* Jan is Jan Wieck <wieck@sapserv.debis.de>
* Jeroen is Jeroen van Vianen <jeroenv@design.nl>
* Marc is Marc Fournier <scrappy@hub.org>
* Martin is Martin S. Utesch <utesch@aut.tu-freiberg.de>
* Matt is Matt Maycock <maycock@intelliquest.com>
* Peter is Peter T Mount <psqlhack@maidast.demon.co.uk>
* Phil is Phil Thompson <phil@river-bank.demon.co.uk>
* Ryan is Ryan Kirkpatrick <rkirkpat@nag.cs.colorado.edu>
* Tatsuo is Tatsuo Ishii <t-ishii@sra.co.jp>
* Thomas is Thomas Lockhart <lockhart@alumni.caltech.edu>
* TomH is Tom I Helbekkmo <tih@Hamartun.Priv.NO>
* TomS is Tom Szybist
* Todd is Todd Brandys is <brandys@eng3.hep.uiuc.edu>
* Travis is Travis Melhiser <melhiser@viper.co.union.nc.us>
* Vadim is "Vadim B. Mikheev" <vadim@sable.krasnoyarsk.su>
Bug Fixes
---------
Fix problems with pg_dump for inheritance, sequences, archive tables(Bruce)
Fix compile errors on overflow due to shifts, unsigned, and bad prototypes
from Solaris(Diab Jerius)
Fix bugs in geometric line arithmetic (bad intersection calculations)(Thomas)
Check for geometric intersections at endpoints to avoid rounding ugliness(Thomas)
Catch non-functional delete attempts(Vadim)
Change time function names to be more consistent(Michael Reifenberg)
Check for zero divides(Michael Reifenberg)
Fix very old bug which made tuples changed/inserted by a commnd
visible to the command itself (so we had multiple update of
updated tuples, etc)(Vadim)
Fix for SELECT null, 'fail' FROM pg_am (Patrick)
SELECT NULL as EMPTY_FIELD now allowed(Patrick)
Remove un-needed signal stuff from contrib/pginterface
Fix OR (where x <> 1 or x isnull didn't return tuples with x NULL) (Vadim)
Fix time_cmp function (Vadim)
Fix handling of functions with non-attribute first argument in
WHERE clauses (Vadim)
Fix GROUP BY when order of entries is different from order
in target list (Vadim)
Fix pg_dump for aggregates without sfunc1 (Vadim)
Fix binary cursors broken by MOVE implementation(Vadim)
Fix for tcl library crash(Jan)
Fix for array handling, from Gerhard Hintermayer
Fix acl error, and remove duplicate pqtrace(Bruce)
Fix psql \e for empty file(Bruce)
Fix for textcat on varchar() fields(Bruce)
Fix for DBT Sendproc (Zeugswetter Andres)
Fix vacuum analyze syntax problem(Bruce)
Fix for international identifiers(Tatsuo)
Fix aggregates on inherited tables(Bruce)
Fix substr() for out-of-bounds data
Fix for select 1=1 or 2=2, select 1=1 and 2=2, and select sum(2+2)(Bruce)
Fix notty output to show status result. -q option still turns it off(Bruce)
Fix for count(*), aggs with views and multiple tables and sum(3)(Bruce)
Fix cluster(Bruce)
Fix for PQtrace start/stop several times(Bruce)
Fix a variety of locking problems like newer lock waiters getting
lock before older waiters, and having readlock people not share
locks if a writer is waiting for a lock, and waiting writers not
getting priority over waiting readers(Bruce)
Fix crashes in psql when executing queries from external files(James)
Fix problem with multiple order by columns, with the first one having
NULL values(Jeroen)
Use correct hash table support functions for float8 and int4(Thomas)
Re-enable JOIN= option in CREATE OPERATOR statement (Thomas)
Change precedence for boolean operators to match expected behavior(Thomas)
Generate elog(ERROR) on over-large integer(Bruce)
Allow multiple-argument functions in constraint clauses(Thomas)
Check boolean input literals for 'true','false','yes','no','1','0'
and throw elog(ERROR) if unrecognized(Thomas)
Enhancements
------------
Default genetic optimizer GEQO parameter is now 8(Bruce)
Allow use parameters in target list having aggregates in functions(Vadim)
Added JDBC driver as an interface(Adrian & Peter)
pg_password utility
Return number of tuples inserted/affected by INSERT/UPDATE/DELETE etc.(Vadim)
Triggers implemented with CREATE TRIGGER (SQL3)(Vadim)
SPI (Server Programming Interface) allows execution of queries inside
C-functions (Vadim)
NOT NULL implemented (SQL92)(Robson Paniago de Miranda)
Include reserved words for string handling, outer joins, and unions(Thomas)
Implement extended comments ("/* ... */") using exclusive states(Thomas)
Add "//" single-line comments(Bruce)
Remove some restrictions on characters in operator names(Thomas)
DEFAULT and CONSTRAINT for tables implemented (SQL92)(Vadim & Thomas)
Add text concatenation operator and function (SQL92)(Thomas)
Support WITH TIME ZONE syntax (SQL92)(Thomas)
Support INTERVAL <unit> TO <unit> syntax (SQL92)(Thomas)
Define types DOUBLE PRECISION, INTERVAL, CHARACTER,
and CHARACTER VARYING (SQL92)(Thomas)
Define type FLOAT(p) and rudimentary DECIMAL(p,s), NUMERIC(p,s) (SQL92)(Thomas)
Define EXTRACT(), POSITION(), SUBSTRING(), and TRIM() (SQL92)(Thomas)
Define CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP (SQL92)(Thomas)
Add syntax and warnings for UNION, HAVING, INNER and OUTER JOIN (SQL92)(Thomas)
Add more reserved words, mostly for SQL92 compliance(Thomas)
Allow hh:mm:ss time entry for timespan/reltime types(Thomas)
Add center() routines for lseg, path, polygon(Thomas)
Add distance() routines for circle-polygon, polygon-polygon(Thomas)
Check explicitly for points and polygons contained within polygons
using an axis-crossing algorithm(Thomas)
Add routine to convert circle-box(Thomas)
Merge conflicting operators for different geometric data types(Thomas)
Replace distance operator "<===>" with "<->"(Thomas)
Replace "above" operator "!^" with ">^" and "below" operator "!|" with "<^"(Thomas)
Add routines for text trimming on both ends, substring, and string position(Thomas)
Added conversion routines circle(box) and poly(circle)(Thomas)
Allow internal sorts to be stored in memory rather than in files(Bruce & Vadim)
Allow functions and operators on internally-identical types to succeed(Bruce)
Speed up backend startup after profiling analysis(Bruce)
Inline frequently called functions for performance(Bruce)
Reduce open() calls(Bruce)
psql: Add PAGER for \h and \?,\C fix
Fix for psql pager when no tty(Bruce)
New entab utility(Bruce)
General trigger functions for referential integrity (Vadim)
General trigger functions for time travel (Vadim)
General trigger functions for AUTOINCREMENT/IDENTITY feature (Vadim)
MOVE implementation (Vadim)
Real deadlock detection, no more timeouts(Bruce)
<NOT DONE YET> Subselects with EXISTS, IN, ALL, ANY keywords (Vadim, Bruce, Thomas)
Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP,
CURRENT_USER(Thomas)
Speedup by inlining some frequently-called functions
Modify constraint syntax to be SQL92-compliant(Thomas)
Implement SQL92 PRIMARY KEY and UNIQUE clauses using indices(Thomas)
Recognize SQL92 syntax for FOREIGN KEY. Throw elog notice(Thomas)
Allow NOT NULL UNIQUE constraint clause (each allowed separately before)(Thomas)
Allow Postgres-style casting ("::") of non-constants(Thomas)
Add support for SQL3 TRUE and FALSE boolean constants(Thomas)
Support SQL92 syntax for IS TRUE/IS FALSE/IS NOT TRUE/IS NOT FALSE(Thomas)
Allow shorter strings for boolean literals (e.g. "t", "tr", "tru")(Thomas)
Allow SQL92 delimited identifiers(Thomas)
Implement SQL92 binary and hexadecimal string decoding (b'10' and x'1F')(Thomas)
Support SQL92 syntax for type coercion of literal strings
(e.g. "DATETIME 'now'")(Thomas)
Add conversions for int2, int4, and OID types to and from text(Thomas)
Use shared lock when building indices(Vadim)
Free memory allocated for an user query inside transaction block after
this query is done, was turned off in <= 6.2.1(Vadim)
New SQL statement CREATE PROCEDURAL LANGUAGE(Jan)
New PostgreSQL Procedural Language (PL) backend interface(Jan)
Rename pg_dump -H option to -h(Bruce)
Add Java support for passwords, European dates(Peter)
Use indices for LIKE and ~, !~ operations(Bruce)
Add hash functions for datetime and timespan(Thomas)
Time Travel removed(Vadim, Bruce)
Add paging for \d and \z, and fix \i(Bruce)
Add Unix domain socket support to backend and to frontend library(Goran)
Implement CREATE DATABASE/WITH LOCATION and initlocation utility(Thomas)
Allow more SQL92 and/or Postgres reserved words as column identifiers(Thomas)
Augment support for SQL92 SET TIME ZONE...(Thomas)
SET/SHOW/RESET TIME ZONE uses TZ backend environment variable(Thomas)
Implement SET keyword = DEFAULT and SET TIME ZONE DEFAULT(Thomas)
Enable SET TIME ZONE using TZ environment variable(Thomas)
Add PGDATESTYLE environment variable to frontend and backend initialization(Thomas)
Add PGTZ, PGCOSTHEAP, PGCOSTINDEX, PGRPLANS, PGGEQO
frontend library initialization environment variables(Thomas)
Regression tests time zone automatically set with "setenv PGTZ PST8PDT"(Thomas)
Add pg_description table for info on tables, columns, operators, types, and
aggregates(Bruce)
Increase 16 char limit on system table/index names to 32 characters(Bruce)
Rename system indices(Bruce)
Add 'GERMAN' option to SET DATESTYLE(Thomas)
Define an "ISO-style" timespan output format with "hh:mm:ss" fields(Thomas)
Allow fractional values for delta times (e.g. '2.5 days')(Thomas)
Validate numeric input more carefully for delta times(Thomas)
Implement day of year as possible input to date_part()(Thomas)
Define timespan_finite() and text_timespan() functions(Thomas)
Remove archive stuff(Bruce)
Allow for a pg_password authentication database that is separate from
the system password file(Todd)
Dump ACLs, GRANT, REVOKE permissions(Matt)
Define text, varchar, and bpchar string length functions(Thomas)
Fix Query handling for inheritance, and cost computations(Bruce)
Implement CREATE TABLE/AS SELECT (alternative to SELECT/INTO)(Thomas)
Allow NOT, IS NULL, IS NOT NULL in constraints(Thomas)
Implement UNIONs for SELECT(Bruce)
Add UNION, GROUP, DISTINCT to INSERT(Bruce)
varchar() stores only necessary bytes on disk(Bruce)
Fix for BLOBs(Peter)
Mega-Patch for JDBC...see README_6.3 for list of changes(Peter)
Allow installation data block size and max tuple size configuration(Darren)
Remove unused "option" from PQconnectdb()
New LOCK command and lock manual page describing deadlocks(Bruce)
Add new psql \da, \dd, \df, \do, \dS, and \dT commands(Bruce)
Enhance psql \z to show sequences(Bruce)
Show NOT NULL and DEFAULT in psql \d table(Bruce)
New psql .psqlrc file startup(Andrew)
Modify sample startup script in contrib/linux to show syslog(Thomas)
New types for IP and MAC addresses in contrib/ip_and_mac(TomH)
Unix system time conversions with date/time types in contrib/unixdate(Thomas)
Update of contrib stuff(Massimo)
Add Unix socket support to DBD::Pg(Goran)
New python interface (PyGreSQL 2.0)(D'Arcy)
New frontend/backend protocol has a version number, network byte order(Phil)
Security features in pg_hba.conf enhanced and documented, many cleanups(Phil)
New HTML and Postscript documentation(Thomas)
Source Tree Changes
-------------------
HPUX 10 patches (Vladimir Turin)
Added SCO support, (Daniel Harris)
mkLinux patches (Tatsuo Ishii)
Change geometric box terminology from "length" to "width"(Thomas)
Deprecate temporary unstored slope fields in geometric code(Thomas)
Remove restart instructions from INSTALL(Bruce)
Look in /usr/ucb first for install(Bruce)
Fix c++ copy example code(Thomas)
Add -o to psql manual page(Bruce)
Prevent relname unallocated string length from being copied into database(Bruce)
Cleanup for NAMEDATALEN use(Bruce)
Fix pg_proc names over 15 chars in output(Bruce)
Add strNcpy() function(Bruce)
remove some (void) casts that are unnecessary(Bruce)
new interfaces directory(Marc)
Replace fopen() calls with calls to fd.c functions(Bruce)
Make functions static where possible(Bruce)
enclose unused functions in #ifdef NOT_USED(Bruce)
Remove call to difftime() in timestamp support to fix SunOS(Bruce & Thomas)
Changes for Digital Unix
Portability fix for pg_dumpall(Bruce)
Rename pg_attribute.attnvals to attdisbursion(Bruce)
"intro/unix" manual page now "pgintro"(Bruce)
"built-in" manual page now "pgbuiltin"(Bruce)
"drop" manual page now "drop_table"(Bruce)
Add "create_trigger", "drop_trigger" manual pages(Thomas)
Add constraints regression test(Vadim & Thomas)
Add comments syntax regression test(Thomas)
Add PGINDENT and support program(Bruce)
Massive commit to run PGINDENT on all *.c and *.h files(Bruce)
Files moved to /src/tools directory(Bruce)
SPI and Trigger programming guides (Vadim & D'Arcy)
Add new html development tools, and flow chart in /tools/backend
Fix for SCO compiles
Stratus computer port "Gillies, Robert" <GilliesR@Nichols.com>
Added support for shlib for BSD44_derived & i386_solaris
Make configure more automated(Brook)
Add script to check regression test results
Break parser functions into smaller files, group together(Bruce)
Rename heap_create to heap_create_and_catalog, rename heap_creatr
to heap_create()(Bruce)
Sparc/Linux patch for locking(TomS)
Remove PORTNAME and reorganize port-specific stuff(Marc)
Add optimizer README file(Bruce)
Remove some recursion in optimizer and clean up some code there(Bruce)
Fix for NetBSD locking(Henry)
Fix for libptcl make(Tatsuo)
AIX patch(Darren)
Change IS TRUE, IS FALSE, ... to expressions using "=" rather than
function calls to istrue() or isfalse() to allow optimization(Thomas)
Various fixes NetBSD/Sparc related(TomH)
Alpha linux locking(Travis,Ryan)
Change elog(WARN) to elog(ERROR)(Bruce)
FAQ for FreeBSD(Marc)
Bring in the PostODBC source tree as part of our standard distribution(Marc)
A minor patch for HP/UX 10 vs 9(Stan)
New pg_attribute.atttypmod for type-specific info like varchar length(Bruce)
Unixware patches(Billy)
New i386 'lock' for spin lock asm(Billy)
Support for multiplexed backends is removed
Start an OpenBSD port
Start an AUX port
Start a Cygnus port
Add string functions to regression suite(Thomas)
Expand a few function names formerly truncated to 16 characters(Thomas)

View File

@ -27,7 +27,7 @@ System Configuration
Operating System (example: Linux 2.0.26 ELF) :
PostgreSQL version (example: PostgreSQL-6.2.1): PostgreSQL-6.2.1
PostgreSQL version (example: PostgreSQL-6.3) : PostgreSQL-6.3
Compiler used (example: gcc 2.7.2) :

View File

@ -1,6 +1,6 @@
(1997-10-01)
(1998-02-01)
PostgreSQL has a Web site at http://www.postgresql.org/ which carries details
on the latest release, upcoming features, and other information to make your
work or play with PostgreSQL more productive.