Commit Graph

4763 Commits

Author SHA1 Message Date
Bruce Momjian f739deb50f Add mention of rules/triggers:
> * Add MERGE command that does UPDATE, or on failure, INSERT (rules, triggers?)
2004-05-11 13:44:05 +00:00
Tom Lane 2f63232d30 Promote row expressions to full-fledged citizens of the expression syntax,
rather than allowing them only in a few special cases as before.  In
particular you can now pass a ROW() construct to a function that accepts
a rowtype parameter.  Internal generation of RowExprs fixes a number of
corner cases that used to not work very well, such as referencing the
whole-row result of a JOIN or subquery.  This represents a further step in
the work I started a month or so back to make rowtype values into
first-class citizens.
2004-05-10 22:44:49 +00:00
Neil Conway 9a939886ac Fix typo. 2004-05-10 21:08:28 +00:00
Bruce Momjian b071a40068 Add:
> * Add MERGE command that does UPDATE, or on failure, INSERT
2004-05-10 03:58:19 +00:00
Bruce Momjian 1fe11fad54 Fix typo. 2004-05-08 02:13:31 +00:00
Bruce Momjian 97c7cb0930 Uppercase keyword for ecpg. 2004-05-07 02:40:43 +00:00
Bruce Momjian 4d46274b33 Done:
> 	o -ALTER TABLE ADD COLUMN column SERIAL doesn't create sequence because
2004-05-06 19:32:09 +00:00
Bruce Momjian 22a2c4b576 Erase MD5 user passwords when a user is renamed because the username is
used as salt for the MD5 password.
2004-05-06 16:59:16 +00:00
Bruce Momjian d8f6973df3 Update todo/faq timestamps 2004-05-06 16:49:13 +00:00
Bruce Momjian a4ab5bae42 Done:
o -ALTER TABLE ADD COLUMN does not honor DEFAULT and non-CHECK CONSTRAINT
        o -ALTER TABLE ADD COLUMN column DEFAULT should fill existing
          rows with DEFAULT value
        o -Allow ALTER TABLE to modify column lengths and change to binary
          compatible types

Remove:

        o Allow columns to be reordered using ALTER ... POSITION i col1 [,col2];
          have SELECT * and INSERT honor such ordering
2004-05-05 14:36:20 +00:00
Neil Conway 3b8151a5ee Fix a typo in the documentation. 2004-05-05 09:33:38 +00:00
Tom Lane 077db40fa1 ALTER TABLE rewrite. New cool stuff:
* ALTER ... ADD COLUMN with defaults and NOT NULL constraints works per SQL
spec.  A default is implemented by rewriting the table with the new value
stored in each row.

* ALTER COLUMN TYPE.  You can change a column's datatype to anything you
want, so long as you can specify how to convert the old value.  Rewrites
the table.  (Possible future improvement: optimize no-op conversions such
as varchar(N) to varchar(N+1).)

* Multiple ALTER actions in a single ALTER TABLE command.  You can perform
any number of column additions, type changes, and constraint additions with
only one pass over the table contents.

Basic documentation provided in ALTER TABLE ref page, but some more docs
work is needed.

Original patch from Rod Taylor, additional work from Tom Lane.
2004-05-05 04:48:48 +00:00
Neil Conway 4ef8b2f901 Fix obscure typo in 7.4.0 release notes. 2004-05-03 08:47:54 +00:00
Bruce Momjian 7ebd5dafd8 Assign item:
< 	o Add ALTER TABLE table SET WITHOUT CLUSTER
> 	o Add ALTER TABLE table SET WITHOUT CLUSTER (Christopher)
2004-05-02 12:27:45 +00:00
Bruce Momjian 846cd0f1c2 Update TODO item:
o Add ALTER TABLE table SET WITHOUT CLUSTER
2004-05-02 12:27:00 +00:00
Bruce Momjian 1a273556a3 Update Japanese FAQ.
Jun Kuwamura
2004-05-01 01:27:03 +00:00
Tom Lane f378288e3b Minor copy-editing. 2004-04-29 04:37:09 +00:00
Bruce Momjian a3b0c90e24 Fix typo:
<   columns and indexes with many duplicate keys
2004-04-28 16:35:36 +00:00
Neil Conway a3015829ee Fix typo in libpq docs. 2004-04-24 22:58:40 +00:00
Neil Conway f0c3a09ab3 Document that PQoidValue(), PQcmdTuples(), and PQoidStatus() now work
when the command that generated the PGresult was an EXECUTE of an
appropriate prepared statement.
2004-04-24 22:53:44 +00:00
Bruce Momjian f5dd5bf297 Add mention to run thread test program if user is experiencing problems
with threaded applications.
2004-04-24 00:14:28 +00:00
Neil Conway fc7fd50182 Add ceiling() as an alias for ceil(), and power() as an alias for pow().
Regression tests and documentation have both been updated.

SQL2003 requires that both ceiling() and ceil() be present, so I have
documented both spellings. SQL2003 doesn't mention pow() as far as I
can see, so I decided to replace pow() with power() in the documentation:
there is little reason to encourage the continued usage of a function
that isn't compliant with the standard, given a standard-compliant
alternative.

RELEASE NOTES: should state that pow() is considered deprecated
(although I don't see the need to ever remove it.)
2004-04-23 20:32:20 +00:00
Neil Conway 0fa2afa93a Make psql's \d+ command indicate whether the table in question
contains OIDs. Also, minor documentation improvements to the
psql reference page.
2004-04-22 17:38:16 +00:00
Bruce Momjian 65b020bd61 Fix filename mention in psqlrc.sample file. 2004-04-22 14:33:49 +00:00
Tom Lane 19f1649bed Put information about tag in Outputs section, where it belongs. 2004-04-22 11:46:22 +00:00
Peter Eisentraut c16fa67c87 Fix typo 2004-04-22 08:36:48 +00:00
Neil Conway 2ff4e44043 Improvements to the backup & restore documentation. 2004-04-22 07:02:36 +00:00
Bruce Momjian e3391133ae Update EXECUTE docs to mention tag matches prepared statement.
Update log_statement to more clearly state it doesn't filter based on
the statement type of the prepared statement.
2004-04-22 04:18:41 +00:00
Bruce Momjian be6bbcef56 Add global psql config file, psql.rc.sample. 2004-04-22 01:53:37 +00:00
Neil Conway 4906841901 Minor improvement to CREATE AGGREGATE docs: add an xref to the docs for
builtin aggregate functions.
2004-04-21 21:52:41 +00:00
Peter Eisentraut aeee856564 New link for Solaris IPC article 2004-04-21 13:18:28 +00:00
Bruce Momjian 49d3d9cf40 Change COPY CSV keyword to be:
FORCE QUOTE to force quotes
	FORCE NOT NULL to quote null input values
2004-04-21 00:34:18 +00:00
Bruce Momjian 2d1221bf89 Done:
< * Add NO WAIT option to various SQL commands
> * -Add NO WAIT LOCKs
2004-04-20 20:16:30 +00:00
Bruce Momjian 6022a7d72f Add doc mention that:
process directly.  Some parameters can only be set at server start;
    any changes to their entries in the configuration file will be ignored
    until the server is restarted.
2004-04-20 16:56:19 +00:00
Bruce Momjian cfb8d57ba1 Add:
> * Allow AFTER triggers on system tables
2004-04-20 14:03:30 +00:00
Bruce Momjian 8149029162 Improve IS NULL partial index wording. 2004-04-20 12:53:28 +00:00
Bruce Momjian 8b10da1056 Done:
> * -Exit postmaster if postgresql.conf can not be opened
2004-04-20 04:26:27 +00:00
Bruce Momjian bb18b47390 Document partial indexes for IS NULL lookups. 2004-04-20 04:25:47 +00:00
Bruce Momjian 2f2a3439a5 Remove additional tcl doc mention. 2004-04-20 01:14:55 +00:00
Bruce Momjian c310d28766 Remove TCL docs. 2004-04-20 01:11:49 +00:00
Bruce Momjian 6ef77149f7 > >> My question is whether postgres can index null values, and if not, do I
> >> have to accept a full table scan when locating records.
> >
> > It indexes them, but "is null" is not an indexable operator, so you
> > can't directly solve the above with a 3-column index.  What you can do
> > instead is use a partial index, for instance
> >
> > create index i on CUSTOMER.WCCustOrderStatusLog (WCOrderStatusID)
> > where Acknowledged is null and Processing is null;
>
> That's a very nifty trick and exactly the sort of answer I was after!

Add CREATE INDEX doc mention of using partial indexes for IS NULL
indexing;  idea from Tom.
2004-04-20 01:00:26 +00:00
Bruce Momjian d1b3915ce1 In reading the 7.4.2 docs, the sql reference page for PREPARE doesn't
reference DEALLOCATE in any way. It points to EXECUTE, but not to
DEALLOCATE. Suggested fix:

... This also means that a single  prepared statement cannot be used by
multiple simultaneous database clients; however, each client can create
their own prepared statement  to use. The prepared statement can be
manually cleaned up using the DEALLOCATE command.

James Robinson
2004-04-19 23:36:48 +00:00
Bruce Momjian 862b20b382 Complete TODO item:
o -Allow dump/load of CSV format

This adds new keywords to COPY and \copy:

        CSV - enable CSV mode (comma separated variable)
        QUOTE - specify quote character
        ESCAPE - specify escape character
        FORCE - force quoting of specified column
	LITERAL - suppress null comparison for columns

Doc changes included.  Regression updates coming from Andrew.
2004-04-19 17:22:31 +00:00
Bruce Momjian 83ab1c0475 Done:
> 	o -Allow dump/load of CSV format
2004-04-19 17:03:13 +00:00
Bruce Momjian 7931a8fdd1 Fix typo:
< * -Allow psql \du to show groups, and add \dg for groups
> * -Allow psql \du to show users, and add \dg for groups
2004-04-19 15:37:56 +00:00
Bruce Momjian 77c7e8bcb8 Clarify meaning of second DateStyle value. 2004-04-15 04:46:18 +00:00
Bruce Momjian 18229e080c Update name:
< * Alvaro Herrera <alvherre@dcc.uchile.cl>
> * Alvaro is Alvaro Herrera <alvherre@dcc.uchile.cl>
2004-04-14 19:15:27 +00:00
Bruce Momjian 76e953bd70 Update owners of items:
< * Add the concept of dataspaces/tablespaces [tablespaces]
> * Add the concept of dataspaces/tablespaces [tablespaces] (Gavin)
167c167
< * Allow savepoints / nested transactions [transactions] (Bruce)
> * Allow savepoints / nested transactions [transactions] (Alvaro)
240c240
< 	o Allow Java server-side programming [java]
> 	o Allow Java server-side programming [java] (Dave)
496a497
> * Alvaro Herrera <alvherre@dcc.uchile.cl>
2004-04-14 18:33:03 +00:00
Bruce Momjian abdabeb995 Change psql \copy stdin/stdout to read from command input/output.
Add pstdin/pstdout to read from psql's stdin/stdout.

BACKWARD INCOMPATIBLE CHANGE
2004-04-12 15:58:52 +00:00
Bruce Momjian 7b3189c185 > > This update fixes a few small typos in names,
> > pronouns and formatting in the Russian FAQ.

Serguei Mokhov
2004-04-12 03:22:20 +00:00
Bruce Momjian 1934055cbe Please find a small patch to fix the brain damage "century" and
"millennium" date part implementation in postgresql, both in the code
and the documentation, so that it conforms to the official definition.
If you do not agree with the official definition, please send your
complaint to "pope@vatican.org". I'm not responsible for them;-)

With the previous version, the centuries and millenniums had a wrong
number and started the wrong year. Moreover century number 0, which does
not exist in reality, lasted 200 years. Also, millennium number 0 lasted
2000 years.

If you want postgresql to have it's own definition of "century" and
"millennium" that does not conform to the one of the society, just give
them another name. I would suggest "pgCENTURY" and "pgMILLENNIUM";-)

IMO, if someone may use the options, it means that postgresql is used for
historical data, so it make sense to have an historical definition. Also,
I just want to divide the year by 100 or 1000, I can do that quite easily.

BACKWARD INCOMPATIBLE CHANGE

Fabien Coelho - coelho@cri.ensmp.fr
2004-04-10 18:02:59 +00:00
Bruce Momjian 296f485492 Remove libpgeasy and odbc doc reference in filelist.sgml --- removed to
gborg.
2004-04-09 18:03:13 +00:00
Bruce Momjian 14bd7a0181 Add SQL 2003 standards. 2004-04-07 23:32:30 +00:00
Bruce Momjian 9fa14b1ea0 Remove bad URL. 2004-04-07 22:02:03 +00:00
Bruce Momjian d17c92b24f Update:
< * Allow LOCALE on a per-column basis, default to ASCII
> * Allow locale to be set at database creation
> * Allow locale on a per-column basis, default to ASCII
> * Optimize locale to have minimal performance impact when not used (Peter E)
105d106
< * Optimize locale to have minimal performance impact when not used (Peter E)
111d111
< * Allow locale to be set at database creation
2004-04-07 19:14:21 +00:00
Bruce Momjian 75688a27d2 Add:
> * Allow locale to be set at database creation
2004-04-07 18:34:44 +00:00
Bruce Momjian f1d0269861 Done:
> * -Allow logging of only data definition(DDL), or DDL and modification statements

Add:
> * Add a session mode to warn about non-standard SQL usage
2004-04-07 17:04:45 +00:00
Bruce Momjian 58a1cb1024 Update FAQ_DEV. 2004-04-07 14:23:32 +00:00
Bruce Momjian 6a25c6e1d1 > >>1. change the type of "log_statement" option from boolean to string,
> >>with allowed values of "all, mod, ddl, none" with default "none".

OK, here is a patch that implements #1.  Here is sample output:

        test=> set client_min_messages = 'log';
        SET
        test=> set log_statement = 'mod';
        SET
        test=> select 1;
         ?column?
        ----------
                1
        (1 row)

        test=> update test set x=1;
        LOG:  statement: update test set x=1;
        ERROR:  relation "test" does not exist
        test=> update test set x=1;
        LOG:  statement: update test set x=1;
        ERROR:  relation "test" does not exist
        test=> copy test from '/tmp/x';
        LOG:  statement: copy test from '/tmp/x';
        ERROR:  relation "test" does not exist
        test=> copy test to  '/tmp/x';
        ERROR:  relation "test" does not exist
        test=> prepare xx as select 1;
        PREPARE
        test=> prepare xx as update x set y=1;
        LOG:  statement: prepare xx as update x set y=1;
        ERROR:  relation "x" does not exist
        test=> explain analyze select 1;;
                                             QUERY PLAN
        ------------------------------------------------------------------------------------
         Result  (cost=0.00..0.01 rows=1 width=0) (actual time=0.006..0.007 rows=1 loops=1)
         Total runtime: 0.046 ms
        (2 rows)

        test=> explain analyze update test set x=1;
        LOG:  statement: explain analyze update test set x=1;
        ERROR:  relation "test" does not exist
        test=> explain update test set x=1;
        ERROR:  relation "test" does not exist

It checks PREPARE and EXECUTE ANALYZE too.  The log_statement values are
'none', 'mod', 'ddl', and 'all'.  For 'all', it prints before the query
is parsed, and for ddl/mod, it does it right after parsing using the
node tag (or command tag for CREATE/ALTER/DROP), so any non-parse errors
will print after the log line.
2004-04-07 05:05:50 +00:00
Bruce Momjian 6165bbab8c Remove 'syslog' GUC variable, and add more logical 'log_destination'
variable to control logoutput location on Unix and Win32.

Magnus Hagander
2004-04-05 03:02:11 +00:00
Tom Lane 375369acd1 Replace TupleTableSlot convention for whole-row variables and function
results with tuples as ordinary varlena Datums.  This commit does not
in itself do much for us, except eliminate the horrid memory leak
associated with evaluation of whole-row variables.  However, it lays the
groundwork for allowing composite types as table columns, and perhaps
some other useful features as well.  Per my proposal of a few days ago.
2004-04-01 21:28:47 +00:00
Bruce Momjian 076055ed10 Add description of log_statement_stats's function (total statement stats
rather than per-stage stats).
2004-03-31 19:59:22 +00:00
Bruce Momjian a302b8e150 Back out tutorial changes:
---------------------------------------------------------------------------

1.  In keeping with the recent discussion that there should be more
said about views, stored procedures, and triggers, in the tutorial, I
have added a bit of verbiage to that end.

2.  Some formatting changes to the datetime discussion, as well as
addition of a citation of a relevant book on calendars.

Christopher Browne
2004-03-31 16:20:53 +00:00
Bruce Momjian 7d15b90e5b Add psql backslash command discussion. 2004-03-31 01:05:54 +00:00
Bruce Momjian b5db560c7a Add:
* Move psql backslash database information into the backend, use
nmumonic commands? [psql]
2004-03-31 01:04:49 +00:00
Bruce Momjian 07ff3afa2a Remove:
* Prevent unneeded quoting in psql \d output using fmtId()
2004-03-31 01:01:38 +00:00
Bruce Momjian 7b43450931 Fix markup errors from recent patch. 2004-03-30 22:08:50 +00:00
Bruce Momjian aaad011940 1. In keeping with the recent discussion that there should be more
said about views, stored procedures, and triggers, in the tutorial, I
have added a bit of verbiage to that end.

2.  Some formatting changes to the datetime discussion, as well as
addition of a citation of a relevant book on calendars.

Christopher Browne
2004-03-30 21:58:20 +00:00
Bruce Momjian cf9c2be7e8 Add:
> * Add GUC variable to allow output of interval values in ISO8601 format
2004-03-30 21:51:41 +00:00
Bruce Momjian 45edc20283 Add mention of how to use \df to find functions using/returning specific
data types.
2004-03-30 15:54:33 +00:00
Bruce Momjian fd071bd478 Fix to_char for 1 BC. Previously it returned 1 AD.
Fix to_char(year) for BC dates.  Previously it returned one less than
the current year.

Add documentation mentioning that there is no 0 AD.
2004-03-30 15:53:18 +00:00
Bruce Momjian 80683f2a07 Update FAQ from Robert Treat 2004-03-29 05:07:20 +00:00
Neil Conway 1090aa8cc7 More cross-reference work, other minor SGML fixes and improvements. 2004-03-26 03:18:28 +00:00
Tom Lane 7a944e41b4 Convert some GUC variable references to links. 2004-03-25 18:57:57 +00:00
Tom Lane 8899a2aba9 Replace max_expr_depth parameter with a max_stack_depth parameter that
is measured in kilobytes and checked against actual physical execution
stack depth, as per my proposal of 30-Dec.  This gives us a fairly
bulletproof defense against crashing due to runaway recursive functions.
2004-03-24 22:40:29 +00:00
Bruce Momjian a09b9a36d3 Add:
* Have pg_dump use multi-statement transactions for INSERT dumps
2004-03-24 18:15:56 +00:00
Neil Conway ce5273757b Make a cross-reference in the ALTER TABLE ref page into a <xref>. 2004-03-24 09:49:20 +00:00
Neil Conway d6bc5944a0 Fix a minor typo in the log_line_prefix docs and make a couple other
tiny improvements.
2004-03-24 03:48:41 +00:00
Bruce Momjian 6daf396879 Add thread locking to SSL and Kerberos connections.
I have removed the docs mentioning that SSL and Kerberos are not
thread-safe.

Manfred Spraul
2004-03-24 03:45:00 +00:00
Bruce Momjian fcfa2c790a Document fallback to tcp/ip localhost connection from psql on ports
without unix domain sockets (win32).
2004-03-24 03:27:46 +00:00
Tom Lane 1c4da387ad PQresult should be PGresult. 2004-03-23 23:37:17 +00:00
Tom Lane 8ed89773c5 Fix small typo. 2004-03-23 22:57:09 +00:00
Tom Lane 121cf2b904 Repair misleading description of MOVE's command tag result. 2004-03-23 22:39:22 +00:00
Tom Lane f862c42009 Use dollar-quoting for function bodies, unless disabled with
--disable-dollar-quoting.

Andrew Dunstan
2004-03-23 22:06:08 +00:00
Tom Lane 24614a9880 Upgrade ALTER TABLE DROP COLUMN so that it can drop an OID column, and
remove separate implementation of ALTER TABLE SET WITHOUT OIDS in favor
of doing a regular DROP.  Also, cause CREATE TABLE to account completely
correctly for the inheritance status of the OID column.  This fixes
problems with dropping OID columns that have dependencies, as noted by
Christopher Kings-Lynne, as well as making sure that you can't drop an
OID column that was inherited from a parent.
2004-03-23 19:35:17 +00:00
Neil Conway 446b5476e5 Minor SGML improvements. 2004-03-23 13:21:41 +00:00
Neil Conway 9f894981da Fix typo in postmaster reference page: from Tom. 2004-03-23 06:09:00 +00:00
Neil Conway fd4f3b3b62 Improve the locale and character set docs, add some <xref>s pointing
to the character set docs where appropriate, and improve the postmaster
reference page. Character set cross-refs suggested by Gavin Kistner.
2004-03-23 02:47:35 +00:00
Tom Lane 2e45c143ef Replace the virtual_host and tcpip_socket parameters with a unified
listen_addresses parameter, as per recent discussion.  The default behavior
is now to listen on localhost, which eliminates the need for the -i
postmaster switch in many scenarios.

Andrew Dunstan
2004-03-23 01:23:48 +00:00
Tom Lane 3b7ca96c2c Clean up rather poor description of the difference between INHERITS and
LIKE.  Per gripe from Patrick Samson.
2004-03-22 16:18:50 +00:00
Bruce Momjian 3ceda5eab3 I just noticed that \dp outputs "Table" to indicate relations (tables,
sequences and views).  This patch allows it to handle views and
sequences.

Euler Taveira de Oliveira
2004-03-22 03:38:24 +00:00
Tom Lane f938c2b91b Revise syntax-error reporting behavior to give pleasant results for
errors in internally-generated queries, such as those submitted by
plpgsql functions.  Per recent discussions with Fabien Coelho.
2004-03-21 22:29:11 +00:00
Tom Lane 6c7e6d2baa Add a usage example for has_function_privilege(). 2004-03-19 19:13:26 +00:00
Bruce Momjian 3700335baf Done:
> * -Order duplicate index entries on creation by tid for faster heap lookups
2004-03-17 22:30:10 +00:00
Bruce Momjian 8c702ea7ac Modify:
< * Order duplicate index entries by tid for faster heap lookups
> * Order duplicate index entries on creation by tid for faster heap lookups
2004-03-17 17:40:44 +00:00
Bruce Momjian d245b6bd9f Document SPI_push() and SPI_pop(). 2004-03-17 01:05:10 +00:00
Bruce Momjian 2c7e473434 Add:
> * Allow pg_dumpall to use non-text output formats
>
2004-03-16 16:13:38 +00:00
Bruce Momjian e2d8c1b2bb log_statement was not removed by the previous patch. It only updated
its description.
2004-03-15 17:57:51 +00:00
Bruce Momjian 221c0adaa8 Update random regression test text to be clearer. 2004-03-15 16:11:42 +00:00
Bruce Momjian 48c9fbd35c Update random test description because it fails less frequently now. 2004-03-15 16:06:43 +00:00