Change Postgres95 to PostgreSQL. Update CLUSTER manual page.

This commit is contained in:
Bruce Momjian 1998-03-14 21:58:09 +00:00
parent 12429af027
commit 3674ccdf95
10 changed files with 51 additions and 25 deletions

View File

@ -4,8 +4,8 @@
#
PGINTERFACE = pginterface.o halt.o
TARGET = pginsert pgwordcount pgnulltest
CFLAGS = -g -Wall -I/u/postgres95/include
LDFLAGS = -L/u/postgres95/lib -lpq
CFLAGS = -g -Wall -I/usr/local/pgsql/include
LDFLAGS = -L/usr/local/pgsql/lib -lpq
all : $(TARGET)

View File

@ -1,5 +1,5 @@
pgtcl is a tcl package for front-end programs to interface with Postgres95
pgtcl is a tcl package for front-end programs to interface with PostgreSQL
backends. PgTcl does not use the libpq library but communicates to
the backend directly via the frontend-backend protocol. Thus, it is
more efficient than previous postgres->tcl bindings which are layered

View File

@ -11,9 +11,9 @@ To build:
% gmake clean install
This version of the program will read in your postgres95 database and
This version of the program will read in your postgreSQL database and
output the schema and the data tuples in SQL. The dumps are useful
for moving from one postgres95 installation to another.
for moving from one postgreSQL installation to another.
How to use pg_dump:

View File

@ -21,7 +21,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.64 1998/02/26 04:38:54 momjian Exp $
* $Header: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v 1.65 1998/03/14 21:57:22 momjian Exp $
*
* Modifications - 6/10/96 - dave@bensoft.com - version 1.13.dhb
*
@ -2681,7 +2681,7 @@ dumpIndices(FILE *fout, IndInfo *indinfo, int numIndices,
*
* We only need to do this for POSTGRES 4.2 databases since the
* COPY TO statment doesn't escape newlines properly. It's been fixed
* in Postgres95.
* in PostgreSQL.
*
* the attrmap passed in tells how to map the attributes copied in to the
* attributes copied out

View File

@ -5,7 +5,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: pg_dump.h,v 1.30 1998/02/26 04:39:01 momjian Exp $
* $Id: pg_dump.h,v 1.31 1998/03/14 21:57:26 momjian Exp $
*
* Modifications - 6/12/96 - dave@bensoft.com - version 1.13.dhb.2
*
@ -176,7 +176,7 @@ extern char g_opaque_type[10]; /* name for the opaque type */
/* pg_dump is really two programs in one
one version works with postgres v4r2
and the other works with postgres95
and the other works with postgreSQL
the common routines are declared here
*/
/*

View File

@ -1,6 +1,5 @@
libpgtcl is a library that implements Tcl commands for front-end
clients to interact with the Postgres95 backend. See libpgtcl.doc for
details.
libpgtcl is a library that implements Tcl commands for front-end clients
to interact with the PostgreSQL backend. See libpgtcl.doc for details.
For an example of how to build a new tclsh to use libpgtcl, see the
directory ../bin/pgtclsh

View File

@ -1,6 +1,6 @@
This directory contains libpq++, the C++ language interface to POSTGRES95.
This directory contains libpq++, the C++ language interface to POSTGRESQL.
libpq++ is implemented on of the libpq library. Users would benefit
from reading the chapter on libpq in the postgres95 users manual
from reading the chapter on libpq in the PostgreSQL users manual
before using libpq++.
The initial version of this implementation was done by William Wanders
@ -8,8 +8,8 @@ The initial version of this implementation was done by William Wanders
This is only a preliminary attempt at providing something useful for
people who would like to use C++ to build frontend applications to
postgres95. The API provided herein is subject to change in later
versions of postgres95.
PostgreSQL. The API provided herein is subject to change in later
versions of PostgreSQL.
For details on how to to use libpq++, see the man page in the man/
subdirectory and the test programs in the examples/ subdirectory.

View File

@ -1,6 +1,6 @@
#! /usr/local/bin/python
# basics.py - basic SQL commands tutorial
# inspired from the Postgres95 tutorial
# inspired from the PostgreSQL tutorial
# adapted to Python 1995 by Pascal ANDRE
print "__________________________________________________________________"

View File

@ -1,6 +1,6 @@
.\" This is -*-nroff-*-
.\" XXX standard disclaimer belongs here....
.\" $Header: /cvsroot/pgsql/src/man/Attic/cluster.l,v 1.4 1998/01/11 22:17:10 momjian Exp $
.\" $Header: /cvsroot/pgsql/src/man/Attic/cluster.l,v 1.5 1998/03/14 21:57:56 momjian Exp $
.TH CLUSTER SQL 01/23/93 PostgreSQL PostgreSQL
.SH NAME
cluster - give storage clustering advice to Postgres
@ -17,14 +17,42 @@ The index must already have been defined on
.IR classname.
.PP
When a class is clustered, it is physically reordered based on the index
information. The clustering is static. In other words, if the class is
updated, it may become unclustered. No attempt is made to keep new
information. The clustering is static. In other words, as the class is
updated, the changes are not clusterd. No attempt is made to keep new
instances or updated tuples clustered. If desired, the user can
recluster manually by issuing the command again.
.PP
The table is actually copied to temporary table in index order,
then renamed back to the original name. For this reason, all
grant permissions and other indexes are lost when cluster is performed.
The table is actually copied to temporary table in index order, then
renamed back to the original name. For this reason, all grant
permissions and other indexes are lost when cluster is performed.
.PP
In cases where you are accessing single rows randomly within a table,
the actual order of the data in the heap table unimportant. However, if
you tend to access some data more than others, and there is an index
that groups them together, you will benefit from using the CLUSTER
command.
.PP
Another place CLUSTER is good is in cases where you use an index to pull
out several rows from a table. If you are requesting a range of indexed
values from a table, or a single indexed value that has multiple rows
that match, CLUSTER will help because once the index identifies the heap
page for the first row that matches, all other rows that match are
probably already on the same heap page, saving disk accesses and speeding up
the query.
.PP
There are two ways to cluster data. The first is with the CLUSTER
command, which reoreders the original table with the ordering of the
index you specify. This can be slow on large tables because the rows
are fetched from the heap in index order, and if the heap table is
unordered, the entries are on random pages, so there is one disk page
retrieved for every row moved. PostgreSQL has a cache, but the majority
of a big table will not fit in the cache.
.PP
Another way is to use SELECT ... INTO TABLE temp FROM ... This uses the
PostgreSQL sorting code, and is much faster for unordered data. You
then drop the old table, use ALTER TABLE RENAME to rename 'temp' to the
old name, and recreate the indexes. From then on, CLUSTER should be
fast because most of the heap data is ordered.
.SH EXAMPLE
.nf
/*
@ -34,4 +62,3 @@ create index emp_ind on emp using btree (salary int4_ops);
cluster emp_ind on emp
.fi

View File

@ -49,7 +49,7 @@ CREATE INDEX bt_f8_index ON bt_f8_heap USING btree (seqno float8_ops);
--
-- BTREE partial indices
-- partial indices are not supported in postgres95
-- partial indices are not supported in PostgreSQL
--
--CREATE INDEX onek2_u1_prtl ON onek2 USING btree(unique1 int4_ops)
-- where onek2.unique1 < 20 or onek2.unique1 > 980;