Commit Graph

4904 Commits

Author SHA1 Message Date
Bruce Momjian 95cdafd333 Remove pljava todo info. 2004-05-31 02:58:09 +00:00
Bruce Momjian d157b7bbc7 Document new pg_ctl 'kill' command, specificially for Win32. 2004-05-27 03:50:25 +00:00
Tom Lane c792cbcc26 Recommend ALTER TABLE ... TYPE as the best way to reclaim space occupied by deleted columns. The old method involving UPDATE and VACUUM FULL will be considerably less efficient. 2004-05-27 03:30:11 +00:00
Neil Conway 92b0b080eb Add an index entry for "Performance Tips". Patch from Alvaro Herrera. 2004-05-27 01:00:40 +00:00
Bruce Momjian ffef9b8c50 AIX doc addition:
> FWIW, the section on configuring kernel resources under various
> Unixen[1] doesn't have any documentation for AIX. If someone out there
> knows which knobs need to be tweaked, would they mind sending in a doc
> patch? (Or just specifying what needs to be done, and I'll add the
> SGML.)

After verifying that nobody wound up messing with the kernel
parameters, here's a docs patch...

 Chris Browne
2004-05-26 18:51:43 +00:00
Bruce Momjian 97d625dd1c *) inet_(client|server)_(addr|port)() and necessary documentation for
the four functions.


> Also, please justify the temp-related changes.  I was not aware that we
> had any breakage there.

patch-tmp-schema.txt contains the following bits:

*) Changes pg_namespace_aclmask() so that the superuser is always able
to create objects in the temp namespace.
*) Changes pg_namespace_aclmask() so that if this is a temp namespace,
objects are only allowed to be created in the temp namespace if the
user has TEMP privs on the database.  This encompasses all object
creation, not just TEMP tables.
*) InitTempTableNamespace() checks to see if the current user, not the
session user, has access to create a temp namespace.

The first two changes are necessary to support the third change.  Now
it's possible to revoke all temp table privs from non-super users and
limiting all creation of temp tables/schemas via a function that's
executed with elevated privs (security definer).  Before this change,
it was not possible to have a setuid function to create a temp
table/schema if the session user had no TEMP privs.

patch-area-path.txt contains:

*) Can now determine the area of a closed path.


patch-dfmgr.txt contains:

*) Small tweak to add the library path that's being expanded.

I was using $lib/foo.so and couldn't easily figure out what the error
message, "invalid macro name in dynamic library path" meant without
looking through the source code.  With the path in there, at least I
know where to start looking in my config file.

Sean Chittenden
2004-05-26 18:35:51 +00:00
Bruce Momjian 8096fe45ce The added aggregates are:
(1) boolean-and and boolean-or aggregates named bool_and and bool_or.
    they (SHOULD;-) correspond to standard sql every and some/any aggregates.
    they do not have the right name as there is a problem with
    the standard and the parser for some/any. Tom also think that
    the standard name is misleading because NULL are ignored.
    Also add 'every' aggregate.

(2) bitwise integer aggregates named bit_and and bit_or for
    int2, int4, int8 and bit types. They are not standard, but I find
    them useful. I needed them once.


The patches adds:

- 2 new very short strict functions for boolean aggregates in
  src/backed/utils/adt/bool.c,
  src/include/utils/builtins.h and src/include/catalog/pg_proc.h

- the new aggregates declared in src/include/catalog/pg_proc.h and
  src/include/catalog/pg_aggregate.h

- some documentation and validation about these new aggregates.

Fabien COELHO
2004-05-26 15:26:28 +00:00
Bruce Momjian 3dc37cd8d6 The patch adresses the TODO list item "Allow external interfaces to
extend the GUC variable set".

Plugin modules like the pl<lang> modules needs a way to declare
configuration parameters. The postmaster has no knowledge of such
modules when it reads the postgresql.conf file. Rather than allowing
totally unknown configuration parameters, the concept of a variable
"class" is introduced. Variables that belongs to a declared classes will
create a placeholder value of string type and will not generate an
error. When a module is loaded, it will declare variables for such a
class and make those variables "consume" any placeholders that has been
defined. Finally, the module will generate warnings for unrecognized
placeholders defined for its class.

More detail:
The design is outlined after the suggestions made by Tom Lane and Joe
Conway in this thread:

http://archives.postgresql.org/pgsql-hackers/2004-02/msg00229.php

A new string variable 'custom_variable_classes' is introduced. This
variable is a comma separated string of identifiers. Each identifier
denots a 'class' that will allow its members to be added without error.
This variable must be defined in postmaster.conf.

The lexer (guc_file.l) is changed so that it can accept a qualified name
in the form <ID>.<ID> as the name of a variable. I also changed so that
the 'custom_variable_classes', if found, is added first of all variables
in order to remove the order of declaration issue.

The guc_variables table is made more dynamic. It is originally created
with 20% slack and can grow dynamically. A capacity is introduced to
avoid resizing every time a new variable is added. guc_variables and
num_guc_variables becomes static (hidden).

The GucInfoMain now uses the new function get_guc_variables() and
GetNumConfigOptions  instead or using the guc_variables directly.

The find_option() function, when passed a missing name, will check if
the name is qualified. If the name is qualified and if the qualifier
denotes a class included in the 'custom_variable_classes', a placeholder
variable will be created. Such a placeholder will not participate in a
list operation but will otherwise function as a normal string variable.

Define<type>GucVariable() functions will be added, one for each variable
type. They are inteded to be used by add-on modules like the pl<lang>
mappings. Example:

extern void DefineCustomBoolVariable(
         const char* name,
         const char* short_desc,
         const char* long_desc,
         bool* valueAddr,
         GucContext context,
         GucBoolAssignHook assign_hook,
         GucShowHook show_hook);

(I created typedefs for the assign-hook and show-hook functions). A call
to these functions will define a new GUC-variable. If a placeholder
exists it will be replaced but it's value will be used in place of the
default value. The valueAddr is assumed ot point at a default value when
the define function is called. The only constraint that is imposed on a
Custom variable is that its name is qualified.

Finally, a function:

void EmittWarningsOnPlacholders(const char* className)

was added. This function should be called when a module has completed
its variable definitions. At that time, no placeholders should remain
for the class that the module uses. If they do, elog(INFO, ...) messages
will be issued to inform the user that unrecognized variables are
present.

Thomas Hallgren
2004-05-26 15:07:41 +00:00
Bruce Momjian cfbfdc557d This patch implement the TODO [ALTER DATABASE foo OWNER TO bar].
It was necessary to touch in grammar and create a new node to make home
to the new syntax. The command is also supported in E
CPG. Doc updates are attached too. Only superusers can change the owner
of the database. New owners don't need any aditional
privileges.

Euler Taveira de Oliveira
2004-05-26 13:57:04 +00:00
Bruce Momjian daac2d2c48 Update Russian FAQ.
Viktor Vislobokov
2004-05-24 15:14:52 +00:00
Neil Conway 2b3f6ecdf5 Clarify an entry in the 7.4 release notes. 2004-05-24 04:54:22 +00:00
Bruce Momjian ffd1880bb4 Add:
> * Allow GRANT/REVOKE permissions to be given to all schema objects with one command
2004-05-24 03:23:00 +00:00
Tom Lane 5fc1046f2f Fix broken markup. 2004-05-23 15:13:43 +00:00
Neil Conway bfa1171c84 Fix a few more minor errors in the 7.4 release notes. 2004-05-22 11:06:55 +00:00
Neil Conway 76e70108e7 Fix typo in an entry in the 7.4 release notes. 2004-05-22 09:48:15 +00:00
Tom Lane 63bd0db121 Integrate src/timezone library for all platforms. There is more we can
and should do now that we control our own destiny for timezone handling,
but this commit gets the bulk of the picayune diffs in place.
Magnus Hagander and Tom Lane.
2004-05-21 05:08:06 +00:00
Bruce Momjian 40296aa2ec Remove pyton, spell check fix:
> * Support composite types as table columns
286,289d286
< * Python
< 	o Allow users to register their own types with pg_
< 	o Allow SELECT to return a dictionary of dictionaries
< 	o Allow COPY BINARY FROM
456d452
< * Support composite types as table columns
2004-05-20 16:36:14 +00:00
Bruce Momjian 8027065660 Updates from Tom:
< Bracketed items "[]" have more detailed.
> Bracketed items "[]" have more detail.
35,36d34
< * Remove unreferenced table files and temp tables during database vacuum
<   or postmaster startup (Bruce)
68c66
< * Allow pg_dump to dump sequences using NO_MAXVALUE and NO_MINVALUE
> * -Allow pg_dump to dump sequences using NO_MAXVALUE and NO_MINVALUE
70c68
< * Prevent whole-row references from leaking memory, e.g. SELECT COUNT(tab.*)
> * -Prevent whole-row references from leaking memory, e.g. SELECT COUNT(tab.*)
76c74
< * Make LENGTH() of CHAR() not count trailing spaces
> * -Make LENGTH() of CHAR() not count trailing spaces
145c143
< * Allow SELECT * FROM tab WHERE int2col = 4 to use int2col index, int8,
> * -Allow SELECT * FROM tab WHERE int2col = 4 to use int2col index, int8,
179c177
< * Allow more ISOLATION LEVELS to be accepted, but issue a warning for them
> * -Allow more ISOLATION LEVELS to be accepted
186c184
< * Add GUC setting to make created tables default to WITHOUT OIDS
> * -Add GUC setting to make created tables default to WITHOUT OIDS
265d262
< * Allow fastpast to pass values in portable format
271c268
< * Move psql backslash database information into the backend, use nmumonic
> * Move psql backslash database information into the backend, use nmeumonic
275,283d271
< * JDBC
< 	o Comprehensive test suite. This may be available already.
< 	o JDBC-standard BLOB support
< 	o Error Codes (pending backend implementation)
< 	o Support both 'make' and 'ant'
< 	o Fix LargeObject API to handle OIDs as unsigned ints
< 	o Use cursors implicitly to avoid large results (see setCursorName())
< 	o Add LISTEN/NOTIFY support to the JDBC driver (Barry)
<
332c320
< * Have pg_dump -c clear the database using dependency information
> * -Have pg_dump -c clear the database using dependency information
367,368c355,356
< * Cache last known per-tuple offsets to speed long tuple access
< * Automatically place fixed-width, NOT NULL columns first in a table
> * Cache last known per-tuple offsets to speed long tuple access, adjusting
>   for NULLs and TOAST values
467c455,456
< * Change representation of whole-tuple parameters to functions
> * -Change representation of whole-tuple parameters to functions
> * Support composite types as table columns
478,479d466
< * Allow the regression tests to start postmaster with -i so the tests
<   can be run on systems that don't support unix-domain sockets
2004-05-20 15:57:26 +00:00
Bruce Momjian bb206b6dce Update SCO FAQ.
Larry Rosenman
2004-05-20 04:19:26 +00:00
Bruce Momjian 3e485d0ea1 Add:
> * Investigate SMP context switching issues
2004-05-20 04:10:44 +00:00
Bruce Momjian 4714dcb06c Remove item:
< * Allow col IS TRUE/FALSE use an index like col = TRUE/FALSE
2004-05-20 03:27:16 +00:00
Bruce Momjian 5f55347e33 Add:
> 	o Add default clustering to system tables
2004-05-20 02:58:18 +00:00
Bruce Momjian f92630bdca Add:
> 	o Add ALTER DOMAIN TYPE
2004-05-20 02:07:50 +00:00
Bruce Momjian 0ca0099139 Add:
> * Allow col IS TRUE/FALSE use an index like col = TRUE/FALSE
2004-05-20 02:01:00 +00:00
Bruce Momjian d5003e5221 Document &< and &> properly.
William White <bwhite@frognet.net>
2004-05-19 23:56:38 +00:00
Bruce Momjian 24a1fafc8d Clearify CHECK handling of unknown test values.
Karl O. Pinc
2004-05-19 23:10:43 +00:00
Bruce Momjian 952c772158 Done:
> * -Make pg_restore continue after errors, so it acts more like pg_dump scripts
2004-05-19 21:09:53 +00:00
Bruce Momjian 4c82cb9d40 Trim down relocatable docs, per Peter. 2004-05-18 21:46:25 +00:00
Bruce Momjian dcf459e662 Add some documentation on relocatable installs. 2004-05-18 20:34:01 +00:00
Bruce Momjian da401bd314 Add:
> * Allow binaries to be statically linked so they are more easily relocated
2004-05-18 16:06:08 +00:00
Bruce Momjian e30efa0da1 Update Russian FAQ.
Viktor Vislobokov
2004-05-18 13:18:30 +00:00
Bruce Momjian d14db1321b Add documentation that installations are relocatable unless configure
locations are overridden.
2004-05-17 16:06:25 +00:00
Bruce Momjian 2657c24b6d Reformat sgml doc paragraph. 2004-05-17 15:00:50 +00:00
Neil Conway 8295c27c89 Add documentation for the new "dollar quoting" feature, and update existing
examples to use dollar quoting when appropriate. Original patch from David
Fetter, additional work and editorializing by Neil Conway.
2004-05-16 23:22:08 +00:00
Neil Conway 2871f60f23 Change ln(), log(), power(), and sqrt() to emit the correct SQLSTATE
error codes for certain error conditions, as specified by SQL2003.
2004-05-16 23:18:55 +00:00
Bruce Momjian 335cf9ae7f Restore one mention of logrotate, per Peter. 2004-05-16 19:34:46 +00:00
Neil Conway 0079547bcb Implement the width_bucket() function, per SQL2003. This commit only adds
a variant of the function for the 'numeric' datatype; it would be possible
to add additional variants for other datatypes, but I haven't done so yet.

This commit includes regression tests and minimal documentation; if we
want developers to actually use this function in applications, we'll
probably need to document what it does more fully.
2004-05-14 21:42:30 +00:00
Bruce Momjian 19a495caaa Properly document rotatelogs, and add mention of it to pg_ctl manual page. 2004-05-14 20:01:19 +00:00
Neil Conway 0cb27df5c6 Improve documentation for SQLSTATE error codes, per recent thread on
-patches.
2004-05-14 18:04:02 +00:00
Bruce Momjian 3bfd4d9284 Remove:
< 	o Add PL/PHP (Joe)
2004-05-12 04:10:41 +00:00
Bruce Momjian 270c9aa34a Add DELETE:
> * Add MERGE command that does UPDATE/DELETE, or on failure, INSERT (rules, triggers?)
2004-05-11 20:23:05 +00:00
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
Bruce Momjian d6b57925ca Remove GUC log_statement, log_pid, log_timestamp, log_source_port.
Functionality superceeded by log_line_prefix.

Andrew Dunstan
2004-03-15 15:56:28 +00:00
Bruce Momjian 98bb1d2085 Fix typo. 2004-03-15 14:21:30 +00:00
Bruce Momjian 10afaf472a Mention Linux syslog will sync lines to disk, and describe how to
disable it.
2004-03-15 14:15:45 +00:00
Bruce Momjian afaf252cee Done:
> * -Issue NOTICE if foreign key data requires costly test to match primary key
2004-03-13 23:17:39 +00:00
Bruce Momjian e3d6ee6c28 Update FAQ with current release version. 2004-03-12 13:51:57 +00:00
Bruce Momjian fab1a5950b Update Russian FAQ, Viktor Vislobokov 2004-03-12 13:51:33 +00:00
Neil Conway be7976d5a2 Fix a typo in the documentation for geqo_effort. 2004-03-12 00:56:00 +00:00
Neil Conway fe9c4420e4 Improve documentation for the newly-added NOWAIT clause of LOCK TABLE. 2004-03-12 00:52:23 +00:00
Neil Conway bfd6f52b0e Allow 'Infinity' and '-Infinity' as input to the float4 and float8
types. Update the regression tests and the documentation to reflect
this. Remove the UNSAFE_FLOATS #ifdef.

This is only half the story: we still unconditionally reject
floating point operations that result in +/- infinity. See
recent thread on -hackers for more information.
2004-03-12 00:25:43 +00:00
Bruce Momjian 0f8c4bc4a2 Document the SSL and Kerberos are not thread-safe. 2004-03-11 02:39:10 +00:00
Tatsuo Ishii 0b86ade1c2 Add NOWAIT option to LOCK command 2004-03-11 01:47:41 +00:00
Neil Conway ae22a6c185 Fix a typo. 2004-03-10 20:10:26 +00:00
Neil Conway f28d5614ce Tweak some text to avoid using <command>SET</command> as a verb, per
suggestion from Peter E.
2004-03-09 23:15:47 +00:00
Bruce Momjian 832e6df893 Remove blank line in Makefile. 2004-03-09 20:10:10 +00:00
Bruce Momjian 66cb7e2e99 Add HISTORY/INSTALL clean target to 7.4.X. 2004-03-09 20:08:10 +00:00
Neil Conway 47110ace3a Add documentation for the recent 'ALSO' patch for CREATE RULE. Along
the way, fix a typo and make a few SGML cleanups.
2004-03-09 19:30:21 +00:00
Neil Conway 80ec228389 Refer to GUC variables using <xref> tags rather than <varname> tags,
where appropriate. Add "id" and "xreflabel" tags to the descriptions
of the GUC variables to facilitate this. Also make a few minor docs
cleanups.
2004-03-09 16:57:47 +00:00
Bruce Momjian 943eae92fb Add ALSO keyword to CREATE RULE.
Fabien COELHO
2004-03-09 05:05:41 +00:00
Bruce Momjian 96ef6682e3 Done:
> * -Allow log lines to include session-level information, like database and user
2004-03-09 04:45:48 +00:00
Bruce Momjian 2d3fe86bc4 Add:
#log_line_prefix = ''         # e.g. '<%u%%%d> '
                              # %u=user name %d=database name
                              # %r=remote host and port
                              # %p=PID %t=timestamp %i=command tag
                              # %c=session id %l=session line number
                              # %s=session start timestamp
                              # %x=stop here in non-session processes
                              # %%='%'

Andrew Dunstan
2004-03-09 04:43:07 +00:00
Bruce Momjian e0bed412a2 Have SGML make clean remove text files output as well 2004-03-08 23:59:23 +00:00
Bruce Momjian fb5eb6ac87 Update German FAQ.
Ian Barwick
2004-03-08 17:38:31 +00:00
Tom Lane 0bdce30f6b Some editorial work on 7.4.2 release notes. 2004-03-07 22:07:56 +00:00
Michael Meskes 9e5a091f02 Added multidimensional arrays as todo for ecpg. 2004-03-07 14:35:47 +00:00
Neil Conway 5ae38167cf Improve discussion of using OIDs for identifying rows, fix an instance of
incorrect SGML markup.
2004-03-07 04:31:01 +00:00
Neil Conway cb659ecb40 Explicitely mention that some GUC variables cannot be changed at
runtime.
2004-03-07 01:02:55 +00:00
Neil Conway ab8faed00d Editorialization of some text discussing 'IS NULL' vs. '= NULL'. 2004-03-07 01:01:44 +00:00
Bruce Momjian 565b4f2de5 Use lynx -stdin and regenerate HISTORY 2004-03-06 02:52:46 +00:00
Tom Lane 96c229dd7a Improve documentation of virtual_host parameter: old text failed to
indicate that you could specify multiple listen addresses.
2004-03-05 23:16:17 +00:00
Bruce Momjian ff47b8518e First update of release notes for 7.4.2. Still needs work. 2004-03-05 19:51:56 +00:00
Bruce Momjian 39042637dd Oops, '-' doesn't work for my lynx either.
Change back to /dev/stdin, even though it isn't portable.  Let's wait for
someone to complain they don't have /dev/stdin.
2004-03-05 19:50:55 +00:00
Bruce Momjian 8fc7522cad Use '-' for stdin on lynx, my lynx version doesn't support -stdin. 2004-03-05 19:48:03 +00:00
Bruce Momjian aef037723f Update Polish FAQ, from Marcin Mazurek. 2004-03-05 19:29:23 +00:00
Bruce Momjian 1973971821 Per a brief conversation with Tom, I've created a patch for adding
support for 'week' within the date_trunc function.

Within the patch I added a couple of test cases and associated target
output, and changed the documentation to add 'week' appropriately.

Robert Creager
2004-03-05 02:41:14 +00:00
Bruce Momjian 033e37bed1 Fix for underscore in ID sgml markup. 2004-03-05 01:00:45 +00:00
Bruce Momjian 65a0db19f4 Add new SPI functions for use by PL/Java:
+extern Oid SPI_getargtypeid(void *plan, int argIndex);
	+extern int SPI_getargcount(void *plan);
	+extern bool SPI_is_cursor_plan(void *plan);

Thomas Hallgren
2004-03-05 00:47:01 +00:00
Neil Conway 2146bfc869 Emit a warning when an empty string is input to the oid, float4, and
float8 types. This begins the deprecation of this feature: in 7.6,
this input will be rejected.

Also added a new error code for warnings about deprecated features,
and updated the regression tests.
2004-03-04 21:47:18 +00:00
Dennis Bjorklund 0b1f7cccd7 The trim function doc did not say that the second argument could be
be omitted. This patch fixes that. It also fixes a bug where the
type text was not wrapped as <type>text</type>.
2004-03-04 20:09:29 +00:00
Bruce Momjian f503b6a821 Better document INSTEAD behavior for rules. 2004-03-04 14:32:12 +00:00
Neil Conway c934cf1e96 Add a few more cross-references where appropriate, add more text about
the FROM clause and an example to the UPDATE reference page, and make
a few other SGML tweaks.
2004-03-03 22:22:24 +00:00
Bruce Momjian 6008fca4d9 Remove Jan:
< 	o Add PL/PHP (Joe, Jan)
> 	o Add PL/PHP (Joe)
2004-03-03 14:26:48 +00:00
Bruce Momjian 58c69eab00 Add:
> 	o Add way to remove cluster specification on a table
2004-03-03 05:16:53 +00:00
Bruce Momjian 49032ca765 Update Turkish FAQ, Devrim GUNDUZ 2004-03-02 15:46:22 +00:00
Tom Lane 340d44686b Update release notes for 7.3.6. 2004-03-02 00:38:46 +00:00
Tom Lane 3811d7a08f Replace unportable use of /dev/stdin with lynx's -stdin switch. 2004-03-02 00:03:02 +00:00
Neil Conway 1a6a27650d Add a few more xrefs, where they seemed appropriate: for example, refer
to the discussion of planner statistics in the documentation for the
default_statistics_target GUC var.
2004-03-01 17:58:39 +00:00
Neil Conway 4a43b24cec Enable some additional warnings when running openjade and onsgmls. 2004-03-01 16:08:58 +00:00
Neil Conway e3f27c1847 Fix a typo in a recent commit to func.sgml that apparently broke the doc
build for some versions of OpenJade (unfortunately, my local version of
OpenJade didn't report the error...) -- thanks to Andrew Dunstan for
the report.
2004-02-29 15:45:53 +00:00
Neil Conway fd015c5c99 Fix a bunch (~88) typos that the OpenJade tools don't warn about by
default: some SGML tags weren't properly terminated.
2004-02-29 15:36:46 +00:00
Neil Conway f46a80c362 Fix a few omissions in the initcap() documentation & source code
comments, make some unrelated improvements to the functions
documentation, and perform some minor consistency cleanup
elsewhere. Original initcap() change from Dennis B., additional
changes by Neil C.
2004-02-27 03:59:23 +00:00
Bruce Momjian 2f17547c67 Update plpython docs to mention shared libs are possible in 2.3 or
later.
2004-02-27 01:23:18 +00:00
Bruce Momjian 23168fb3bf Update the pl/python shared build docs to match the recent version of
python.
2004-02-26 02:09:40 +00:00
Tom Lane f83356c7f5 Do a direct probe during postmaster startup to determine the maximum
number of openable files and the number already opened.  This eliminates
depending on sysconf(_SC_OPEN_MAX), and allows much saner behavior on
platforms where open-file slots are used up by semaphores.
2004-02-23 20:45:59 +00:00
Neil Conway 45f5eba90b Document the family() function (added during the 7.4 dev cycle but not
documented), and fix a typo.
2004-02-22 04:14:06 +00:00
Bruce Momjian 0d02533943 Add:
> * Have psql show more information about sequences
2004-02-20 20:37:11 +00:00
Bruce Momjian e53c56d34a Add:
> * Allow external interfaces to extend the GUC variable set
2004-02-20 18:45:35 +00:00
Bruce Momjian 5e4b9d1ef0 Add to PL/java description. 2004-02-20 18:31:03 +00:00
Bruce Momjian 2e3d5f1160 Update:
< * Add GUC variable to prevent waiting on locks
> * Add NO WAIT option to various SQL commands
2004-02-18 21:42:22 +00:00
Neil Conway afcc6fbb60 Remove a caveat from the "backup" documentation: pg_dump now does a
better job of handling dependencies between database objects.
2004-02-17 23:56:07 +00:00