Commit Graph

7070 Commits

Author SHA1 Message Date
Bruce Momjian 3638eff501 Add URLs
< * Allow encoding on a per-column basis
> * Allow encoding on a per-column basis optionally using the ICU library:
>   http://archives.postgresql.org/pgsql-patches/2005-08/msg00309.php
>   http://archives.postgresql.org/pgsql-patches/2006-03/msg00233.php
2006-08-11 15:53:39 +00:00
Bruce Momjian 64214a2f01 Add URL for typmod:
>   http://archives.postgresql.org/pgsql-hackers/2006-08/msg00149.php
2006-08-09 18:10:34 +00:00
Bruce Momjian b1d78fc9c7 Add URL:
> 	  http://archives.postgresql.org/pgsql-performance/2004-08/msg00349.php
2006-08-09 16:42:19 +00:00
Bruce Momjian c7fa4aa3e7 Add TODO items we don't want (Idea from Josh Berkus)
>
>
> Features We Do _Not_ Want
> =========================
>
> * All backends running as threads in a single process (not want)
>
>   This eliminates the process protection we get from the current setup.
>   Thread creation is usually the same overhead as process creation on
>   modern systems, so it seems unwise to use a pure threaded model.
>
> * Optimizer hints (not want)
>
>   Optimizer hints are used to work around problems in the optimizer.  We
>   would rather have the problems reported and fixed.
>   http://archives.postgresql.org/pgsql-hackers/2006-08/msg00506.php
2006-08-09 16:35:51 +00:00
Bruce Momjian 4f81337d9d Update packages:
< 		  A package would be a schema with public/private variables,
> 		  A package would be a schema with session-local variables,
> 		  http://archives.postgresql.org/pgsql-hackers/2006-08/msg00384.php
2006-08-09 14:55:39 +00:00
Bruce Momjian baefb735ff Update packages description:
< 		  A package would be a schema with its own variables,
< 		  private functions, and initialization functions.  It
> 		  A package would be a schema with public/private variables,
> 		  public/private functions, and initialization functions.  It
2006-08-09 02:48:10 +00:00
Bruce Momjian bed7d5f635 Update packages:
< 		  private functions, and initialization functions
> 		  private functions, and initialization functions.  It
> 		  is also possible to implement these capabilities
> 		  in all schemas and not use a separate "packages"
> 		  syntax at all.
2006-08-08 22:51:37 +00:00
Bruce Momjian 7f139b813c Update:
< 	o COPY FROM STDIN not implemented because not useful?
> 	o Implement COPY FROM STDIN
2006-08-08 22:39:09 +00:00
Tom Lane b09bfcaa57 Add a feature for automatic initialization and finalization of dynamically
loaded libraries: call functions _PG_init() and _PG_fini() if the library
defines such symbols.  Hence we no longer need to specify an initialization
function in preload_libraries: we can assume that the library used the
_PG_init() convention, instead.  This removes one source of pilot error
in use of preloaded libraries.  Original patch by Ralf Engelschall,
preload_libraries changes by me.
2006-08-08 19:15:09 +00:00
Bruce Momjian e00664da48 Reverse order of performance guides so powerpostgresql is first. 2006-08-08 19:05:24 +00:00
Bruce Momjian cbf0468d66 Add detail on packages:
>
> 		  A package would be a schema with its own variables,
> 		  private functions, and initialization functions
>
2006-08-08 19:03:59 +00:00
Bruce Momjian 46d759cfff Add package item:
< 		o Add Oracle-style packages
> 		o Add Oracle-style packages  (Pavel)
> * Pavel is Pavel Stehule <pavel.stehule@hotmail.com>
2006-08-08 19:02:13 +00:00
Bruce Momjian 2392cdb795 Done:
< 	  o Automatically force archiving of partially-filled WAL files when
> 	  o -Automatically force archiving of partially-filled WAL files when
<
< 	    Doing this will allow administrators to know more easily when
< 	    the archive contains all the files needed for point-in-time
< 	    recovery.
< 	    http://archives.postgresql.org/pgsql-patches/2005-04/msg00121.php
<
< 	  o Add reporting of the current WAL file and offset, perhaps as
> 	  o -Add reporting of the current WAL file and offset, perhaps as
<
< 	    The offset allows parts of a WAL file to be archived using
< 	    an external program.
<
2006-08-08 17:40:02 +00:00
Michael Meskes 75b5630726 Clarified COPY FROM STDIN in ecpg todo 2006-08-08 11:52:51 +00:00
Bruce Momjian d42cb5d880 Done:
< * Allow protocol-level BIND parameter values to be logged
<
<   http://archives.postgresql.org/pgsql-hackers/2006-02/msg00165.php
> * -Allow protocol-level BIND parameter values to be logged, if text mode
2006-08-08 01:24:36 +00:00
Bruce Momjian 3716f90c39 For protocol-level prepare/bind/execute:
o  print user name for all
	o  print portal name if defined for all
	o  print query for all
	o  reduce log_statement header to single keyword
	o  print bind parameters as DETAIL if text mode
2006-08-08 01:23:15 +00:00
Tom Lane 704ddaaa09 Add support for forcing a switch to a new xlog file; cause such a switch
to happen automatically during pg_stop_backup().  Add some functions for
interrogating the current xlog insertion point and for easily extracting
WAL filenames from the hex WAL locations displayed by pg_stop_backup
and friends.  Simon Riggs with some editorialization by Tom Lane.
2006-08-06 03:53:44 +00:00
Bruce Momjian a83437fcfd Slight wording improvement in documentation. 2006-08-04 04:07:38 +00:00
Bruce Momjian 49954b4526 Add URL for terminate backend test:
>   http://archives.postgresql.org/pgsql-hackers/2006-08/msg00174.php
2006-08-04 01:24:49 +00:00
Tom Lane 7946f77220 Cause ALTER TABLE to perform ALTER COLUMN DROP DEFAULT operations during
the DROP pass rather than the ADD_CONSTR pass.  On examining the code I
think this was just an oversight rather than intentional, and it seems
to satisfy the principle of least surprise better than the alternative
solution that was discussed.  Add an example to the ref page showing how
to do ALTER TYPE and update the default in one command.  Per gripe from
Markus Bertheau that that wasn't possible.
2006-08-03 20:57:06 +00:00
Tom Lane 9649b182a1 Fix documentation error: GRANT/REVOKE for roles only accept role names
as grantees, not PUBLIC ... and you can't say GROUP either.  Noted by
Brian Hurt.
2006-08-02 16:29:49 +00:00
Bruce Momjian 97eefd6996 Update:
< 	o Add COPY TO STDIN / STDOUT handling
> 	o Add COPY TO STDIN handling
2006-08-02 13:36:45 +00:00
Bruce Momjian f05fc17cf4 Add:
> 	o In rules, allow VALUES() to contain a mixture of 'old' and 'new'
> 	  references
2006-08-02 13:29:54 +00:00
Bruce Momjian b5a5524342 Done:
o -Allow INSERT INTO tab (col1, ..) VALUES (val1, ..), (val2, ..)
2006-08-02 03:11:54 +00:00
Alvaro Herrera 5f69890e15 Editorialize a bit on the recent patch, reverting to the original versions
of the text where appropiate.
2006-08-01 19:17:18 +00:00
Bruce Momjian c61607bd52 Add pg_dump -X no-data-for-failed-tables option to suppress loading data
if table creation failed (the table already exists).

Martin Pitt
2006-08-01 18:21:44 +00:00
Bruce Momjian 6d0f5ea574 Done:
< 	o %Allow pg_dump to use multiple -t and -n switches  [pg_dump]
<
< 	  http://archives.postgresql.org/pgsql-patches/2006-01/msg00190.php
<
> 	o -Allow pg_dump to use multiple -t and -n switches, exclusion
> 	   ability, and regular expression object matching
2006-08-01 18:07:36 +00:00
Bruce Momjian aa88497a3a Remove TODO.detail/pg_dump. 2006-08-01 18:06:27 +00:00
Bruce Momjian 8977b68a42 Allow multiple -n (schema) and -t (table) pg_dump options, and add -T
and -N options to exclude objects.  Also support regular expressions for
option object names.

Greg Sabino Mullane
2006-08-01 18:05:04 +00:00
Bruce Momjian 8d5f3c8d89 Improvements to Maintenance and External Projects documentation.
Joshua D. Drake
Robert Treat
2006-08-01 00:09:06 +00:00
Bruce Momjian ffb62be07a Add:
> * Consider compressed annealing to search for query plans
>
>   This might replace GEQO, http://sixdemonbag.org/Djinni.
2006-07-31 23:04:13 +00:00
Tom Lane 09d3670df3 Change the relation_open protocol so that we obtain lock on a relation
(table or index) before trying to open its relcache entry.  This fixes
race conditions in which someone else commits a change to the relation's
catalog entries while we are in process of doing relcache load.  Problems
of that ilk have been reported sporadically for years, but it was not
really practical to fix until recently --- for instance, the recent
addition of WAL-log support for in-place updates helped.

Along the way, remove pg_am.amconcurrent: all AMs are now expected to support
concurrent update.
2006-07-31 20:09:10 +00:00
Tom Lane 6e38e34d64 Change the bootstrap sequence so that toast tables for system catalogs are
created in the bootstrap phase proper, rather than added after-the-fact
by initdb.  This is cleaner than before because it allows us to retire the
undocumented ALTER TABLE ... CREATE TOAST TABLE command, but the real reason
I'm doing it is so that toast tables of shared catalogs will now have
predetermined OIDs.  This will allow a reasonably clean solution to the
problem of locking tables before we load their relcache entries, to appear
in a forthcoming patch.
2006-07-31 01:16:38 +00:00
Alvaro Herrera 638860ce35 Fix confusion between COPY FROM and COPY TO, per Gavin Sharry and Arul Shaji. 2006-07-31 01:10:56 +00:00
Bruce Momjian d6603791ea Add:
> * Consider detoasting keys before sorting
2006-07-30 01:48:40 +00:00
Bruce Momjian 6dd2b7728b Add entry:
> * Add column to pg_stat_activity that shows the progress of long-running
>   commands like CREATE INDEX and VACUUM
2006-07-29 18:08:36 +00:00
Bruce Momjian d06f44a811 Add:
> * Add support for SQL-standard GENERATED/IDENTITY columns
>
>   http://archives.postgresql.org/pgsql-hackers/2006-07/msg00543.php
2006-07-29 15:56:32 +00:00
Bruce Momjian 51175d1d00 Remove update TODO.detail item. 2006-07-28 19:28:08 +00:00
Bruce Momjian e1992ebaf2 Updates per Tom:
> * Allow DISTINCT to work in multiple-argument aggregate calls
< 	o Allow UPDATE to handle complex aggregates [update]?
2006-07-28 19:00:45 +00:00
Tom Lane 1249cf8f38 SQL2003-standard statistical aggregates, by Sergey Koposov. I've added only
the float8 versions of the aggregates, which is all that the standard requires.
Sergey's original patch also provided versions using numeric arithmetic,
but given the size and slowness of the code, I doubt we ought to include
those in core.
2006-07-28 18:33:04 +00:00
Tom Lane 0fd087af83 Fix table title. 2006-07-28 16:21:57 +00:00
Tom Lane b8cd6b4f25 Make it clearer that not every Postgres character set can be used as a
server-side character set.
2006-07-28 15:33:17 +00:00
Bruce Momjian 4917564f1b Update Tatsuo:
< * Tatsuo is Tatsuo Ishii <t-ishii@sra.co.jp> of Software Research Assoc.
> * Tatsuo is Tatsuo Ishii <ishii@sraoss.co.jp> of SRA OSS, Inc. Japan
2006-07-28 12:24:07 +00:00
Bruce Momjian 67cdc61369 Add URL for UPDATE/SET for multiple values. 2006-07-27 22:05:49 +00:00
Bruce Momjian 8de82ede51 Add for UPDATE SET for multiple values:
>
>           A subselect can also be used as the value source.
2006-07-27 22:01:34 +00:00
Tom Lane 108fe47301 Aggregate functions now support multiple input arguments. I also took
the opportunity to treat COUNT(*) as a zero-argument aggregate instead
of the old hack that equated it to COUNT(1); this is materially cleaner
(no more weird ANYOID cases) and ought to be at least a tiny bit faster.
Original patch by Sergey Koposov; review, documentation, simple regression
tests, pg_dump and psql support by moi.
2006-07-27 19:52:07 +00:00
Bruce Momjian 43c79378c8 Allow LDAP lookups from pg_service.conf.
Albe Laurenz
2006-07-27 13:20:24 +00:00
Peter Eisentraut b517e65348 Allow units to be specified with configuration settings. 2006-07-27 08:30:41 +00:00
Bruce Momjian 5ffa0bb47a Reorder items:
< 	  o Allow point-in-time recovery to archive partially filled
< 	    write-ahead logs? [pitr]
> 	  o Add command to archive partially filled write-ahead logs? [pitr]
< 	    of a disk failure. This could be triggered by a user command or
< 	    a timer.
> 	    of a disk failure.
< 	    recovery.  A function call to do this would also be useful.
> 	    recovery.
> 	  o Add reporting of the current WAL file and offset, perhaps as
> 	    part of partial log file archiving
>
> 	    The offset allows parts of a WAL file to be archived using
> 	    an external program.
>
< 	  o Add reporting of the current WAL file and offset, perhaps as
< 	    part of partial log file archiving
<
< 	    The offset allows parts of a WAL file to be archived using
< 	    an external program.
2006-07-26 17:23:02 +00:00
Peter Eisentraut 79bc99a467 Convert effective_cache_size to an integer, for better integration with
upcoming units feature.
2006-07-26 11:35:56 +00:00
Bruce Momjian 88b39634cd Done:
> * -Change LIMIT/OFFSET and FETCH/MOVE to use int8
2006-07-26 00:35:01 +00:00
Bruce Momjian edd49fcf69 Add reason for WAL offset reporting:
>
> 	    The offset allows parts of a WAL file to be archived using
> 	    an external program.
2006-07-25 16:23:42 +00:00
Bruce Momjian 8633a9cdff Add offset mention:
< 	  o Add reporting of the current WAL file, perhaps as part of
< 	    partial log file archiving
> 	  o Add reporting of the current WAL file and offset, perhaps as
> 	    part of partial log file archiving
2006-07-25 15:27:24 +00:00
Bruce Momjian cb6f5f1552 Update PITR:
< 	    write-ahead logs [pitr]
> 	    write-ahead logs? [pitr]
< 	    recovery.
> 	    recovery.  A function call to do this would also be useful.
2006-07-25 15:21:48 +00:00
Bruce Momjian a859695b7e Done:
> 	o -Allow customization of the known set of TZ names (generalize the
2006-07-25 04:11:24 +00:00
Tom Lane d8b5c95ca8 Remove hard-wired lists of timezone abbreviations in favor of providing
configuration files that can be altered by a DBA.  The australian_timezones
GUC setting disappears, replaced by a timezone_abbreviations setting (set this
to 'Australia' to get the effect of australian_timezones).  The list of zone
names defined by default has undergone a bit of cleanup, too.  Documentation
still needs some work --- in particular, should we fix Table B-4, or just get
rid of it?  Joachim Wieland, with some editorializing by moi.
2006-07-25 03:51:23 +00:00
Peter Eisentraut e9b4969062 DTrace support, with a small initial set of probes
by Robert Lor
2006-07-24 16:32:45 +00:00
Bruce Momjian 9652b79ae4 Update documentation on GRANT SCEMA USAGE, again. 2006-07-20 18:00:03 +00:00
Bruce Momjian a8e44f0b1b Update GRANT USAGE on schema permission description. 2006-07-19 18:42:31 +00:00
Tom Lane 60cfe25e68 Adjust spawn_process() to avoid unnecessary overhead processes: we can
just exec instead of creating a subprocess.  This reduces process usage
from four processes per parallel test to two.  I have no idea whether
a comparable optimization is possible or useful in the Windows port.
2006-07-19 17:02:59 +00:00
Tom Lane a38c85bd5d Rewrite pg_regress as a C program instead of a shell script.
This allows it to be used on Windows without installing mingw
(though you do still need 'diff'), and opens the door to future
improvements such as message localization.
Magnus Hagander and Tom Lane.
2006-07-19 02:37:00 +00:00
Bruce Momjian c5fad5f35e Done:
o -Display IN, INOUT, and OUT parameters in \df
2006-07-18 18:20:51 +00:00
Neil Conway c1e59cc5d9 Minor documentation tweak: in the tables of functions and operators,
don't include a space between the function name and the parenthesis
that begins its parameter list, for consistency.
2006-07-16 23:59:58 +00:00
Neil Conway a10fc5f254 Minor doc tweak: replace a "--" with "&mdash;". 2006-07-14 00:13:05 +00:00
Neil Conway f2a8aa0f89 Reorder the entries in the function section of the manual, to ensure they
are alphabetically ordered. I believe the tables were correctly ordered in
the past, but some of them had subsequently regressed.
2006-07-13 23:59:47 +00:00
Bruce Momjian de7e81fff4 Update schema USAGE permission description. 2006-07-12 15:37:10 +00:00
Tom Lane d29b66882a Tweak fillfactor code as per my recent proposal. Fix nbtsort.c so that
it can handle small fillfactors for ordinary-sized index entries without
failing on large ones; fix nbtinsert.c to distinguish leaf and nonleaf
pages; change the minimum fillfactor to 10% for all index types.
2006-07-11 21:05:57 +00:00
Neil Conway 2fa7a041f3 Correct the description of the pg_get_viewdef() function. Do some nearby
SGML cleanup: sort table entries alphabetically.
2006-07-11 19:11:26 +00:00
Bruce Momjian 0031f99bfa Add URL of code presentation to developers FAQ. 2006-07-11 17:02:16 +00:00
Bruce Momjian f0cd764723 Add #include code to prevent multiple inclusion. 2006-07-10 21:03:58 +00:00
Bruce Momjian ec3efa244b Update schema GRANT USAGE description. 2006-07-10 16:48:46 +00:00
Alvaro Herrera d4cef0aa2a Improve vacuum code to track minimum Xids per table instead of per database.
To this end, add a couple of columns to pg_class, relminxid and relvacuumxid,
based on which we calculate the pg_database columns after each vacuum.

We now force all databases to be vacuumed, even template ones.  A backend
noticing too old a database (meaning pg_database.datminxid is in danger of
falling behind Xid wraparound) will signal the postmaster, which in turn will
start an autovacuum iteration to process the offending database.  In principle
this is only there to cope with frozen (non-connectable) databases without
forcing users to set them to connectable, but it could force regular user
database to go through a database-wide vacuum at any time.  Maybe we should
warn users about this somehow.  Of course the real solution will be to use
autovacuum all the time ;-)

There are some additional improvements we could have in this area: for example
the vacuum code could be smarter about not updating pg_database for each table
when called by autovacuum, and do it only once the whole autovacuum iteration
is done.

I updated the system catalogs documentation, but I didn't modify the
maintenance section.  Also having some regression tests for this would be nice
but it's not really a very straightforward thing to do.

Catalog version bumped due to system catalog changes.
2006-07-10 16:20:52 +00:00
Bruce Momjian a07849df96 Test commit. 2006-07-10 15:44:31 +00:00
Bruce Momjian a77275fe3b Please find attached two patches for documentation and regression tests
for the usage of full time zone names.

Joachim Wieland
2006-07-06 01:46:38 +00:00
Tom Lane 2d0c1d3102 Documentation fixes for FILLFACTOR patch. Minor other editorialization. 2006-07-04 18:07:24 +00:00
Bruce Momjian 655787bfaf Modify:
< 	o -Add PQescapeIdentifier()
> 	o Add PQescapeIdentifierConn()
2006-07-04 13:22:41 +00:00
Bruce Momjian 3fafac3f62 Remove libpq's PQescapeIdentifier(), not safe from injection attacks. 2006-07-04 13:22:15 +00:00
Tom Lane b7b78d24f7 Code review for FILLFACTOR patch. Change WITH grammar as per earlier
discussion (including making def_arg allow reserved words), add missed
opt_definition for UNIQUE case.  Put the reloptions support code in a less
random place (I chose to make a new file access/common/reloptions.c).
Eliminate header inclusion creep.  Make the index options functions safely
user-callable (seems like client apps might like to be able to test validity
of options before trying to make an index).  Reduce overhead for normal case
with no options by allowing rd_options to be NULL.  Fix some unmaintainably
klugy code, including getting rid of Natts_pg_class_fixed at long last.
Some stylistic cleanup too, and pay attention to keeping comments in sync
with code.

Documentation still needs work, though I did fix the omissions in
catalogs.sgml and indexam.sgml.
2006-07-03 22:45:41 +00:00
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