Commit Graph

6992 Commits

Author SHA1 Message Date
Tom Lane
feed07350b Fix broken markup. 2006-07-03 16:43:14 +00:00
Bruce Momjian
277807bd9e Add FILLFACTOR to CREATE INDEX.
ITAGAKI Takahiro
2006-07-02 02:23:23 +00:00
Bruce Momjian
5d5c1416bf Done:
> * -Add fillfactor to control reserved free space during index creation
2006-07-02 02:22:39 +00:00
Bruce Momjian
ff3003e537 Done:
< 	o Add ALTER TABLE tab ADD/DROP INHERITS parent
<
< 	  This allows tables to be added/removed from an inheritance
< 	  hierarchy.  This is particularly useful for table partitioning.
< 	  http://archives.postgresql.org/pgsql-hackers/2006-05/msg00988.php
<
> 	o -Add ALTER TABLE tab INHERIT / NO INHERIT  parent
2006-07-02 01:59:46 +00:00
Bruce Momjian
8c092781f4 ALTER TABLE ... ADD/DROPS INHERIT (actually INHERIT / NO INHERIT)
Open items:

There were a few tangentially related issues that have come up that I think
are TODOs. I'm likely to tackle one or two of these next so I'm interested in
hearing feedback on them as well.

. Constraints currently do not know anything about inheritance. Tom suggested
  adding a coninhcount and conislocal like attributes have to track their
  inheritance status.

. Foreign key constraints currently do not get copied to new children (and
  therefore my code doesn't verify them). I don't think it would be hard to
  add them and treat them like CHECK constraints.

. No constraints at all are copied to tables defined with LIKE. That makes it
  hard to use LIKE to define new partitions. The standard defines LIKE and
  specifically says it does not copy constraints. But the standard already has
  an option called INCLUDING DEFAULTS; we could always define a non-standard
  extension LIKE table INCLUDING CONSTRAINTS that gives the user the option to
  request a copy including constraints.

. Personally, I think the whole attislocal thing is bunk. The decision about
  whether to drop a column from children tables or not is something that
  should be up to the user and trying to DWIM based on whether there was ever
  a local definition or the column was acquired purely through inheritance is
  hardly ever going to match up with user expectations.

. And of course there's the whole unique and primary key constraint issue. I
  think to get any traction at all on this you have a prerequisite of a real
  partitioned table implementation where the system knows what the partition
  key is so it can recognize when it's a leading part of an index key.

Greg Stark
2006-07-02 01:58:36 +00:00
Bruce Momjian
569e32a0f1 Update item for GUID:
< * Add 128-bit Universally Unique Identifier (UUID)
> * Add Globally/Universally Unique Identifier (GUID/UUID)
2006-06-30 15:04:32 +00:00
Tom Lane
51e400c9c6 Remove the separate 'stats buffer' process, letting backend stats messages
be delivered directly to the collector process.  The extra process context
swaps required to transfer data through the buffer process seem to outweigh
any value the buffering might have.  Per recent discussion and tests.
I modified Bruce's draft patch to use poll() rather than select() where
available (this makes a noticeable difference on my system), and fixed
up the EXEC_BACKEND case.
2006-06-29 20:00:08 +00:00
Bruce Momjian
bc9b6c22d5 Change URL for SITC:
<   http://momjian.us/cgi-bin/pgsitc
>   http://archives.postgresql.org/pgsql-hackers/2006-06/msg01534.php
2006-06-29 03:04:59 +00:00
Bruce Momjian
994aa6a611 Add:
> * Add 128-bit Universally Unique Identifier (UUID)
2006-06-29 01:33:36 +00:00
Neil Conway
6e9c974e43 Editorialization for the additions to the CREATE TABLE reference page
made as part of the recent INCLUDING CONSTRAINTS patch. The text could
stand further improvement, but this is at least a step in the right
direction.
2006-06-28 22:01:52 +00:00
Bruce Momjian
06bd3dba80 Add URL for SITC
>   http://momjian.us/cgi-bin/pgsitc
2006-06-28 21:05:22 +00:00
Bruce Momjian
15897332ed Update:
< 		o Add support for WITH HOLD cursors
> 		o Add support for WITH HOLD and SCROLL cursors
>
> 		  PL/pgSQL cursors should support the same syntax as
> 		  backend cursors.
>
2006-06-28 15:39:32 +00:00
Bruce Momjian
c2c4f3c30e Update Russian FAQ.
Viktor Vislobokov
2006-06-28 13:10:18 +00:00
Bruce Momjian
370a709c75 Add GUC update_process_title to control whether 'ps' display is updated
for every command, default to on.
2006-06-27 22:16:44 +00:00
Bruce Momjian
665c5e861a Default stats_command_string to 'on', now that its overhead is minimal. 2006-06-27 19:07:50 +00:00
Bruce Momjian
33b4ad66c9 Revert patch, doesn't do what it should:
* %Disallow changing default expression of a SERIAL column

Dhanaraj M
2006-06-27 18:35:05 +00:00
Bruce Momjian
e99507eaa1 Will revert in next patch more cleanly.
> * -Disallow changing DEFAULT expression of a SERIAL column
2006-06-27 16:42:00 +00:00
Bruce Momjian
0c99c0fecf Not done:
< * -Disallow changing DEFAULT expression of a SERIAL column
> * %Disallow changing DEFAULT expression of a SERIAL column
2006-06-27 16:39:27 +00:00
Bruce Momjian
dc2c25fc62 Add INCLUDING CONSTRAINTS to CREATE TABLE LIKE.
Greg Stark
2006-06-27 03:43:20 +00:00
Bruce Momjian
62f2693688 Done:
< * %Disallow changing DEFAULT expression of a SERIAL column?
<
<   This should be done only if the existing SERIAL problems cannot be
<   fixed.
<
> * -Disallow changing DEFAULT expression of a SERIAL column
2006-06-27 03:22:45 +00:00
Bruce Momjian
560feb474a Done:
> 	o -Add PQescapeIdentifier()
2006-06-27 00:03:44 +00:00
Bruce Momjian
3b1790f987 Add PQescapeIdentifier() to libpq
Christopher Kings-Lynne
2006-06-27 00:03:42 +00:00
Tom Lane
ca0d2197ca Change the row constructor syntax (ROW(...)) so that list elements foo.*
will be expanded to a list of their member fields, rather than creating
a nested rowtype field as formerly.  (The old behavior is still available
by omitting '.*'.)  This syntax is not allowed by the SQL spec AFAICS,
so changing its behavior doesn't violate the spec.  The new behavior is
substantially more useful since it allows, for example, triggers to check
for data changes with 'if row(new.*) is distinct from row(old.*)'.  Per
my recent proposal.
2006-06-26 17:24:41 +00:00
Bruce Momjian
6bf44d51ea Use Unix newlines, instead of DOS ones. 2006-06-26 13:04:05 +00:00
Bruce Momjian
bc28f58b8f Update my info:
> * Bruce is Bruce Momjian <bruce@momjian.us> of EnterpriseDB
2006-06-25 18:52:03 +00:00
Bruce Momjian
f5940e7b34 Add:
< * Reuse index tuples that point to rows that are not visible to anyone?
> * Reuse index tuples that point to heap tuples that are not visible to
>   anyone?
2006-06-25 16:27:41 +00:00
Bruce Momjian
ac7a126d0c Update entry:
< * Allow heap reuse of UPDATEd rows if old and new versions are on the
<   same heap page?
> * Allow heap reuse of UPDATEd rows if no indexed columns are changed,
>   and old and new versions are on the same heap page?
<   This is possible for same-page updates because a single index row
<   can point to both old and new values.
>   While vacuum handles DELETEs fine, updating of non-indexed columns, like
>   counters, are difficult for VACUUM to handle efficiently.  This method
>   is possible for same-page updates because a single index row can be
>   used to point to both old and new values.
2006-06-24 23:47:58 +00:00
Bruce Momjian
fc6a2293b5 Add UPDATE entry for row reuse.
>
> * Allow heap reuse of UPDATEd rows if old and new versions are on the
>   same heap page?
>
>   This is possible for same-page updates because a single index row
>   can point to both old and new values.
>   http://archives.postgresql.org/pgsql-hackers/2006-06/msg01305.php
2006-06-24 23:45:02 +00:00
Tom Lane
eaf8f312c7 Some editorial work on the documentation of the current-date/time
functions.
2006-06-19 16:13:01 +00:00
Tom Lane
b13c9686d0 Take the statistics collector out of the loop for monitoring backends'
current commands; instead, store current-status information in shared
memory.  This substantially reduces the overhead of stats_command_string
and also ensures that pg_stat_activity is fully up to date at all times.
Per my recent proposal.
2006-06-19 01:51:22 +00:00
Bruce Momjian
6075feed40 Update my email address. 2006-06-18 19:34:00 +00:00
Peter Eisentraut
5266f221a2 Merge postmaster and postgres command into just postgres. postmaster
symlink is kept for now for compatibility.  To call single-user mode, use
postgres --single.
2006-06-18 15:38:37 +00:00
Tom Lane
c892643a3c Code review for SELECT INTO STRICT patch: use saner choices of error
SQLSTATEs, fix some documentation problems.
2006-06-16 23:29:27 +00:00
Tom Lane
3ba3e6c8ce Clean up after someone's curious idea that it'd be good to strip
leading zeroes from the SQLSTATE codes.  They're strings, people,
not numbers.
2006-06-16 22:41:45 +00:00
Andrew Dunstan
e287fb27a5 docs for DROP ... IF EXISTS for the following cases:
language, tablespace, trigger, rule, opclass, function, aggregate. operator, and cast.
2006-06-16 22:27:55 +00:00
Bruce Momjian
bac6570e78 Add:
> 		o Allow PL/python to composite types and result sets
> 		  once buggy assert-enabled versions of python can be detected
>
> 		  http://archives.postgresql.org/pgsql-patches/2006-04/msg00087.php
2006-06-16 22:08:46 +00:00
Bruce Momjian
dceac3acc0 Add:
>
> * Fix CREATE CAST on DOMAINs
>
>   http://archives.postgresql.org/pgsql-hackers/2006-05/msg00072.php
2006-06-16 22:05:01 +00:00
Bruce Momjian
4fff9d7290 Document issues with non-default tablespaces and pg_dumpall restores.
Backpatch documentation addition to 8.1.X.
2006-06-16 22:01:17 +00:00
Bruce Momjian
b055f00ebb Add URL for ISO dates:
> 		  http://archives.postgresql.org/pgsql-bugs/2006-04/msg00248.php
2006-06-16 21:41:24 +00:00
Bruce Momjian
e79cc2db00 Add URL for currency type:
>   http://archives.postgresql.org/pgsql-general/2005-08/msg01432.php
2006-06-16 19:49:50 +00:00
Bruce Momjian
237756b1ce Add URL for updatable views:
>   http://archives.postgresql.org/pgsql-hackers/2006-03/msg00586.php
2006-06-16 18:50:24 +00:00
Bruce Momjian
1d9273b506 Add:
> * Consider shrinking expired tuples to just their headers
>   http://archives.postgresql.org/pgsql-patches/2006-03/msg00142.php
2006-06-16 18:48:42 +00:00
Bruce Momjian
b49ce32da1 Add URL to:
* Auto-fill the free space map by scanning the buffer cache or by
  checking pages written by the background writer
2006-06-16 18:38:39 +00:00
Bruce Momjian
64861671c9 Add URL for freespace map filling.
>
>   http://archives.postgresql.org/pgsql-hackers/2006-02/msg01125.php
>
2006-06-16 18:37:31 +00:00
Bruce Momjian
632545d15c >
> * Add support for public SYNONYMS
>
>   http://archives.postgresql.org/pgsql-hackers/2006-03/msg00519.php
2006-06-16 18:32:07 +00:00
Bruce Momjian
16d8e82221 > o Add PL/Python tracebacks
>
>                http://archives.postgresql.org/pgsql-patches/2006-02/msg00288.php
2006-06-16 18:11:03 +00:00
Bruce Momjian
dc86109eba Add:
> 		o Fix problems with RETURN NEXT on tables with
> 		  dropped/added columns after function creation
>
> 		  http://archives.postgresql.org/pgsql-patches/2006-02/msg00165.php
2006-06-16 17:44:43 +00:00
Bruce Momjian
ad44b464d1 Add URL for:
> * Allow protocol-level BIND parameter values to be logged
>
>   http://archives.postgresql.org/pgsql-hackers/2006-02/msg00165.php
2006-06-16 17:25:38 +00:00
Bruce Momjian
56e967f4ba Add to locale TODO.detail. 2006-06-16 17:14:32 +00:00
Bruce Momjian
cfe71bd35d Add URL for ISO date/time syntax:
>
> 		  http://archives.postgresql.org/pgsql-hackers/2006-01/msg00250.php
>
2006-06-16 16:59:30 +00:00
Bruce Momjian
28b0d6bf62 Add LDAP documentation missed in code patch.
Magnus Hagander
2006-06-16 15:16:16 +00:00
Bruce Momjian
8fc2a5afa7 Update preload_library magic block wording. 2006-06-16 12:47:49 +00:00
Bruce Momjian
91fc80d0d3 Fix:
< 		  get_employee_salary(emp_id AS 12345, tax_year AS 2001)
> 		  get_employee_salary(12345 AS emp_id, 2001 AS tax_year)
2006-06-16 04:04:52 +00:00
Bruce Momjian
57ffc4d78b Update magic block wording for preloaded libraries. 2006-06-16 04:02:35 +00:00
Bruce Momjian
a584c12426 Add STRICT to PL/pgSQL SELECT INTO, so exceptions are thrown if more or
less than one row is returned by the SELECT, for Oracle PL/SQL
compatibility.

Improve SELECT INTO documentation.

Matt Miller
2006-06-15 18:02:22 +00:00
Bruce Momjian
eb5558bce8 Fix to_ascii() markup error. 2006-06-15 17:52:48 +00:00
Bruce Momjian
167c7bb49a Add mention that preload_libraries check the magic block, so
non-PostgreSQL libraries cannot be loaded using this capability.
2006-06-15 17:49:09 +00:00
Bruce Momjian
6241f46495 Update syntax suggestion:
< 		  get_employee_salary(emp_id => 12345, tax_year => 2001)
> 		  get_employee_salary(emp_id AS 12345, tax_year AS 2001)
2006-06-15 17:42:02 +00:00
Bruce Momjian
712e824ff1 Move list of supported to_ascii() encodings from footnote to main
description.

Nis Jorgensen
2006-06-15 17:38:26 +00:00
Bruce Momjian
fe8c1165d9 Add:
>
> 		o Fix memory leak from exceptions
>
> 		  http://archives.postgresql.org/pgsql-performance/2006-06/msg00305.php
2006-06-15 17:17:41 +00:00
Bruce Momjian
653fa21700 Clarify dynamic pl/pgsql item and add URLs. Restructure server-side
section into PL/pgSQL and non-PL/pgSQL sections:

< 	o Fix PL/pgSQL RENAME to work on variables other than OLD/NEW
< 	o Allow function parameters to be passed by name,
< 	  get_employee_salary(emp_id => 12345, tax_year => 2001)
< 	o Add Oracle-style packages
< 	o Add table function support to pltcl, plpython
< 	o Add capability to create and call PROCEDURES
< 	o Allow PL/pgSQL to handle %TYPE arrays, e.g. tab.col%TYPE[]
< 	o Allow function argument names to be statements from PL/PgSQL
< 	o Add MOVE to PL/pgSQL
< 	o Add support for polymorphic arguments and return types to
< 	  languages other than PL/PgSQL
< 	o Add support for OUT and INOUT parameters to languages other
< 	  than PL/PgSQL
< 	o Add single-step debugging of PL/PgSQL functions
< 	o Allow PL/PgSQL to support WITH HOLD cursors
< 	o Allow PL/PgSQL RETURN to return row or record functions
<
< 	  http://archives.postgresql.org/pgsql-patches/2005-11/msg00045.php
> 	o PL/pgSQL
> 		o Fix RENAME to work on variables other than OLD/NEW
> 		o Allow function parameters to be passed by name,
> 		  get_employee_salary(emp_id => 12345, tax_year => 2001)
> 		o Add Oracle-style packages
> 		o Allow handling of %TYPE arrays, e.g. tab.col%TYPE[]
> 		o Allow listing of record column names, and access to
> 		  record columns via variables, e.g. columns := r.(*),
> 		  tval2 := r.(colname)
>
> 		  http://archives.postgresql.org/pgsql-patches/2005-07/msg00458.php
> 		  http://archives.postgresql.org/pgsql-patches/2006-05/msg00302.php
> 		  http://archives.postgresql.org/pgsql-patches/2006-06/msg00031.php
>
> 		o Add MOVE
> 		o Add single-step debugging of functions
> 		o Add support for WITH HOLD cursors
> 		o Allow PL/RETURN to return row or record functions
>
> 		  http://archives.postgresql.org/pgsql-patches/2005-11/msg00045.php
>
>
> 	o Other
> 		o Add table function support to pltcl, plpython
> 		o Add support for polymorphic arguments and return types to
> 		  languages other than PL/PgSQL
> 		o Add capability to create and call PROCEDURES
> 		o Add support for OUT and INOUT parameters to languages other
> 		  than PL/PgSQL
2006-06-15 16:54:13 +00:00
Bruce Momjian
fce5033b4a Add:
> 	o Allow PL/PgSQL RETURN to return row or record functions
>
> 	  http://archives.postgresql.org/pgsql-patches/2005-11/msg00045.php
2006-06-15 16:02:32 +00:00
Bruce Momjian
f8cdc265ea Done, removed:
<
< * Consider padding the spinlock structure to have spinlock registers
<   on different CPU cache line
<
<   http://archives.postgresql.org/pgsql-hackers/2005-10/msg00498.php
2006-06-15 02:23:13 +00:00
Bruce Momjian
e1e133f264 Add to locale TODO.detail. 2006-06-14 23:28:22 +00:00
Bruce Momjian
a9d2cc4d76 Remove, done:
<
< * Add support for WIN1253 (Greek) encoding
<
<   http://archives.postgresql.org/pgsql-bugs/2005-12/msg00000.php
2006-06-14 23:19:04 +00:00
Bruce Momjian
d5ddb87616 Add:
>
> * Add support for WIN1253 (Greek) encoding
>
>   http://archives.postgresql.org/pgsql-bugs/2005-12/msg00000.php
2006-06-14 23:07:55 +00:00
Bruce Momjian
ca2bb27529 Add URL to ILIKE encoding fix:
>   http://archives.postgresql.org/pgsql-patches/2005-11/msg00173.php
2006-06-14 23:03:12 +00:00
Bruce Momjian
8d21abd733 Add:
>
> * Consider increasing internal areas when shared buffers is increased
>
>   http://archives.postgresql.org/pgsql-hackers/2005-10/msg01419.php
2006-06-14 22:31:53 +00:00
Bruce Momjian
cda6a5a580 Already done:
<
< 	o Properly mark all libpq-exported functions with "PQ"
<
< 	  http://archives.postgresql.org/pgsql-hackers/2005-10/msg00696.php
2006-06-14 22:23:05 +00:00
Bruce Momjian
6894d695fa Done by Peter:
< * Improve the information schema to be more standards-compliant:
<
<   http://archives.postgresql.org/pgsql-bugs/2005-10/msg00028.php
2006-06-14 21:58:21 +00:00
Bruce Momjian
456a852d5b Add:
>
> 	o Properly mark all libpq-exported functions with "PQ"
>
> 	  http://archives.postgresql.org/pgsql-hackers/2005-10/msg00696.php
2006-06-14 21:54:43 +00:00
Bruce Momjian
2f8ea0275d Add:
>
> * Consider padding the spinlock structure to have spinlock registers
>   on different CPU cache line
>
>   http://archives.postgresql.org/pgsql-hackers/2005-10/msg00498.php
2006-06-14 21:47:06 +00:00
Bruce Momjian
3c8c3ccf99 Add item, not fixed:
>
> * Fix ILIKE and regular expressions to handle case insensitivity
>   properly in multibyte encodings
>
>   http://archives.postgresql.org/pgsql-bugs/2005-10/msg00001.php
2006-06-14 21:40:00 +00:00
Bruce Momjian
ca3d2c31f9 Remove, already in back branches:
<
< 	o Add new version of PQescapeString() that doesn't double backslashes
< 	  that are part of a client-only multibyte sequence
<
< 	  Single-quote is not a valid byte in any supported client-only
< 	  encoding.  This requires using mblen() to determine if the
< 	  backslash is inside or outside a multi-byte sequence.
<
< 	o Add new version of PQescapeString() that doesn't double
< 	  backslashes when standard_conforming_strings is true and
< 	  non-E strings are used
2006-06-14 21:38:21 +00:00
Bruce Momjian
bcc97255f0 Done:
> 	o -Port contrib/xml2
2006-06-14 21:26:49 +00:00
Bruce Momjian
c135db1d4c Add information schema item:
> * Improve the information schema to be more standards-compliant:
>
>   http://archives.postgresql.org/pgsql-bugs/2005-10/msg00028.php
> * Add URL to more complete multi-byte regression tests
>
>   http://archives.postgresql.org/pgsql-hackers/2005-07/msg00272.php
< * Add URL to more complete multi-byte regression tests
<
<   http://archives.postgresql.org/pgsql-hackers/2005-07/msg00272.php
2006-06-14 21:10:50 +00:00
Bruce Momjian
63b35a8cb1 Add COPY views patch URL:
> 	  http://archives.postgresql.org/pgsql-patches/2005-09/msg00148.php
2006-06-14 20:40:20 +00:00
Bruce Momjian
744697317e Add:
>
> 	o Add API for 64-bit large object access
>
> 	  http://archives.postgresql.org/pgsql-hackers/2005-09/msg00781.php
2006-06-14 19:32:48 +00:00
Bruce Momjian
82009572ac Keep TODO.detail until item is done:
< 	o %Allow pg_dump to use multiple -t and -n switches
> 	o %Allow pg_dump to use multiple -t and -n switches  [pg_dump]
2006-06-14 19:02:06 +00:00
Bruce Momjian
22fd9a0ff8 Add URL, remove TODO.detail:
< 	o %Allow pg_dump to use multiple -t and -n switches [pg_dump]
> 	o %Allow pg_dump to use multiple -t and -n switches
>
> 	  http://archives.postgresql.org/pgsql-patches/2006-01/msg00190.php
>
2006-06-14 19:01:42 +00:00
Bruce Momjian
5b50ede670 Add locale/encoding references:
<   Right now only one encoding is allowed per database.
>   Right now only one encoding is allowed per database.  [locale]
> * Add CREATE COLLATE?  [locale]
2006-06-14 18:47:53 +00:00
Bruce Momjian
bc29957202 Add locale TODO.detail emails. 2006-06-14 18:42:51 +00:00
Bruce Momjian
9ae8690ad2 Update link to TODO.detail:
< 	o Check WSACancelBlockingCall() for interrupts (win32intr)
> 	o Check WSACancelBlockingCall() for interrupts [win32intr]
2006-06-14 18:39:18 +00:00
Bruce Momjian
f944f88021 Add:
> 	o Fix problem when cascading referential triggers make changes on
> 	  cascaded tables, seeing the tables in an intermediate state
>
> 	  http://archives.postgresql.org/pgsql-hackers/2005-09/msg00174.php
> 	  http://archives.postgresql.org/pgsql-hackers/2005-09/msg00174.php
2006-06-14 18:36:57 +00:00
Bruce Momjian
1e52c5eb96 Added:
>
> * Add URL to more complete multi-byte regression tests
>
>   http://archives.postgresql.org/pgsql-hackers/2005-07/msg00272.php
2006-06-14 17:59:33 +00:00
Bruce Momjian
b6f5676c60 Add entry:
> * Allow user-defined types to accept 'typmod' parameters
>   http://archives.postgresql.org/pgsql-hackers/2005-08/msg01142.php
>   http://archives.postgresql.org/pgsql-hackers/2005-09/msg00012.php
2006-06-14 17:51:55 +00:00
Bruce Momjian
aa30e0e555 Remove:
< 	o %Add CSV output format
2006-06-13 21:08:22 +00:00
Bruce Momjian
07c25723da Add BY clause to PL/PgSQL FOR loop, to control the iteration increment.
Jaime Casanova
2006-06-12 16:45:30 +00:00
Bruce Momjian
11a0c1de9f Add URL for bitmap AM:
>   http://archives.postgresql.org/pgsql-patches/2005-07/msg00512.php
2006-06-12 16:15:07 +00:00
Bruce Momjian
807bfa581c Remove pg_dump wording:
<   pg_get_tabledef(), pg_get_domaindef(), pg_get_functiondef(), and
<   make use of them in pg_dump
>   pg_get_tabledef(), pg_get_domaindef(), pg_get_functiondef()
2006-06-10 23:33:27 +00:00
Bruce Momjian
0d001c86f8 Add:
<   pg_get_tabledef(), pg_get_domaindef(), pg_get_functiondef()
>   pg_get_tabledef(), pg_get_domaindef(), pg_get_functiondef(), and
>   make use of them in pg_dump
2006-06-10 23:17:21 +00:00
Bruce Momjian
9143144935 Cleanups:
< 	* Allow a database in tablespace t1 with tables created in
> 	o Allow a database in tablespace t1 with tables created in
125c125
< 	* Allow reporting of which objects are in which tablespaces
> 	o Allow reporting of which objects are in which tablespaces
593c593
< 	* Allow GRANT/REVOKE permissions to be inherited by objects based on
> 	o Allow GRANT/REVOKE permissions to be inherited by objects based on
596c596
< 	* Allow SERIAL sequences to inherit permissions from the base table?
> 	o Allow SERIAL sequences to inherit permissions from the base table?
2006-06-09 18:41:57 +00:00
Bruce Momjian
c0ba4829a9 Cleanup:
< * -%Allow pooled connections to list all prepared statements
> * -Allow pooled connections to list all prepared statements
2006-06-09 18:12:29 +00:00
Bruce Momjian
1a1326d64d Add URL.
< 	  the insert.
> 	  the insert.
> 	  http://archives.postgresql.org/pgsql-patches/2005-07/msg00568.php
2006-06-09 02:11:10 +00:00
Bruce Momjian
fa23204c5d Update:
< * Add SQL99 WITH RECURSIVE (hierarchical) queries to SELECT
> * Add SQL:2003 WITH RECURSIVE (hierarchical) queries to SELECT
2006-06-09 01:02:22 +00:00
Bruce Momjian
2f12903eb9 Remove:
< * Rename some /contrib modules from pg* to pg_*
2006-06-09 01:00:36 +00:00
Bruce Momjian
e4725e35be Add URL.
>
>   http://archives.postgresql.org/pgsql-patches/2006-06/msg00096.php
>
2006-06-08 18:59:01 +00:00
Bruce Momjian
51aa05a437 Use simple URL's rather than text and a URL:
< 	    recovery.  See http://archives.postgresql.org/pgsql-patches/2005-04/msg00121.php.
> 	    recovery.
> 	    http://archives.postgresql.org/pgsql-patches/2005-04/msg00121.php
<   Right now only one encoding is allowed per database.  For a partial
<   patch, see http://archives.postgresql.org/pgsql-hackers/2005-03/msg00932.php.
>   Right now only one encoding is allowed per database.
>   http://archives.postgresql.org/pgsql-hackers/2005-03/msg00932.php
459c460
<   notify the protocol when a RESET CONNECTION command is used.  See
>   notify the protocol when a RESET CONNECTION command is used.
461d461
<   for a partial implementation.
515c515
< 	  See http://archives.postgresql.org/pgsql-patches/2006-02/msg00168.php.
> 	  http://archives.postgresql.org/pgsql-patches/2006-02/msg00168.php
535c535
< 	  See http://archives.postgresql.org/pgsql-hackers/2006-05/msg00988.php.
> 	  http://archives.postgresql.org/pgsql-hackers/2006-05/msg00988.php
821c821
<   See http://archives.postgresql.org/pgsql-patches/2005-07/msg00107.php.
>   http://archives.postgresql.org/pgsql-patches/2005-07/msg00107.php
877c877
<   Details at http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php.
>   http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php
<   See partially completed patch and additional work required at
<   http://archives.postgresql.org/pgsql-patches/2006-06/msg00025.php.
>   http://archives.postgresql.org/pgsql-patches/2006-06/msg00025.php
1297c1296
<   See http://archives.postgresql.org/pgsql-patches/2006-05/msg00040.php.
>   http://archives.postgresql.org/pgsql-patches/2006-05/msg00040.php
1311c1310,1311
< 	o Improve signal handling,
> 	o Improve signal handling
>
1312a1313
>
2006-06-08 16:07:23 +00:00
Bruce Momjian
2b5b47605c Add URL.
< * Support triggers on columns (Greg Sabino Mullane)
> * Support triggers on columns
>
>   See http://archives.postgresql.org/pgsql-patches/2005-07/msg00107.php.
>
2006-06-08 15:41:22 +00:00
Bruce Momjian
ea0390b682 Spelling fix.
Robert Treat
2006-06-08 13:45:36 +00:00
Bruce Momjian
4369b0b521 Done:
> * -Allow server logs to be remotely read and removed using SQL commands
2006-06-08 13:44:09 +00:00
Bruce Momjian
44f62decad Add URL for ALTER CONSTRAINT RENAME.
>
> 	  See http://archives.postgresql.org/pgsql-patches/2006-02/msg00168.php.
>
2006-06-08 03:17:11 +00:00
Bruce Momjian
ae76c3ace9 Add URL.
< 	    recovery.
> 	    recovery.  See http://archives.postgresql.org/pgsql-patches/2005-04/msg00121.php.
2006-06-08 02:59:02 +00:00
Bruce Momjian
366231f42f Add URL:
<   Right now only one encoding is allowed per database.
>   Right now only one encoding is allowed per database.  For a partial
>   patch, see http://archives.postgresql.org/pgsql-hackers/2005-03/msg00932.php.
2006-06-08 02:42:44 +00:00
Bruce Momjian
8a75c07626 Update wording:
< * Add SQL99 WITH RECURSIVE to SELECT
> * Add SQL99 WITH RECURSIVE (hierarchical) queries to SELECT
2006-06-08 01:08:45 +00:00
Bruce Momjian
0f1a7c55b4 Add entry:
> * Consider allowing control of upper/lower case folding of unquoted
>   identifiers
>
>   Details at http://archives.postgresql.org/pgsql-hackers/2004-04/msg00818.php.
2006-06-08 01:02:53 +00:00
Bruce Momjian
51dfe35121 Done:
< 	o Allow timezone names in SQL strings, '2006-05-24 21:11
> 	o -Allow timezone names in SQL strings, '2006-05-24 21:11
2006-06-07 22:31:38 +00:00
Bruce Momjian
877e296306 Spelling fix.
Robert Treat
2006-06-07 21:23:01 +00:00
Bruce Momjian
9ca4c153bf Mention GPL /contrib modules:
>
>   Particularly, move GPL-licensed /contrib/userlock and
>   /contrib/dbmirror/clean_pending.pl.
>
2006-06-07 20:39:10 +00:00
Tom Lane
8a30cc2127 Make the planner estimate costs for nestloop inner indexscans on the basis
that the Mackert-Lohmann formula applies across all the repetitions of the
nestloop, not just each scan independently.  We use the M-L formula to
estimate the number of pages fetched from the index as well as from the table;
that isn't what it was designed for, but it seems reasonably applicable
anyway.  This makes large numbers of repetitions look much cheaper than
before, which accords with many reports we've received of overestimation
of the cost of a nestloop.  Also, change the index access cost model to
charge random_page_cost per index leaf page touched, while explicitly
not counting anything for access to metapage or upper tree pages.  This
may all need tweaking after we get some field experience, but in simple
tests it seems to be giving saner results than before.  The main thing
is to get the infrastructure in place to let cost_index() and amcostestimate
functions take repeated scans into account at all.  Per my recent proposal.

Note: this patch changes pg_proc.h, but I did not force initdb because
the changes are basically cosmetic --- the system does not look into
pg_proc to decide how to call an index amcostestimate function, and
there's no way to call such a function from SQL at all.
2006-06-06 17:59:58 +00:00
Bruce Momjian
05631354f3 Add URL to RESET CONNECTION:
<   notify the protocol when a RESET CONNECTION command is used.
>   notify the protocol when a RESET CONNECTION command is used.  See
>   http://archives.postgresql.org/pgsql-patches/2006-04/msg00192.php
>   for a partial implementation.
2006-06-06 16:27:23 +00:00
Bruce Momjian
491a8c27c9 Done:
< * %Make postmater and postgres options distinct so the postmaster -o
> * -Make postmater and postgres options distinct so the postmaster -o
2006-06-06 13:52:21 +00:00
Tom Lane
e4de635a2b Increase the default value of cpu_index_tuple_cost from 0.001 to 0.005.
This shouldn't affect simple indexscans much, while for bitmap scans that
are touching a lot of index rows, this seems to bring the estimates more
in line with reality.  Per recent discussion.
2006-06-05 03:03:42 +00:00
Tom Lane
eed6c9ed7e Add a GUC parameter seq_page_cost, and use that everywhere we formerly
assumed that a sequential page fetch has cost 1.0.  This patch doesn't
in itself change the system's behavior at all, but it opens the door to
people adopting other units of measurement for EXPLAIN costs.  Also, if
we ever decide it's worth inventing per-tablespace access cost settings,
this change provides a workable intellectual framework for that.
2006-06-05 02:49:58 +00:00
Bruce Momjian
f6dc20e109 Update:
< * %Remove behavior of postmaster -o
> * %Make postmater and postgres options distinct so the postmaster -o
>   option is no longer needed
2006-06-04 02:11:04 +00:00
Bruce Momjian
d7739850e4 Update:
< 	o Allow COPY to output from views
> 	o Allow COPY to output from SELECT
570c570
< 	  Another idea would be to allow actual SELECT statements in a COPY.
> 	  COPY should also be able to output views.
2006-06-04 01:33:39 +00:00
Bruce Momjian
e5b198066d Update GUI FAQ.
Robert Treat
2006-06-04 00:17:43 +00:00
Bruce Momjian
1309c6f547 Update GUI tools URL.
Robert Treat
2006-06-04 00:13:43 +00:00
Bruce Momjian
8a4035410f Record location of partial patch :
>  * Allow WAL information to recover corrupted pg_controldata
>
>   See partially completed patch and additional work required at
>   http://archives.postgresql.org/pgsql-patches/2006-06/msg00025.php.
>
2006-06-03 04:00:01 +00:00
Tom Lane
12e842422f Mention pg_encoding_to_char in entry for pg_database.encoding.
Per Larry Rosenman.
2006-06-03 02:53:04 +00:00
Bruce Momjian
6ea7164feb Patch reverted, not done:
> * Allow WAL information to recover corrupted pg_controldata
2006-06-03 02:34:35 +00:00
Bruce Momjian
be05b260a9 Remove pg_resetxlog -r flag, feature has problems referenced here:
http://archives.postgresql.org/pgsql-hackers/2006-05/msg00002.php
2006-06-03 02:19:24 +00:00
Tom Lane
2703007501 Fix example of how to escape data in psql backslash commands. 2006-05-31 22:34:35 +00:00
Tom Lane
8f165ee13b Make PG_MODULE_MAGIC required in shared libraries that are loaded into
the server.  Per discussion, there seems no point in a waiting period
before making this required.
2006-05-31 20:58:09 +00:00
Bruce Momjian
3b7ed9ba9c Recommend '' for literal ', rather than \', in psql documentation. 2006-05-31 11:47:20 +00:00
Bruce Momjian
c3c3902611 Support '' for literal ' in psql single-quote strings, documentation update. 2006-05-31 11:35:17 +00:00
Tom Lane
e60cb3a35c Code review for magic-block patch. Remove separate header file pgmagic.h,
as this seems only likely to create headaches for module developers.  Put
the macro in the pre-existing fmgr.h file instead.  Avoid being too cute
about how many fields we can cram into a word, and avoid trying to fetch
from a library we've already unlinked.
Along the way, it occurred to me that the magic block really ought to be
'const' so it can be stored in the program text area.  Do the same for
the existing data blocks for PG_FUNCTION_INFO_V1 functions.
2006-05-30 21:21:30 +00:00
Bruce Momjian
01b2168c90 Add pgmagic header block to store compile-time constants:
It now only checks four things:

Major version number (7.4 or 8.1 for example)
NAMEDATALEN
FUNC_MAX_ARGS
INDEX_MAX_KEYS

The three constants were chosen because:

1. We document them in the config page in the docs
2. We mark them as changable in pg_config_manual.h
3. Changing any of these will break some of the more popular modules:

FUNC_MAX_ARGS changes fmgr interface, every module uses this NAMEDATALEN
changes syscache interface, every PL as well as tsearch uses this
INDEX_MAX_KEYS breaks tsearch and anything using GiST.

Martijn van Oosterhout
2006-05-30 14:09:32 +00:00
Bruce Momjian
4d06e86d04 Revert patch, needs more work:
---------------------------------------------------------------------------

Add dynamic record inspection to PL/PgSQL, useful for generic triggers:

  tval2 := r.(cname);

or

  columns := r.(*);

Titus von Boxberg
2006-05-30 13:40:56 +00:00
Bruce Momjian
38c7700f56 Add dynamic record inspection to PL/PgSQL, useful for generic triggers:
tval2 := r.(cname);

or

  columns := r.(*);

Titus von Boxberg
2006-05-30 12:03:13 +00:00
Bruce Momjian
88ba64d396 Back out patch, wrong previous commit message. 2006-05-30 11:58:05 +00:00
Bruce Momjian
b6477c6295 Add regexp_replace() to string functions section.
Joachim Wieland
2006-05-30 11:54:51 +00:00
Bruce Momjian
fcc02c20fc Update PL documentation:
An article at WebProNews quoted from the PG docs as to the merits of
stored procedures.  I have added a bit more material on their merits,
as well as making a few changes to improve the introductions to
PL/Perl and PL/Tcl.

Chris Browne
2006-05-30 11:40:21 +00:00
Bruce Momjian
4c494889a6 Update Japanese FAQ.
J.Kuwamura
2006-05-30 10:29:18 +00:00
Bruce Momjian
70507ace88 Add item:
> * Consider GnuTLS if OpenSSL license becomes a problem
>
>   See http://archives.postgresql.org/pgsql-patches/2006-05/msg00040.php.
2006-05-30 10:21:12 +00:00
Bruce Momjian
63cb35c41c Add:
> 	o Allow timezone names in SQL strings, '2006-05-24 21:11
> 	   Americas/New_York'::timestamptz
2006-05-29 23:29:38 +00:00
Andrew Dunstan
21e343da35 Make plperl's $_TD trigger data a global rather than a lexical variable,
with a fresh local value for each invocation, to avoid unexpected sharing
violations. Per recent -hackers discussion.
2006-05-29 13:51:23 +00:00
Andrew Dunstan
3a9ae3d206 TG_table_name and TG_table_schema for plpgsql, plus docs and regression. 2006-05-28 03:03:17 +00:00
Alvaro Herrera
3d58a1c168 Remove traces of otherwise unused RELKIND_SPECIAL symbol. Leave the psql bits
in place though, so that it plays nicely with older servers.

Per discussion.
2006-05-28 02:27:08 +00:00
Andrew Dunstan
22b118b530 TG_table_name and TG_table_schema for pl/tcl, plus regression test and docs. 2006-05-27 20:24:16 +00:00
Tom Lane
223ae6957f Support binary COPY through psql. Also improve detection of write errors
during COPY OUT.  Andreas Pflug, some editorialization by moi.
2006-05-26 19:51:29 +00:00
Bruce Momjian
aadd8a23ce Update AIX FAQ.
Chris Browne
2006-05-26 19:48:32 +00:00
Andrew Dunstan
0a269db9cf Add table_name and table_schema to plpython trigger data, plus docs and regression test. 2006-05-26 19:23:09 +00:00
Andrew Dunstan
777f72cd37 Add table_name and table_schema to plperl trigger data. relname is
kept but now deprecated. Patch from Adam Sjøgren. Add regression test to
show plperl trigger data (Andrew).
TBD: apply similar changes to plpgsql, plpython and pltcl.
2006-05-26 17:34:16 +00:00
Bruce Momjian
6bd89d09c8 Remove pg_attribute detail, add URL
< 	  pg_attribute.attislocal has to be set to 'false' for ADD, and
< 	  pg_attribute.attinhcount adjusted appropriately
> 	  See http://archives.postgresql.org/pgsql-hackers/2006-05/msg00988.php.
2006-05-24 18:12:38 +00:00
Teodor Sigaev
d2158b0281 * Add support NULL to GiST.
* some refactoring and simplify code int gistutil.c and gist.c
* now in some cases it can be called used-defined
  picksplit method for non-first column in index, but here
	is a place to do more.
* small fix of docs related to support NULL.
2006-05-24 11:01:39 +00:00
Bruce Momjian
c1d4551ae1 Add PQisthreadsafe() to libpq, to allow library applications to query
the thread-safety status of the library.
2006-05-23 22:13:19 +00:00
Bruce Momjian
672f0beb01 Update text:
> 	  This allows tables to be added/removed from an inheritance
> 	  hierarchy.  This is particularly useful for table partitioning.
2006-05-23 20:59:29 +00:00
Bruce Momjian
b7741bff02 Add:
> 	o Add ALTER TABLE tab ADD/DROP INHERITS parent
>
> 	  pg_attribute.attislocal has to be set to 'false' for ADD, and
> 	  pg_attribute.attinhcount adjusted appropriately
>
2006-05-23 20:57:53 +00:00
Bruce Momjian
a2b6c896e5 Rename in release notes: Mac -> OS/X, Intel to x86:
Fix for OS/X Bonjour on x86 systems (Ashley Clark)
2006-05-23 20:20:52 +00:00
Bruce Momjian
c8f345024d New wording, "What is the upgrade process for PostgreSQL?" 2006-05-23 15:51:07 +00:00
Bruce Momjian
4fc6aa4bc2 Update heading for upgrades. 2006-05-23 15:47:43 +00:00
Bruce Momjian
0f9652848b Add mention that everyone should upgrade to minor releases. 2006-05-23 15:22:20 +00:00
Bruce Momjian
74d0cf3974 Make "trigger" section:
> * Referential Integrity
>
> 	o Add MATCH PARTIAL referential integrity
> 	o Change foreign key constraint for array -> element to mean element
> 	  in array?
> 	o Enforce referential integrity for system tables
>
>
< Referential Integrity
< =====================
<
< * Add MATCH PARTIAL referential integrity
> Triggers
> ========
< * Change foreign key constraint for array -> element to mean element
<   in array?
801d804
< * Enforce referential integrity for system tables
2006-05-22 20:39:23 +00:00
Bruce Momjian
32bfb1c297 Update Japanese FAQ.
J.Kuwamura
2006-05-22 14:12:55 +00:00
Tom Lane
e9cc53025a Update release notes for upcoming releases. 2006-05-21 21:49:22 +00:00
Tom Lane
515112f9d4 Modify libpq's string-escaping routines to be aware of encoding considerations
and standard_conforming_strings.  The encoding changes are needed for proper
escaping in multibyte encodings, as per the SQL-injection vulnerabilities
noted in CVE-2006-2313 and CVE-2006-2314.  Concurrent fixes are being applied
to the server to ensure that it rejects queries that may have been corrupted
by attempted SQL injection, but this merely guarantees that unpatched clients
will fail rather than allow injection.  An actual fix requires changing the
client-side code.  While at it we have also fixed these routines to understand
about standard_conforming_strings, so that the upcoming changeover to SQL-spec
string syntax can be somewhat transparent to client code.

Since the existing API of PQescapeString and PQescapeBytea provides no way to
inform them which settings are in use, these functions are now deprecated in
favor of new functions PQescapeStringConn and PQescapeByteaConn.  The new
functions take the PGconn to which the string will be sent as an additional
parameter, and look inside the connection structure to determine what to do.
So as to provide some functionality for clients using the old functions,
libpq stores the latest encoding and standard_conforming_strings values
received from the backend in static variables, and the old functions consult
these variables.  This will work reliably in clients using only one Postgres
connection at a time, or even multiple connections if they all use the same
encoding and string syntax settings; which should cover many practical
scenarios.

Clients that use homebrew escaping methods, such as PHP's addslashes()
function or even hardwired regexp substitution, will require extra effort
to fix :-(.  It is strongly recommended that such code be replaced by use of
PQescapeStringConn/PQescapeByteaConn if at all feasible.
2006-05-21 20:19:23 +00:00
Tom Lane
b3eb4ea5d8 Add a new GUC parameter backslash_quote, which determines whether the SQL
parser will allow "\'" to be used to represent a literal quote mark.  The
"\'" representation has been deprecated for some time in favor of the
SQL-standard representation "''" (two single quote marks), but it has been
used often enough that just disallowing it immediately won't do.  Hence
backslash_quote allows the settings "on", "off", and "safe_encoding",
the last meaning to allow "\'" only if client_encoding is a valid server
encoding.  That is now the default, and the reason is that in encodings
such as SJIS that allow 0x5c (ASCII backslash) to be the last byte of a
multibyte character, accepting "\'" allows SQL-injection attacks as per
CVE-2006-2314 (further details will be published after release).  The
"on" setting is available for backward compatibility, but it must not be
used with clients that are exposed to untrusted input.

Thanks to Akio Ishida and Yasuo Ohgaki for identifying this security issue.
2006-05-21 20:10:42 +00:00
Alvaro Herrera
1f219cf433 Add last-vacuum/analyze-time columns to the stats collector, both manual and
issued by autovacuum.  Add accessor functions to them, and use those in the
pg_stat_*_tables system views.

Catalog version bumped due to changes in the pgstat views and the pgstat file.

Patch from Larry Rosenman, minor improvements by me.
2006-05-19 19:08:27 +00:00
Bruce Momjian
411a64ba73 Stamp 8.1.4, except configure/configure.in. 2006-05-19 03:55:40 +00:00
Bruce Momjian
ba10a1f3e4 Update for version 8.1.4. 2006-05-19 03:52:41 +00:00
Bruce Momjian
7540476dc6 Update release notes for 8.1.4. 2006-05-19 03:49:05 +00:00
Bruce Momjian
45ec63cb24 Change <type>string</> to <parameter>string</>. 2006-05-18 03:18:24 +00:00
Bruce Momjian
e6bd9bf7ff Add:
>
> * Add a GUC to control whether BEGIN inside a transcation should abort
>   the transaction.
2006-05-18 02:32:15 +00:00
Bruce Momjian
d6a35c8125 Make function param_name/type documentation more consistent. 2006-05-18 00:50:08 +00:00
Bruce Momjian
18627c5531 Allow the .pgpass hostname to match the default socket directory, as
well as a blank pghost.
2006-05-17 21:50:54 +00:00
Bruce Momjian
fb4c180da0 Update pg_dump vesion wording. 2006-05-13 17:10:35 +00:00
Bruce Momjian
4b7b1df8a6 Mention version portability of pg_dump. 2006-05-13 16:19:54 +00:00
Tom Lane
637028afe1 Code review for standard_conforming_strings patch. Fix it so it does not
throw warnings for 100%-SQL-standard constructs, clean up some minor
infelicities, try to un-break ecpg to the best of my ability.  (It's not clear
how ecpg is going to find out the setting of standard_conforming_strings,
though.)  I think pg_dump still needs work, too.
2006-05-11 19:15:36 +00:00
Tom Lane
3fdeb189e9 Clean up code associated with updating pg_class statistics columns
(relpages/reltuples).  To do this, create formal support in heapam.c for
"overwrite" tuple updates (including xlog replay capability) and use that
instead of the ad-hoc overwrites we'd been using in VACUUM and CREATE INDEX.
Take the responsibility for updating stats during CREATE INDEX out of the
individual index AMs, and do it where it belongs, in catalog/index.c.  Aside
from being more modular, this avoids having to update the same tuple twice in
some paths through CREATE INDEX.  It's probably not measurably faster, but
for sure it's a lot cleaner than before.
2006-05-10 23:18:39 +00:00
Bruce Momjian
12049d343e Revert documentation mention of array dimension checking, in next paragraph. 2006-05-09 23:12:54 +00:00
Bruce Momjian
0c9fab6c3b Mention array dimmensions are not enforced either. 2006-05-09 16:31:23 +00:00
Bruce Momjian
5ff2838c57 Add description:
* %Disallow changing DEFAULT expression of a SERIAL column?

>
>   This should be done only if the existing SERIAL problems cannot be
>   fixed.
>
2006-05-06 23:35:32 +00:00
Bruce Momjian
d9d2d91544 Recommend more clearly custom pg_dump format over tar, buy showing
custom format examples first.
2006-05-06 23:25:37 +00:00
Bruce Momjian
bcf860b7f3 Document SSL CRL usage by libpq. 2006-05-06 16:25:11 +00:00
Bruce Momjian
ee1b63a48b Update standards URL.
Robert Treat
2006-05-05 09:51:53 +00:00
Bruce Momjian
9bd5181068 Add/ cleanup:
< * %Disallow changing default expression of a SERIAL column?
> * %Disallow changing DEFAULT expression of a SERIAL column?
472a473,476
> * Add DEFAULT .. AS OWNER so permission checks are done as the table
>   owner
>
>   This would be useful for SERIAL nextval() calls and CHECK constraints.
2006-05-05 09:35:58 +00:00
Tom Lane
52667d56a3 Rethink the locking mechanisms used for CREATE/DROP/RENAME DATABASE.
The former approach used ExclusiveLock on pg_database, which being a
cluster-wide lock meant only one of these operations could proceed at
a time; worse, it also blocked all incoming connections in ReverifyMyDatabase.
Now that we have LockSharedObject(), we can use locks of different types
applied to databases considered as objects.  This allows much more
flexible management of the interlocking: two CREATE DATABASEs need not
block each other, and need not block connections except to the template
database being used.  Similarly DROP DATABASE doesn't block unrelated
operations.  The locking used in flatfiles.c is also much narrower in
scope than before.  Per recent proposal.
2006-05-04 16:07:29 +00:00
Tom Lane
e57345975c Clean up API for ambulkdelete/amvacuumcleanup as per today's discussion.
This formulation requires every AM to provide amvacuumcleanup, unlike before,
but it's surely a whole lot cleaner.  Also, add an 'amstorage' column to
pg_am so that we can get rid of hardwired knowledge in DefineOpClass().
2006-05-02 22:25:10 +00:00
Tom Lane
d3171dd64b Fix broken markup. 2006-05-02 18:07:51 +00:00
Tom Lane
82a2881c5b Code review for GRANT CONNECT patch. Spell the privilege as CONNECT not
CONNECTION, fix a number of places that were missed (eg pg_dump support),
avoid executing an extra search of pg_database during startup.
2006-04-30 21:15:33 +00:00
Tom Lane
986085a7f0 Improve the representation of FOR UPDATE/FOR SHARE so that we can
support both FOR UPDATE and FOR SHARE in one command, as well as both
NOWAIT and normal WAIT behavior.  The more general code is actually
simpler and cleaner.
2006-04-30 18:30:40 +00:00
Bruce Momjian
931bfc9664 Done:
> 	o -Allow per-database permissions to be set via GRANT
2006-04-30 02:10:41 +00:00
Bruce Momjian
4899aaf2d5 Add GRANT CONNECTION ON DATABASE, to be used in addition to pg_hba.conf.
Gevik Babakhani
2006-04-30 02:09:07 +00:00
Bruce Momjian
87db3ad078 Add question mark:
> * %Disallow changing default expression of a SERIAL column?
2006-04-30 01:45:26 +00:00
Bruce Momjian
782df58a1c Revert patch pending more discussion:
Disallow changing DEFAULT expression of a SERIAL column.
2006-04-30 01:08:07 +00:00
Bruce Momjian
c6ef426f67 Done:
> * -Disallow changing default expression of a SERIAL column
2006-04-29 16:44:31 +00:00
Bruce Momjian
87f00a4694 Add to item log_min_error_messages item:
>   Another idea is to allow separate configuration files for each module,
>   or allow arbitrary SET commands to be passed to them.
2006-04-27 15:56:17 +00:00
Bruce Momjian
80aa37a72f Add:
> * Invalidate prepared queries, like INSERT, when the table definition
>   is altered
2006-04-27 02:41:36 +00:00
Bruce Momjian
e747f4935a Add support for SSL Certificate Revocation List (CRL) files, root.crl.
Libor Hoho?
2006-04-27 02:29:14 +00:00
Bruce Momjian
02eb8f4f5c Use schema search path to find the first matching contraint name for SET
CONSTRAINT, rather than affecting all constraints in all schemas (which
is what we used to do).  Also allow schema specifications.

Kris Jurka
2006-04-27 00:33:46 +00:00
Bruce Momjian
0df32e3cbe Allow pg_resetxlog -f to reset pg_control counters using xlog
information, and add a -r option to reset pg_control without affecting
xlog.

yuanjia lee
2006-04-26 02:17:15 +00:00
Bruce Momjian
3289a932a9 Done:
* -Allow WAL information to recover corrupted pg_controldata
2006-04-26 02:15:20 +00:00
Bruce Momjian
89083876c9 Adjust SGML spacing. 2006-04-25 21:02:33 +00:00
Tom Lane
7e2d5594d7 Back out the rest of the RESET CONNECTION patch. 2006-04-25 18:58:37 +00:00
Bruce Momjian
ff49a020ca Remove equals sign from environment variable with not defaults for
configure.
2006-04-25 15:19:16 +00:00
Bruce Momjian
1bd8f4f54f Make configure environment variable options without defaults not have an
equals sign.
2006-04-25 15:17:04 +00:00
Bruce Momjian
67248f7290 Add documentation about configure environment variabbles used.
David Wheeler
2006-04-25 15:14:16 +00:00
Bruce Momjian
706cbfd632 Call SET varaiables "configuration_parameter"s in the documentation. 2006-04-25 14:56:04 +00:00
Bruce Momjian
e72fd16fa8 Change "parameter" to "varname" in the alter role and alter user
documentation sections.  Also update SET/RESET to be consistent.

Nicolas Barbier
2006-04-25 14:47:29 +00:00
Bruce Momjian
5fd7df43e2 I now see we support RESET SESSION AUTHORIZATION, so it seems we have to
use RESET CONNECTION:

< * Add RESET SESSION command to reset all session state
> * Add RESET CONNECTION command to reset all session state
447c447
<   notify the protocol when a RESET SESSION command is used.
>   notify the protocol when a RESET CONNECTION command is used.
2006-04-25 14:33:41 +00:00
Bruce Momjian
2b70093548 RESET SESSION is more precise:
< * Add RESET CONNECTION command to reset all session state
> * Add RESET SESSION command to reset all session state
447c447
<   notify the protocol when a RESET CONNECTION command is used.
>   notify the protocol when a RESET SESSION command is used.
2006-04-25 14:31:03 +00:00
Bruce Momjian
59d591e79a Back out RESET CONNECTION until there is more discussion. 2006-04-25 14:11:59 +00:00
Bruce Momjian
6378fdd971 Add RESET CONNECTION, to reset all aspects of a session.
Hans-J?rgen Sch?nig
2006-04-25 14:09:21 +00:00
Bruce Momjian
11fbdf2f25 Update inheritance constraint items:
< 	o %Prevent child tables from altering or dropping constraints
<           like CHECK that were inherited from the parent table
< 	  like CHECK that are inherited by child tables
<
< 	  Dropping constraints should only be possible with CASCADE.
<
> 	  like CHECK that are inherited by child tables unless CASCADE
> 	  is used
> 	o %Prevent child tables from altering or dropping constraints
>           like CHECK that were inherited from the parent table
2006-04-25 02:58:34 +00:00
Bruce Momjian
b532c86f2e Done:
> * -Add transaction_timestamp(), statement_timestamp(), clock_timestamp()
2006-04-25 00:26:53 +00:00
Bruce Momjian
e6004f0151 Add statement_timestamp(), clock_timestamp(), and
transaction_timestamp() (just like now()).

Also update statement_timeout() to mention it is statement arrival time
that is measured.

Catalog version updated.
2006-04-25 00:25:22 +00:00
Bruce Momjian
f04080d73b Word wrap entry 2006-04-25 00:06:23 +00:00
Bruce Momjian
c880f9aeb2 Update SQL-standard INTERVAL item:
o Support ISO INTERVAL syntax if units cannot be determined from
          the string, and are supplied after the string

          The SQL standard states that the units after the string specify
          the units of the string, e.g. INTERVAL '2' MINUTE should
          return '00:02:00'.  The current behavior has the units
          restrict the interval value to the specified unit or unit range,
          INTERVAL '70' SECOND returns '00:00:10'.

          For syntax that isn't uniquely ISO or PG syntax, like '1' or
          '1:30', treat as ISO if there is a range specification clause,
          and as PG if there no clause is present, e.g. interpret
          '1:30' MINUTE TO SECOND as '1 minute 30 seconds', and
          interpret '1:30' as '1 hour, 30 minutes'.

          This makes common cases like SELECT INTERVAL '1' MONTH
          SQL-standard results.  The SQL standard supports a limited
          number of unit combinations and doesn't support unit names
          in the string.  The PostgreSQL syntax is more flexible in
          the range of units supported, e.g. PostgreSQL supports
          '1 year 1 hour', while the SQL standard does not.
2006-04-25 00:01:44 +00:00
Bruce Momjian
02b59c6ebd Done;
o -Add support for day-time syntax, INTERVAL '1 2:03:04'DAY TO
      SECOND
2006-04-24 22:59:46 +00:00
Bruce Momjian
ec9d01e8e2 Done:
o -Add support for day-time syntax, INTERVAL '1 2:03:04' DAY TO
        SECOND
2006-04-24 22:56:11 +00:00
Bruce Momjian
109d0aeb11 Add:
< * -Eventually enable escape_string_warning and standard_conforming_strings
> * -Enable escape_string_warning and standard_conforming_strings
> * Make standard_conforming_strings the default in 8.3?
>
>   When this is done, backslash-quote should be prohibited in non-E''
>   strings because of possible confusion over how such strings treat
>   backslashes.  Basically, '' is always safe for a literal single
>   quote, while \' might or might not be based on the backslash
>   handling rules.
>
2006-04-23 04:00:06 +00:00
Bruce Momjian
efe3de07e9 Removes or minimizes some documentation mentions of backward
compatibility for release 7.2 and earlier.  I have not altered any
mentions of release 7.3 or later.  The release notes were not modified,
so the changes are still documented, just not in the main docs.
2006-04-23 03:39:52 +00:00
Bruce Momjian
044c3b4615 Update:
< 	o Fix psql's backslash commands more consistent
> 	o Fix psql's \d commands more consistent
2006-04-22 18:18:24 +00:00
Bruce Momjian
11c4152919 Update:
< 	o Fix psql's \dn for various schema combinations (Neil)
> 	o Fix psql's backslash commands more consistent
625a626
> 	  http://archives.postgresql.org/pgsql-hackers/2004-11/msg00014.php
2006-04-22 18:17:57 +00:00
Bruce Momjian
0a66e482a7 Update:
o Fix psql's \dn for various schema combinations (Neil)

          http://archives.postgresql.org/pgsql-hackers/2004-11/msg00014.php
2006-04-22 16:06:44 +00:00
Bruce Momjian
9d483b7bcf Suggest Win32 users user E'' strings and double backslashes used for
patch separators in COPY.

Backpatch doubleing backslashes suggestion to 8.1.
2006-04-22 03:03:11 +00:00
Bruce Momjian
1b4504ced2 Remove from TODO ability to edit pg_hba.conf, but add GRANT connection
permission item:

< 	o %Allow pg_hba.conf settings to be controlled via SQL
> 	o %Allow per-database permissions to be set via GRANT
< 	  This would add a function to load the SQL table from
<           pg_hba.conf, and one to writes its contents to the flat file.
< 	  The table should have a line number that is a float so rows
< 	  can be inserted between existing rows, e.g. row 2.5 goes
< 	  between row 2 and row 3.
> 	  Allow database connection checks based on GRANT rules in
> 	  addition to the existing access checks in pg_hba.conf.
2006-04-21 20:46:22 +00:00
Bruce Momjian
19fe9a904a Add detail:
< 	  encoding.
> 	  encoding.  This requires using mblen() to determine if the
> 	  backslash is inside or outside a multi-byte sequence.
2006-04-19 22:35:42 +00:00
Bruce Momjian
ce8c6aa76c Add:
>
> 	o Add new version of PQescapeString() that doesn't double backslashes
> 	  that are part of a client-only multibyte sequence
>
> 	  Single-quote is not a valid byte in any supported client-only
> 	  encoding.
>
> 	o Add new version of PQescapeString() that doesn't double
> 	  backslashes when standard_conforming_strings is true and
> 	  non-E strings are used
2006-04-19 21:50:19 +00:00
Bruce Momjian
b3e4a84ba5 Add:
> 	  o Add reporting of the current WAL file, perhaps as part of
> 	    partial log file archiving
2006-04-19 02:46:32 +00:00
Bruce Momjian
af86aa8443 Remove kill mention in install docs, was for pre-7.0 releases. 2006-04-18 22:52:07 +00:00
Bruce Momjian
f57b2f09a8 Mention "syntax" error as not logged by log_statement.
Backpatch.
2006-04-18 12:41:15 +00:00
Bruce Momjian
5bd59b9c0a Document that errors are not output by log_statement (was they were in
8.0), and add as suggestion to use log_min_error_statement for this
purpose.  I also fixed the code so the first EXECUTE has it's prepare,
rather than the last which is what was in the current code.  Also remove
"protocol" prefix for SQL EXECUTE output because it is not accurate.

Backpatch to 8.1.X.
2006-04-18 00:52:23 +00:00
Bruce Momjian
8e7aaeb62e Done:
< 	o Update pg_dump and psql to use the new COPY libpq API (Christopher)
> 	o -Update pg_dump and psql to use the new COPY libpq API (Christopher)
2006-04-17 03:18:07 +00:00
Bruce Momjian
922f7536c9 Remove:
< 	o %Have pg_dump use multi-statement transactions for INSERT dumps
2006-04-15 18:13:11 +00:00
Bruce Momjian
598dfee552 Document that pg_dump -d/-D prevents invalid data from canceling the
entire table load.
2006-04-15 18:11:16 +00:00
Tom Lane
3651a3e6fb Support the syntax
CREATE AGGREGATE aggname (input_type) (parameter_list)
along with the old syntax where the input type was named in the parameter
list.  This fits more naturally with the way that the aggregate is identified
in DROP AGGREGATE and other utility commands; furthermore it has a natural
extension to handle multiple-input aggregates, where the basetype-parameter
method would get ugly.  In fact, this commit fixes the grammar and all the
utility commands to support multiple-input aggregates; but DefineAggregate
rejects it because the executor isn't fixed yet.
I didn't do anything about treating agg(*) as a zero-input aggregate instead
of artificially making it a one-input aggregate, but that should be considered
in combination with supporting multi-input aggregates.
2006-04-15 17:45:46 +00:00
Bruce Momjian
ebd5257d49 Done:
> * -Re-enable the GUC full_page_writes in 8.2 when reliability issues have
2006-04-14 22:26:22 +00:00
Bruce Momjian
dcdf738abb Fix HTML markup. 2006-04-13 12:20:36 +00:00
Bruce Momjian
2aca4e84af Update tutorial URL's. 2006-04-13 12:14:41 +00:00
Bruce Momjian
452b2fc6e4 Update URL for SQL tutorial. 2006-04-13 12:09:08 +00:00
Bruce Momjian
98c6c966bc Update AIX FAQ:
At any rate, here's a revision to CVS HEAD to reflect some changes by
myself and by Seneca Cunningham for the AIX FAQ.  It touches on the
following issues:

1.  memcpy pointer patch for dynahash.c

2.  AIX memory management, which can, for 32 bit cases, bite people
    quite unexpectedly...

Chris Browne
2006-04-13 11:41:02 +00:00
Bruce Momjian
9204980aa1 Update:
<   multiple I/O channels simultaneously.
>   multiple I/O channels simultaneously.  One idea is to create a
>   background reader that can pre-fetch sequential and index scan
>   pages needed by other backends.  This could be expanded to allow
>   concurrent reads from multiple devices in a partitioned table.
2006-04-13 10:50:13 +00:00
Bruce Momjian
6ae559daf8 Add, "How do I submit a patch" FAQ item. 2006-04-12 20:03:54 +00:00
Bruce Momjian
4f6039de6e Add second sentence:
<P>The maximum table size, row size, and maximum number of columns
    can be quadrupled by increasing the default block size to 32k.  The
    maximum table size can also be increased using table partitioning.</P>
2006-04-12 18:56:16 +00:00
Bruce Momjian
031e3c8b84 Updated Japanese FAQ, version 2.
J.Kuwamura
2006-04-11 21:21:52 +00:00
Bruce Momjian
f54a070268 Update Japanese FAQ, backpatch.
J.Kuwamura
2006-04-11 21:18:03 +00:00
Bruce Momjian
ef5fde0881 Oops, sysctl, not sysconf, for FreeBSD. 2006-04-11 21:04:52 +00:00
Bruce Momjian
7626181bf7 More FreeBSD jail wording improvements. 2006-04-11 19:45:33 +00:00
Bruce Momjian
cc7b6c75e3 Update jail wording to mention non-root users. 2006-04-11 19:42:27 +00:00
Bruce Momjian
ba60acf17e Add documentation about running postmasters in FreeBSD jails (use
separate users).
2006-04-11 19:26:42 +00:00
Bruce Momjian
fac2ba5da3 There is updated Russian translation of the FAQ in the attachment.
Victor Vislobokov
2006-04-11 15:48:11 +00:00
Bruce Momjian
3f040b1ff8 Done, per Tom:
< * Allow user-defined functions retuning a domain value to enforce domain
> * -Allow user-defined functions retuning a domain value to enforce domain
2006-04-11 02:08:19 +00:00
Bruce Momjian
857b0cd127 Add:
* Re-enable the GUC full_page_writes in 8.2 when reliability issues have
  been addressed
2006-04-10 23:15:46 +00:00
Bruce Momjian
e7101b6b82 Add:
> * Allow log_min_messages to be specified on a per-module basis
>
>   This would allow administrators to see more detailed information from
>   specific sections of the backend, e.g. checkpoints, autovacuum, etc.
2006-04-10 21:06:23 +00:00
Bruce Momjian
fb2b198609 Add:
< * Experiment with multi-threaded backend [thread]
> * Experiment with multi-threaded backend for backend creation [thread]
1003a1004,1008
>
> * Experiment with multi-threaded backend better resource utilization
>
>   This would allow a single query to make use of multiple CPU's or
>   multiple I/O channels simultaneously.
2006-04-09 20:24:30 +00:00
Bruce Momjian
83843a4439 Update:
> * Allow the creation of indexes with mixed ascending/descending
>   specifiers
>
>   This is possible now by creating an operator class with reversed sort
>   operators.  One complexity is that NULLs would then appear at the start
>   of the result set, and this might affect certain sort types, like
>   merge join.
>
2006-04-09 03:27:06 +00:00
Peter Eisentraut
0bc2a8ca65 Build src/test/regress/README during tarball making like the other
generated text files.  Fix build of that file, too.

Put the text files in the right place during make dist, so there are no
extra manual steps required anymore.
2006-04-06 18:54:37 +00:00
Bruce Momjian
9e0eff05ca Update AIX FAQ to show readline options more clearly.
Backpatch FAQ's to 8.1.X.
2006-04-05 22:55:05 +00:00