mirror of
https://github.com/postgres/postgres.git
synced 2025-07-27 12:41:57 +03:00
Update README, HISTORY, etc for beta release.
This commit is contained in:
60
doc/FAQ
60
doc/FAQ
@ -1,8 +1,8 @@
|
||||
|
||||
Frequently Asked Questions (FAQ) for PostgreSQL
|
||||
|
||||
Last updated: Thu Sep 4 01:32:22 EDT 1997
|
||||
Version: 6.1.1
|
||||
Last updated: Sat Sep 13 22:00:02 EDT 1997
|
||||
Version: 6.2beta
|
||||
|
||||
Current maintainer: Bruce Momjian (maillist@candle.pha.pa.us)
|
||||
|
||||
@ -90,6 +90,7 @@ Questions answered:
|
||||
3.21) What is the meaning of some of the terms used in Postgres?
|
||||
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?
|
||||
|
||||
4) Questions about extending PostgreSQL
|
||||
|
||||
@ -514,24 +515,7 @@ Section 3: PostgreSQL Features
|
||||
|
||||
3.6) What is the exact difference between binary cursors and normal cursors?
|
||||
|
||||
Normal cursors return data back in ASCII format. Since data is stored
|
||||
natively in binary format, the system must do a conversion to produce
|
||||
the ASCII format. In addition, ASCII formats are often large in size
|
||||
than binary format. Once the attributes come back in ASCII, often the
|
||||
client application then has to convert it to a binary format to
|
||||
manipulate it anyway.
|
||||
|
||||
Binary cursors give you back the data in the native binary
|
||||
representation. Thus, binary cursors will tend to be a little faster
|
||||
since there's less overhead of conversion.
|
||||
|
||||
However, ASCII is architectural neutral whereas binary representation
|
||||
can differ between different machine architecture. Thus, if your
|
||||
client machine uses a different representation than you server
|
||||
machine, getting back attributes in binary format is probably not what
|
||||
you want. Also, if your main purpose is displaying the data in ASCII,
|
||||
then getting it back in ASCII will save you some effort on the client
|
||||
side.
|
||||
See the declare manual page for a description.
|
||||
|
||||
3.7) What is a R-tree index and what is it used for?
|
||||
|
||||
@ -590,24 +574,12 @@ Section 3: PostgreSQL Features
|
||||
3.10) How do I do regular expression searches? case-insensitive regexp
|
||||
searching?
|
||||
|
||||
PostgreSQL supports the SQL LIKE syntax as well as more general
|
||||
regular expression searching with the ~ operator. The !~ is the
|
||||
negated regexp operator. ~* and !~* are the case-insensitive regular
|
||||
expression operators.
|
||||
See the pgbuiltin manual page. Search for regular expression.
|
||||
|
||||
3.11) I experienced a server crash during a vacuum. How do I remove the lock
|
||||
file?
|
||||
|
||||
If the server crashes during a vacuum command, chances are it will
|
||||
leave a lock file hanging around. Attempts to re-run the vacuum
|
||||
command result in
|
||||
|
||||
|
||||
WARN:can't create lock file -- another vacuum cleaner running?
|
||||
|
||||
If you are sure that no vacuum is actually running, you can remove the
|
||||
file called "pg_vlock" in your database directory (which is
|
||||
$PGDATA/base/<dbName>)
|
||||
See the vacuum manual page.
|
||||
|
||||
3.12) What is the difference between the various character types?
|
||||
|
||||
@ -638,10 +610,8 @@ BYTEA bytea variable-length array of bytes
|
||||
|
||||
3.14) How do I see how the query optimizer is evaluating my query?
|
||||
|
||||
Place the word 'EXPLAIN' at the beginning of the query, for example:
|
||||
|
||||
EXPLAIN SELECT * FROM table1 WHERE age = 23;
|
||||
|
||||
See the explain manual page.
|
||||
|
||||
3.15) How do I create a serial field?
|
||||
|
||||
Postgres does not allow the user to specifiy a user column as type
|
||||
@ -683,6 +653,7 @@ BYTEA bytea variable-length array of bytes
|
||||
|
||||
The default configuration allows only connections from tcp/ip host
|
||||
localhost. You need to add a host entry to the file pgsql/data/pg_hba.
|
||||
See the hba_conf manual page.
|
||||
|
||||
3.18) How do I find out what indexes or operations are defined in the
|
||||
database?
|
||||
@ -769,11 +740,20 @@ BYTEA bytea variable-length array of bytes
|
||||
|
||||
We do not support ALTER TABLE DROP COLUMN, but do this:
|
||||
|
||||
SELECT ... # select all columns but the one you want to remove
|
||||
SELECT ... -- select all columns but the one you want to remove
|
||||
INTO TABLE new_table
|
||||
FROM old_table;
|
||||
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?
|
||||
|
||||
See the fetch manual page.
|
||||
|
||||
This only prevents all row results from being transfered to the
|
||||
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.
|
||||
_________________________________________________________________
|
||||
|
||||
Section 4: Extending PostgreSQL
|
||||
@ -819,4 +799,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.
|
||||
|
33
doc/TODO
33
doc/TODO
@ -1,7 +1,7 @@
|
||||
====================================================
|
||||
TODO list (FAQ) for PostgreSQL
|
||||
====================================================
|
||||
last updated: Mon Jul 21 18:01:37 EDT 1997
|
||||
last updated: Sat Sep 13 22:00:05 EDT 1997
|
||||
|
||||
current maintainer: Bruce Momjian (maillist@candle.pha.pa.us)
|
||||
|
||||
@ -25,6 +25,7 @@ Developers who have claimed items are:
|
||||
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>
|
||||
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>
|
||||
@ -38,17 +39,15 @@ RELIABILITY
|
||||
-----------
|
||||
-Overhaul mdmgr/smgr to fix double unlinking and double opens, cleanup(Erich)
|
||||
-Overhaul bufmgr/lockmgr/transaction manager(Vadim)
|
||||
remove -S (stable memory) option or fix memory 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?)
|
||||
Dropping a table twice causes corruption, drop/create not rollback-able
|
||||
COUNT on VIEW always returns zero (maybe because there is no oid for views?)
|
||||
CREATE VIEW requires super-user priviledge
|
||||
SELECT a[1] FROM test fails, it needs test.a[1]
|
||||
INSERT INTO ... SELECT DISTINCT ... generates error on DISTINCT
|
||||
pg_database.datdba is oid, should be int4
|
||||
can lo_export()/lo_import() read/write anywhere, causing a security problem?
|
||||
Fix UPDATE key_table SET keyval=max(reftab.NUM)+1 WHERE tblname='reftab'
|
||||
SELECT COUNT(*) FROM TAB1, TAB2 fails
|
||||
@ -56,6 +55,14 @@ 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
|
||||
Make timestamp type recognize DateStyle(Tom)
|
||||
SELECT SUM(2+2) FROM table dumps core
|
||||
lo_unlink() crashes server
|
||||
UPDATE table SET table.value = 3 fails
|
||||
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().
|
||||
SELECT * FROM table WHERE int4_column = '1' fails
|
||||
Allow INSERT INTO table SELECT id, count(*) FROM table2 GROUP BY id
|
||||
|
||||
ENHANCEMENTS
|
||||
------------
|
||||
@ -66,16 +73,15 @@ Add full ANSI SQL capabilities (Stefan)
|
||||
column constraints (using rules), PRIMARY KEY during table creation
|
||||
add DEFAULT, RESTRAINT, and CHECK capabilities
|
||||
report "Not implemented" if valid syntax is supplied
|
||||
add NOT NULL to CREATE statement
|
||||
add OUTER joins, left and right
|
||||
add OUTER joins, left and right (Thomas)
|
||||
make VIEWs updateable where possible
|
||||
add UNIONS, INTERSECTS, SUBTRACTS
|
||||
add temporary tables
|
||||
add assertions
|
||||
add domains
|
||||
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),
|
||||
Allow compression of large fields or a compressed field type
|
||||
Fix the rules system(Jan?,Soo-Ho)
|
||||
robust
|
||||
@ -92,7 +98,6 @@ Large objects
|
||||
Better interface for adding to pg_group
|
||||
Make MONEY/DECIMAL have a defined precision
|
||||
Add support for tables >2G, or test current version
|
||||
Incorporate the PERL PG95 interface library into source tree(Edmund)
|
||||
Threaded version of the server or libpq
|
||||
Allow libpq to cancel query requests
|
||||
Add REGEX internationalization
|
||||
@ -122,13 +127,13 @@ 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 UNIQUE capability to non-btree indexes
|
||||
make pg_dumpall preserve table ownership, not just database ownership
|
||||
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
|
||||
Make operators for float8/int4 arithmetic
|
||||
|
||||
PERFORMANCE
|
||||
-----------
|
||||
@ -136,9 +141,6 @@ Optimizing disjunctive queries
|
||||
Fix bushy-plans (Martin)
|
||||
Other optimizer bugs
|
||||
Is fsync use optimized?
|
||||
Multi-representational types, a la Illustra. For example, have a
|
||||
text type that is stored in-tuple when less than 8K and in large
|
||||
objects, when greater than 8K.
|
||||
Use indexes in ORDER BY
|
||||
Profile engine in INSERT's and other operations
|
||||
Cache most recent query plan(s?)
|
||||
@ -146,16 +148,15 @@ Allow compression of log and meta data
|
||||
Allow LIKE/wildcard matches to use indexes if the wildcard character is not first
|
||||
Add FILLFACTOR to index creation
|
||||
Allow indexes to be used with OR clauses(Vadim)
|
||||
Change pg_attribute.attnvals name to attdispursion and change type float4
|
||||
update pg_statistic table to remove operator column
|
||||
update pg_statistic table to remove operator column
|
||||
|
||||
DOCUMENTATION
|
||||
-------------
|
||||
Update usermanual source(many)
|
||||
remove time-travel in documentation(Bruce)
|
||||
added features used in grammer but not in docs, like :: and CAST
|
||||
add DECLARE manual page
|
||||
update libpq++ manual page
|
||||
Add pg_password manual page
|
||||
|
||||
PORTABILITY
|
||||
-----------
|
||||
|
@ -27,7 +27,7 @@ System Configuration
|
||||
|
||||
Operating System (example: Linux 2.0.26 ELF) :
|
||||
|
||||
PostgreSQL version (example: PostgreSQL-6.1) : PostgreSQL-6.1
|
||||
PostgreSQL version (example: PostgreSQL-6.2) : PostgreSQL-6.2
|
||||
|
||||
Compiler used (example: gcc 2.7.2) :
|
||||
|
||||
|
Reference in New Issue
Block a user