Commit Graph

8872 Commits

Author SHA1 Message Date
Alvaro Herrera 3b9ec4682c Add "source file" and "source line" information to each GUC variable.
initdb forced due to changes in the pg_settings view.

Magnus Hagander and Alvaro Herrera.
2008-09-10 18:09:20 +00:00
Tom Lane a0b76dc662 Create a separate grantable privilege for TRUNCATE, rather than having it be
always owner-only.  The TRUNCATE privilege works identically to the DELETE
privilege so far as interactions with the rest of the system go.

Robert Haas
2008-09-08 00:47:41 +00:00
Tom Lane 8818f3793e Clarify description of pg_restore's handling of large objects. 2008-09-07 19:12:57 +00:00
Tom Lane 2cf3f6694f Add a few more details in the source-code-formatting documentation.
This isn't exhaustive but it covers some of the more common layout
mistakes I've seen in submitted patches.
2008-09-07 02:01:04 +00:00
Bruce Momjian 1cfd878643 Clarify documention workding for xip_list().
Simon Riggs
2008-09-07 01:29:36 +00:00
Tom Lane 409c144d83 Adjust psql's new \ef command to present an empty CREATE FUNCTION template
for editing if no function name is specified.  This seems a much cleaner way
to offer that functionality than the original patch had.  In passing,
de-clutter the error displays that are given for a bogus function-name
argument, and standardize on "$function$" as the default delimiter for the
function body.  (The original coding would use the shortest possible
dollar-quote delimiter, which seems to create unnecessarily high risk of
later conflicts with the user-modified function body.)
2008-09-06 20:18:08 +00:00
Tom Lane 2c863ca818 Implement a psql command "\ef" to edit the definition of a function.
In support of that, create a backend function pg_get_functiondef().
The psql command is functional but maybe a bit rough around the edges...

Abhijit Menon-Sen
2008-09-06 00:01:25 +00:00
Peter Eisentraut 11f53b1063 Code coverage testing with gcov. Documentation is in the regression test
chapter.

Author: Michelle Caisse <Michelle.Caisse@Sun.COM>
2008-09-05 12:11:18 +00:00
Alvaro Herrera 7ad60b49dc Fixup pg_dumpall adding --lock-wait-timeout, to match pg_dump.
David Gould
2008-08-29 17:28:43 +00:00
Peter Eisentraut 7c31742a07 Remove all traces that suggest that a non-Bison yacc might be supported, and
change build system to use only Bison.  Simplify build rules, make file names
uniform.  Don't build the token table header file where it is not needed.
2008-08-29 13:02:33 +00:00
Tom Lane 6741688b16 Fix pg_dump docs to acknowledge that you can use -Z with plain text output. Pointed out by Daniel Migowski. 2008-08-26 00:03:15 +00:00
Tom Lane e36716a653 Add standard boilerplate sentence about when stats_temp_directory can be changed. 2008-08-25 19:03:37 +00:00
Magnus Hagander f1e237b6b2 Unconditionally write the statsfile when SIGHUP is received, to minimize
the window during which backends have no statistics file to read.
2008-08-25 18:55:43 +00:00
Alvaro Herrera 2bb4d09cac Have man page generation work on VPATH builds too. 2008-08-25 15:34:05 +00:00
Magnus Hagander be8d6c5c34 Make stats_temp_directory PGC_SIGHUP, and document how it may cause a temporary
"outage" of the statistics views.

This requires making the stats collector respond to SIGHUP, like the other
utility processes already did.
2008-08-25 15:11:01 +00:00
Bruce Momjian 42d313f546 Update link to developer's FAQ from main FAQ. 2008-08-23 01:55:36 +00:00
Bruce Momjian 8ddb739e9d Make "log_temp_files" super-user set only, like other logging options.
Simon Riggs
2008-08-22 18:47:07 +00:00
Bruce Momjian 8875a16ee1 Mention that pg_dump does not dump ALTER DATABASE ... SET commands;
backpatch to 8.3.X. Also fix markup that had just one bullet.
2008-08-21 22:25:44 +00:00
Alvaro Herrera edb6a4c02a Update URL. 2008-08-21 20:15:31 +00:00
Bruce Momjian 3c35de85e7 Remove tools and documention for generating TODO.html. 2008-08-20 18:22:28 +00:00
Bruce Momjian a8cd6cd109 TODO now in wiki, html version removed. 2008-08-20 18:21:33 +00:00
Bruce Momjian cbcd3f9a92 New TODO list URL wiki location listed; contents truncated. 2008-08-20 18:20:46 +00:00
Bruce Momjian 7303b20964 Not done:
< 	o -Allow an existing index to be marked as a table's primary key
> 	o Allow an existing index to be marked as a table's primary key
2008-08-19 19:19:53 +00:00
Tom Lane 9650830bc8 Cause the output from debug_print_parse, debug_print_rewritten, and
debug_print_plan to appear at LOG message level, not DEBUG1 as historically.
Make debug_pretty_print default to on.  Also, cause plans generated via
EXPLAIN to be subject to debug_print_plan.  This is all to make
debug_print_plan a reasonably comfortable substitute for the former behavior
of EXPLAIN VERBOSE.
2008-08-19 18:30:04 +00:00
Bruce Momjian 2aaca8e314 TODO done:
!       o Allow an existing index to be marked as a table's primary key
2008-08-19 16:56:42 +00:00
Alvaro Herrera a3faf37f49 Fix some issues that prevent this file to be processed by scripts.
While at it, mark a couple of items completed in 8.4:
!   o -Prevent long-lived temporary tables from causing frozen-xid
      advancement starvation

! * -Improve performance of shared invalidation queue for multiple CPUs

Also remove a couple of obsolete assignments.
2008-08-19 03:08:56 +00:00
Bruce Momjian 48a9d92159 Add to TODO:
>
> * Fix all set-returning system functions so they support a wildcard
>   target list
>
>   SELECT * FROM pg_get_keywords() works but SELECT * FROM
>   pg_show_all_settings() does not.
2008-08-18 15:02:46 +00:00
Bruce Momjian 909346eff0 Update instructions on generating TODO.html. 2008-08-16 19:39:03 +00:00
Bruce Momjian 58e8f9630a Add URL for:
* Improve ability to modify views via ALTER TABLE
<
>   http://archives.postgresql.org/pgsql-hackers/2008-08/msg00300.php
2008-08-16 02:36:58 +00:00
Bruce Momjian ef270fb9d2 Add to TODO:
>
> * Prevent query cancel packets from being replayed by an attacker,
>   especially when using SSL
>
>   http://archives.postgresql.org/pgsql-hackers/2008-08/msg00345.php
>
2008-08-16 02:15:33 +00:00
Bruce Momjian b9984ade83 Update Russian FAQ.
corochoone@gmail.com
2008-08-16 01:14:49 +00:00
Bruce Momjian 10c935527e Add new SQL training web site to FAQ:
<LI><A href=
    "http://sqlzoo.net">http://sqlzoo.net</A>
    </LI>
2008-08-16 00:32:36 +00:00
Magnus Hagander 5b8eb2b4b9 Make the temporary directory for pgstat files configurable by the GUC
variable stats_temp_directory, instead of requiring the admin to
mount/symlink the pg_stat_tmp directory manually.

For now the config variable is PGC_POSTMASTER. Room for further improvment
that would allow it to be changed on-the-fly.
2008-08-15 08:37:41 +00:00
Tom Lane e006a24ad1 Implement SEMI and ANTI joins in the planner and executor. (Semijoins replace
the old JOIN_IN code, but antijoins are new functionality.)  Teach the planner
to convert appropriate EXISTS and NOT EXISTS subqueries into semi and anti
joins respectively.  Also, LEFT JOINs with suitable upper-level IS NULL
filters are recognized as being anti joins.  Unify the InClauseInfo and
OuterJoinInfo infrastructure into "SpecialJoinInfo".  With that change,
it becomes possible to associate a SpecialJoinInfo with every join attempt,
which permits some cleanup of join selectivity estimation.  That needs to be
taken much further than this patch does, but the next step is to change the
API for oprjoin selectivity functions, which seems like material for a
separate patch.  So for the moment the output size estimates for semi and
especially anti joins are quite bogus.
2008-08-14 18:48:00 +00:00
Heikki Linnakangas ef1c807c25 pg_buffercache needs to be taught about relation forks, as Greg Stark
pointed out.
2008-08-14 12:56:41 +00:00
Bruce Momjian 4ed300b7ef Add URL for:
* Improve ability to modify views via ALTER TABLE

>   http://archives.postgresql.org/pgsql-hackers/2008-07/msg01410.php
2008-08-14 01:57:42 +00:00
Peter Eisentraut 010eebf164 Remove TODO item
Allow XML to accept more liberal DOCTYPE specifications

Everything works correctly, per today's email to -general.
2008-08-12 09:55:08 +00:00
Bruce Momjian fc152e95c1 Add:
> * Add 'hostgss' pg_hba.conf option to allow GSS link-level encryption
>
>   http://archives.postgresql.org/pgsql-hackers/2008-07/msg01454.php
2008-08-12 03:48:52 +00:00
Magnus Hagander 70d756970b Move pgstat.tmp into a temporary directory under $PGDATA named pg_stat_tmp.
This allows the use of a ramdrive (either through mount or symlink) for
the temporary file that's written every half second, which should
reduce I/O.

On server shutdown/startup, the file is written to the old location in
the global directory, to preserve data across restarts.

Bump catversion since the $PGDATA directory layout changed.
2008-08-05 12:09:30 +00:00
Bruce Momjian b1fb3b2a7f Add URL to:
* Consider decreasing the I/O caused by updating tuple hint bits

>   http://archives.postgresql.org/pgsql-patches/2008-07/msg00199.php
2008-07-31 20:47:30 +00:00
Tom Lane 7bd7b2002b Require superuser privilege to create base types (but not composites, enums,
or domains).  This was already effectively required because you had to own
the I/O functions, and the I/O functions pretty much have to be written in
C since we don't let PL functions take or return cstring.  But given the
possible security consequences of a malicious type definition, it seems
prudent to enforce superuser requirement directly.  Per recent discussion.
2008-07-31 16:27:16 +00:00
Tom Lane c8572986ad Allow I/O conversion casts to be applied to or from any type that is a member
of the STRING type category, thereby opening up the mechanism for user-defined
types.  This is mainly for the benefit of citext, though; there aren't likely
to be a lot of types that are all general-purpose character strings.
Per discussion with David Wheeler.
2008-07-30 21:23:17 +00:00
Tom Lane 7df49cef72 Flip the default typispreferred setting from true to false. This affects
only type categories in which the previous coding made *every* type
preferred; so there is no change in effective behavior, because the function
resolution rules only do something different when faced with a choice
between preferred and non-preferred types in the same category.  It just
seems safer and less surprising to have CREATE TYPE default to non-preferred
status ...
2008-07-30 19:35:13 +00:00
Tom Lane bac3e83622 Replace the hard-wired type knowledge in TypeCategory() and IsPreferredType()
with system catalog lookups, as was foreseen to be necessary almost since
their creation.  Instead put the information into two new pg_type columns,
typcategory and typispreferred.  Add support for setting these when
creating a user-defined base type.

The category column is just a "char" (i.e. a poor man's enum), allowing
a crude form of user extensibility of the category list: just use an
otherwise-unused character.  This seems sufficient for foreseen uses,
but we could upgrade to having an actual category catalog someday, if
there proves to be a huge demand for custom type categories.

In this patch I have attempted to hew exactly to the behavior of the
previous hardwired logic, except for introducing new type categories for
arrays, composites, and enums.  In particular the default preferred state
for user-defined types remains TRUE.  That seems worth revisiting, but it
should be done as a separate patch from introducing the infrastructure.
Likewise, any adjustment of the standard set of categories should be done
separately.
2008-07-30 17:05:05 +00:00
Tom Lane ab9907f5e5 Add a new, improved version of citext as a contrib module.
David E. Wheeler
2008-07-29 18:31:20 +00:00
Magnus Hagander 6fe8796341 Cleanup reference to config.pl so it makes sense not only in
SGML source but in the actual web/pdf viewer...
2008-07-29 15:23:44 +00:00
Magnus Hagander f7cd591698 Document which versions of ActivePerl and ActiveTcl are required
for building on MSVC, and that the free distribution is enough
(no need for the enterprise version).

Per gripe from Martin Zaun.
2008-07-29 15:17:27 +00:00
Peter Eisentraut 509303a597 Abort if Tcl support was configured and no tcl shell was found.
This is required because the value is substituted into the pltcl_*mod
scripts.
2008-07-23 17:07:50 +00:00
Tom Lane 64d84adf03 Update link to Oleg and Teodor's GIN page.
(Extracted from fast-insert patch, since it ought to be back-patched)
2008-07-22 22:05:24 +00:00
Tom Lane 5618ece82b Code review for array_fill patch: fix inadequate check for array size overflow
and bogus documentation (dimension arrays are int[] not anyarray).  Also the
errhint() messages seem to be really errdetail(), since there is nothing
heuristic about them.  Some other trivial cosmetic improvements.
2008-07-21 04:47:00 +00:00
Tom Lane 673a30fbb2 Add a pg_dump option --lock-wait-timeout to allow failing the dump if unable
to acquire shared table locks within a specified amount of time.

David Gould
2008-07-20 18:43:30 +00:00
Bruce Momjian 8d7af89016 Properly document archive/restore command examples on Windows.
ITAGAKI Takahiro
2008-07-18 17:33:17 +00:00
Tom Lane 69a785b8bf Implement SQL-spec RETURNS TABLE syntax for functions.
(Unlike the original submission, this patch treats TABLE output parameters
as being entirely equivalent to OUT parameters -- tgl)

Pavel Stehule
2008-07-18 03:32:53 +00:00
Bruce Momjian a8fb90cf2d Add URL for:
* Implement SQL:2003 window functions

>   http://archives.postgresql.org/pgsql-hackers/2008-07/msg00232.php
2008-07-18 02:03:28 +00:00
Bruce Momjian ba38e363ac Add to TODO:
>
> * Reduce locking requirements for creating a trigger
>
>   http://archives.postgresql.org/pgsql-hackers/2008-06/msg00635.php
>
2008-07-17 01:34:33 +00:00
Bruce Momjian 9a3118d454 Add URL for:
* Implement SQL:2003 window functions
>
>   http://archives.postgresql.org/pgsql-hackers/2008-06/msg00380.php
>
2008-07-16 21:03:45 +00:00
Tom Lane 6563e9e2e8 Add a "provariadic" column to pg_proc to eliminate the remarkably expensive
need to deconstruct proargmodes for each pg_proc entry inspected by
FuncnameGetCandidates().  Fixes function lookup performance regression
caused by yesterday's variadic-functions patch.

In passing, make pg_proc.probin be NULL, rather than a dummy value '-',
in cases where it is not actually used for the particular type of function.
This should buy back some of the space cost of the extra column.
2008-07-16 16:55:24 +00:00
Bruce Momjian 9c8f74917d Add to TODO:
>
> 	o Add external tool to auto-tune some postgresql.conf parameters
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-06/msg00000.php
>
2008-07-16 15:30:19 +00:00
Tom Lane d89737d31c Support "variadic" functions, which can accept a variable number of arguments
so long as all the trailing arguments are of the same (non-array) type.
The function receives them as a single array argument (which is why they
have to all be the same type).

It might be useful to extend this facility to aggregates, but this patch
doesn't do that.

This patch imposes a noticeable slowdown on function lookup --- a follow-on
patch will fix that by adding a redundant column to pg_proc.

Pavel Stehule
2008-07-16 01:30:23 +00:00
Bruce Momjian 2c773296f8 Add array_fill() to create arrays initialized with a value.
Pavel Stehule
2008-07-16 00:48:54 +00:00
Bruce Momjian 2fa42cc9ee Fix alignment of SGML array docs. 2008-07-15 18:24:59 +00:00
Bruce Momjian bd53eb4b05 Add Swedish_Sweden.1252 Windows locale example to docs. 2008-07-15 17:45:03 +00:00
Bruce Momjian d3c94b2d84 Add to TODO:
>
> 	o Reduce PITR WAL file size by removing full page writes and
> 	  by removing trailing bytes to improve compression
2008-07-15 15:03:41 +00:00
Bruce Momjian 13e835932b Add TODO:
>
> * Consider decreasing the I/O caused by updating tuple hint bits
>
>   http://archives.postgresql.org/pgsql-hackers/2008-05/msg00847.php
>
2008-07-15 13:55:20 +00:00
Bruce Momjian db13b7d61f Done:
> 	o -Have psql show current values for a sequence
2008-07-15 03:17:51 +00:00
Bruce Momjian da0a9f1d5a Clarify that locale names on Windows are more verbose.
Report from Martin Saschek
2008-07-15 01:35:23 +00:00
Bruce Momjian e39a3dfa86 Add to TODO:
> * Improve ability to modify views via ALTER TABLE
>
>   http://archives.postgresql.org/pgsql-hackers/2008-05/msg00691.php
2008-07-14 22:57:21 +00:00
Bruce Momjian b1845753d2 Done:
< * Add temporal versions of generate_series()
> * -Add temporal versions of generate_series()
2008-07-14 20:54:18 +00:00
Bruce Momjian 85df9057e1 Add URL for:
* Consider allowing control of upper/lower case folding of unquoted
  identifiers

>   http://archives.postgresql.org/pgsql-hackers/2008-07/msg00415.php
2008-07-14 17:54:54 +00:00
Bruce Momjian aab30f3abc Done, per Simon:
< 	o Fix server restart problem when the server was shutdown during
> 	o -Fix server restart problem when the server was shutdown during
2008-07-14 17:16:13 +00:00
Tom Lane 6f6d863258 Create a type-specific typanalyze routine for tsvector, which collects stats
on the most common individual lexemes in place of the mostly-useless default
behavior of counting duplicate tsvectors.  Future work: create selectivity
estimation functions that actually do something with these stats.

(Some other things we ought to look at doing: using the Lossy Counting
algorithm in compute_minimal_stats, and using the element-counting idea for
stats on regular arrays.)

Jan Urbanski
2008-07-14 00:51:46 +00:00
Tom Lane 45efb09a01 Fix a couple of stray misuses of "binary compatible". 2008-07-12 16:20:06 +00:00
Tom Lane 27cb66fdfe Multi-column GIN indexes. Teodor Sigaev 2008-07-11 21:06:29 +00:00
Peter Eisentraut e3afbb3504 Allow binary-coercible types for cast function arguments and return types.
Document return type of cast functions.

Also change documentation to prefer the term "binary coercible" in its
present sense instead of the previous term "binary compatible".
2008-07-11 07:02:43 +00:00
Tom Lane 7a97abe818 Add unchangeable GUC "variables" segment_size, wal_block_size, and
wal_segment_size to make those configuration parameters available to clients,
in the same way that block_size was previously exposed.  Bernd Helmle, with
comments from Abhijit Menon-Sen and some further tweaking by me.
2008-07-10 22:08:17 +00:00
Peter Eisentraut 76c3c59bd1 Added documentation for function xmlagg. 2008-07-07 16:11:35 +00:00
Tom Lane c63147d6f0 Add a function pg_get_keywords() to let clients find out the set of keywords
known to the SQL parser.  Dave Page
2008-07-03 20:58:47 +00:00
Peter Eisentraut b11c1876ed Don't print the name of the database in psql \z. 2008-07-03 15:59:55 +00:00
Tom Lane 0a8f6b797a Fix psql's \d and allied commands to work with all server versions back to 7.4.
Guillaume Lelarge, with some additional fixes by me.
2008-07-03 03:37:17 +00:00
Bruce Momjian 1e797d29c3 Documentation patch by Kevin L. McBride explaining GUC lock variables,
which are available if LOCK_DEBUG is defined.
2008-07-01 21:49:04 +00:00
Bruce Momjian 03c4e793e8 Add URL for:
* Add database and transaction-level triggers
2008-07-01 18:26:30 +00:00
Bruce Momjian 16812e339c Add to TODO:
> * Fix TRUNCATE ... RESTART IDENTITY so its affect on sequences is rolled
>   back on transaction abort
2008-07-01 18:09:09 +00:00
Bruce Momjian 5ce521f648 Add psql TODO:
> 	o Add "auto" expanded mode that outputs in expanded format if
> 	  "wrapped" mode can't wrap the output to the screen width
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-05/msg00417.php
>
2008-06-30 19:45:15 +00:00
Bruce Momjian c96d5df53e Add psql TODO item:
> 	o Add option to wrap column values at whitespace boundaries,
>           rather than chopping them at a fixed width.
> 	  Currently, "wrapped" format chops values into fixed
> 	  widths.  Perhaps the word wrapping could use the same
> 	  algorithm documented in the W3C specification.
> 	  http://archives.postgresql.org/pgsql-hackers/2008-05/msg00404.php
> 	  http://www.w3.org/TR/CSS21/tables.html#auto-table-layout
2008-06-30 19:41:37 +00:00
Heikki Linnakangas 995fb74202 Turn PGBE_ACTIVITY_SIZE into a GUC variable, track_activity_query_size.
As the buffer could now be a lot larger than before, and copying it could
thus be a lot more expensive than before, use strcpy instead of memcpy to
copy the query string, as was already suggested in comments. Also, only copy
the PgBackendStatus struct and string if the slot is in use.

Patch by Thomas Lee, with some changes by me.
2008-06-30 10:58:47 +00:00
Bruce Momjian f95b5334a7 Mention actual function names in documentation of how to pass binary
values to libpq.
2008-06-27 02:44:31 +00:00
Bruce Momjian 5d747ddd75 Add to TODO:
>
> * Fix system views like pg_stat_all_tables to use set-returning
>   functions, rather than views of per-column functions
2008-06-27 02:38:29 +00:00
Tom Lane 8530c82fc4 Clarify plpgsql documentation by not treating IF THEN ELSE IF ... as a
truly distinct version of IF.  Per suggestion from Marko Kreen.
2008-06-27 01:52:59 +00:00
Bruce Momjian 68057055f6 Use SGML table to show backslash string escapes, rather than have them
appear in a paragraph.

Andy Anderson
2008-06-26 22:24:42 +00:00
Bruce Momjian 476fad2d91 Add MERGE TODO URL:
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg01890.php
2008-06-26 19:18:37 +00:00
Bruce Momjian 46dd4db31e Add TODO about security:
* Improve server security options

  http://archives.postgresql.org/pgsql-hackers/2008-04/msg01875.php
  http://archives.postgresql.org/pgsql-hackers/2008-05/msg00000.php
2008-06-26 03:58:00 +00:00
Bruce Momjian 9c1d897b94 More FAQ URL updates from Curtis Gallant. 2008-06-26 03:54:28 +00:00
Bruce Momjian 54b9a968ed Update FAQ URLs as suggested by Curtis Gallant. 2008-06-26 03:02:27 +00:00
Bruce Momjian 1fc2fbe51f Add to TODO:
>
> * Improve LDAP authentication configuration options
>
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg01745.php
2008-06-26 02:53:19 +00:00
Bruce Momjian 124c22d5fd Remove use of postmaster.opts.default by pg_ctl. 2008-06-26 01:12:20 +00:00
Bruce Momjian 3dc59beae2 TODO item done:
< 	o Prevent pg_dump/pg_restore from being affected by
> 	o -Prevent pg_dump/pg_restore from being affected by
2008-06-24 15:53:24 +00:00
Bruce Momjian 815aa2c8e8 Add TODO:
>
> 	o Allow COPY to report errors sooner
>
>          http://archives.postgresql.org/pgsql-hackers/2008-04/msg01169.php
2008-06-23 22:42:32 +00:00
Bruce Momjian 2047021fdb Add URL for Merge. 2008-06-23 22:23:54 +00:00
Bruce Momjian d34cf008a9 Backup wording improvement.
Joshua D. Drake
2008-06-23 22:15:17 +00:00
Bruce Momjian fe0dbfe6f3 Add to TODO:
> * Allow custom variables to appear in pg_settings()
2008-06-23 22:12:20 +00:00
Bruce Momjian c09174fb95 Add item:
* Implement a module capability for loading /contrib-style extensions

  http://archives.postgresql.org/pgsql-patches/2008-04/msg00164.php
2008-06-23 21:35:35 +00:00
Bruce Momjian 2296e29998 Add libpq comment about how to determine the format used for passing
binary values.

Add comments to libpq C function for parameter passing.
2008-06-23 21:10:49 +00:00
Bruce Momjian 01930cea03 Add TODO:
* Consider whether duplicate keys should be sorted by block/offset

  http://archives.postgresql.org/pgsql-hackers/2008-03/msg00558.php

Create new "Sorting" TODO section.
2008-06-23 20:20:54 +00:00
Bruce Momjian e3ae27894a Add URL for:
o Allow pg_hba.conf to specify host names along with IP addresses
> 	  http://archives.postgresql.org/pgsql-hackers/2008-06/msg00569.php
2008-06-19 01:15:48 +00:00
Neil Conway 3eb9da524d Fix a few typos in the DTrace docs. Patch from Euler Taveira de Oliveira,
along with an additional typo I noticed along the way.
2008-06-18 17:44:12 +00:00
Tom Lane 9dac1b460f Rewrite docs section about routine vacuuming --- it's gotten rather mangled of
late, with lots of redundancy, bad grammar, and just plain poor exposition.
Make it clear that autovacuum is now considered the normal solution.
2008-06-16 03:13:14 +00:00
Tom Lane a0b012a1ab Rearrange ALTER TABLE syntax processing as per my recent proposal: the
grammar allows ALTER TABLE/INDEX/SEQUENCE/VIEW interchangeably for all
subforms of those commands, and then we sort out what's really legal
at execution time.  This allows the ALTER SEQUENCE/VIEW reference pages
to fully document all the ALTER forms available for sequences and views
respectively, and eliminates a longstanding cause of confusion for users.

The net effect is that the following forms are allowed that weren't before:
	ALTER SEQUENCE OWNER TO
	ALTER VIEW ALTER COLUMN SET/DROP DEFAULT
	ALTER VIEW OWNER TO
	ALTER VIEW SET SCHEMA
(There's no actual functionality gain here, but formerly you had to say
ALTER TABLE instead.)

Interestingly, the grammar tables actually get smaller, probably because
there are fewer special cases to keep track of.

I did not disallow using ALTER TABLE for these operations.  Perhaps we
should, but there's a backwards-compatibility issue if we do; in fact
it would break existing pg_dump scripts.  I did however tighten up
ALTER SEQUENCE and ALTER VIEW to reject non-sequences and non-views
in the new cases as well as a couple of cases where they didn't before.

The patch doesn't change pg_dump to use the new syntaxes, either.
2008-06-15 01:25:54 +00:00
Alvaro Herrera bd2ef8707f In log_filename documentation, mention that strftime is not used directly to
expand the pattern specifier.

Per gripe from Josh Drake.
2008-06-14 21:59:59 +00:00
Bruce Momjian 95ce4ee943 Modify TODO entry to be a function:
> 	o Add functions to syntax check configuration files
>
< * Add pg_ctl option to do a syntax check of postgresql.conf
2008-06-13 16:24:38 +00:00
Bruce Momjian 2319ddf3f1 Use macro to document size of ecpg sqlerrmc string. 2008-06-12 19:15:40 +00:00
Bruce Momjian 635131b159 Update item to mention target list problem:
< * Allow INSERT/UPDATE ... RETURNING inside a SELECT 'FROM' clause
> * Allow INSERT/UPDATE ... RETURNING inside a SELECT 'FROM' clause or
>   target list
>   http://archives.postgresql.org/pgsql-hackers/2008-06/msg00124.php
2008-06-12 18:09:04 +00:00
Bruce Momjian ebff1d4dc6 Add:
> * Add pg_ctl option to do a syntax check of postgresql.conf
2008-06-11 20:54:31 +00:00
Heikki Linnakangas 8b64a2642a Add optional on/off argument to \timing.
David Fetter.
2008-06-11 10:48:17 +00:00
Alvaro Herrera 96063da99d Make XML building work silently on VPATH builds (untested on regular builds). 2008-06-10 00:19:32 +00:00
Bruce Momjian 242d70d5ef Update Japanese FAQ.
Jun Kuwamura
2008-06-09 19:37:16 +00:00
Tom Lane 2071865caa Update release notes for ALTER AGGREGATE fix. 2008-06-08 21:46:07 +00:00
Tom Lane 6d61b404d4 Update release notes for 8.3.3 et al. 2008-06-07 22:10:38 +00:00
Alvaro Herrera 700af334cc Fix missing "not", per Frank Millman (bug #4212). 2008-06-05 19:56:09 +00:00
Tom Lane 393ad11c7e Draft release notes for upcoming back-branch updates. 2008-06-04 03:16:02 +00:00
Tom Lane 6d19e9ffad Marginal improvements to the documentation for PGOPTIONS. 2008-06-01 16:23:08 +00:00
Andrew Dunstan 66e4da4c86 Done: -Remove psql newline patch when we find out why mingw outputs an extra newline 2008-05-31 15:05:46 +00:00
Tom Lane bf4bd50ff7 Copy refint.so and autoinc.so into the src/test/regress directory during
"make all", and then reference them there during the actual tests.  This
makes the handling of these files more parallel to that of regress.so,
and in particular simplifies use of the regression tests outside the
original build tree.  The PGDG and Red Hat RPMs have been doing this via
patches for a very long time.  Inclusion of the change in core was requested
by Jørgen Austvik of Sun, and I can't see any reason not to.

I attempted to fix the MSVC scripts for this too, but they may need
further tweaking ...
2008-05-30 00:04:32 +00:00
Bruce Momjian e19d10b595 Add description to:
* Add deferred trigger queue file

<   This item involves dumping large queues into files.
>   This item involves dumping large queues into files, or doing some
>   kind of join to process all the triggers, or some bulk operation.
2008-05-29 02:04:15 +00:00
Bruce Momjian 882576aa89 Add URL for:
* Add deferred trigger queue file

>   http://archives.postgresql.org/pgsql-hackers/2008-05/msg00876.php
2008-05-29 01:58:29 +00:00
Tom Lane a8f98c068e Improve GRANT documentation to point out that UPDATE and DELETE typically
require SELECT privilege as well, since you normally need to read existing
column values within such commands.  This behavior is according to spec,
but we'd never documented it before.  Per gripe from Volkan Yazici.
2008-05-28 00:45:40 +00:00
Tom Lane e35ee671a8 Clarify description of typmod input function, per Jeff Davis. 2008-05-27 18:05:13 +00:00
Tom Lane 7b8a63c3e9 Alter the xxx_pattern_ops opclasses to use the regular equality operator of
the associated datatype as their equality member.  This means that these
opclasses can now support plain equality comparisons along with LIKE tests,
thus avoiding the need for an extra index in some applications.  This
optimization was not possible when the pattern opclasses were first introduced,
because we didn't insist that text equality meant bitwise equality; but we
do now, so there is no semantic difference between regular and pattern
equality operators.

I removed the name_pattern_ops opclass altogether, since it's really useless:
name's regular comparisons are just strcmp() and are unlikely to become
something different.  Instead teach indxpath.c that btree name_ops can be
used for LIKE whether or not the locale is C.  This might lead to a useful
speedup in LIKE queries on the system catalogs in non-C locales.

The ~=~ and ~<>~ operators are gone altogether.  (It would have been nice to
keep them for backward compatibility's sake, but since the pg_amop structure
doesn't allow multiple equality operators per opclass, there's no way.)

A not-immediately-obvious incompatibility is that the sort order within
bpchar_pattern_ops indexes changes --- it had been identical to plain
strcmp, but is now trailing-blank-insensitive.  This will impact
in-place upgrades, if those ever happen.

Per discussions a couple months ago.
2008-05-27 00:13:09 +00:00
Bruce Momjian abb5fd8604 Done:
< 	o Use LC_TIME for localized weekday/month names, rather than
> 	o -Use LC_TIME for localized weekday/month names, rather than
2008-05-20 00:35:45 +00:00
Tom Lane 07a5606735 Make to_char()'s localized month/day names depend on LC_TIME, not LC_MESSAGES.
Euler Taveira de Oliveira
2008-05-19 18:08:16 +00:00
Tom Lane 1bfe97e5a8 Rewrite the warning about non-transaction-safety of TRUNCATE ... RESTART
IDENTITY to be more explicit about the possible hazards.  Per gripe from Neil
and subsequent discussion.  Eventually we may be able to get rid of this
warning, but for now it had better be there.
2008-05-17 23:36:27 +00:00
Tom Lane caede71b44 Allow ALTER SEQUENCE START WITH to change the recorded start_value of a
sequence.  This seems an obvious extension to the recent patch, and it
makes the code noticeably cleaner and more orthogonal.
2008-05-17 01:20:39 +00:00
Tom Lane 10a3471bed Add a RESTART (without parameter) option to ALTER SEQUENCE, allowing a
sequence to be reset to its original starting value.  This requires adding the
original start value to the set of parameters (columns) of a sequence object,
which is a user-visible change with potential compatibility implications;
it also forces initdb.

Also add hopefully-SQL-compatible RESTART/CONTINUE IDENTITY options to
TRUNCATE TABLE.  RESTART IDENTITY executes ALTER SEQUENCE RESTART for all
sequences "owned by" any of the truncated relations.  CONTINUE IDENTITY is
a no-op option.

Zoltan Boszormenyi
2008-05-16 23:36:05 +00:00
Bruce Momjian 9263d86f59 Update psql startup banner to be shorter, suggest "help" for help.
Add a few "help" entries.

Move \g help entry into "General".

Update psql version mismatch warning text.

Joshua D. Drake
2008-05-16 17:17:00 +00:00
Bruce Momjian 7adddb4002 Done in TODO:
> 	o -Have \l+ show database size, if permissions allow
2008-05-16 17:03:40 +00:00
Bruce Momjian 43ee22826b Add detection of psql pager to trigger on wide output. Also add pager
detection for wrapped lines or lines with newlines that need pager to
display.
2008-05-16 16:59:05 +00:00
Tom Lane e6dbcb72fa Extend GIN to support partial-match searches, and extend tsquery to support
prefix matching using this facility.

Teodor Sigaev and Oleg Bartunov
2008-05-16 16:31:02 +00:00
Bruce Momjian 4eb0900768 Done:
PL/pgSQL

> 	o -Add CASE capability to language (already in SQL)
2008-05-16 02:23:44 +00:00
Tom Lane b62f246fb0 Support SQL/PSM-compatible CASE statement in plpgsql.
Pavel Stehule
2008-05-15 22:39:49 +00:00
Tom Lane 93c701edc6 Add support for tracking call counts and elapsed runtime for user-defined
functions.

Note that because this patch changes FmgrInfo, any external C functions
you might be testing with 8.4 will need to be recompiled.

Patch by Martin Pihlak, some editorialization by me (principally, removing
tracking of getrusage() numbers)
2008-05-15 00:17:41 +00:00
Bruce Momjian 36f0b1cab7 Remove odd duplicate wording in psql pager section. 2008-05-14 04:07:01 +00:00
Tom Lane 4107478d37 Improve plpgsql's RAISE command. It is now possible to attach DETAIL and
HINT fields to a user-thrown error message, and to specify the SQLSTATE
error code to use.  The syntax has also been tweaked so that the
Oracle-compatible case "RAISE exception_name" works (though you won't get a
very nice error message if you just write that much).  Lastly, support
the Oracle-compatible syntax "RAISE" with no parameters to re-throw
the current error from within an EXCEPTION block.

In passing, allow the syntax SQLSTATE 'nnnnn' within EXCEPTION lists,
so that there is a way to trap errors with custom SQLSTATE codes.

Pavel Stehule and Tom Lane
2008-05-13 22:10:30 +00:00
Bruce Momjian 9340c6372f Todo done:
> * -Improve dead row detection during multi-statement transactions usage
2008-05-12 20:50:52 +00:00
Alvaro Herrera 000086b49c Document that "ROLLBACK TO savepoint" does not un-close cursors. 2008-05-12 16:23:26 +00:00
Bruce Momjian 2cabe2db79 Add URL for:
o Allow an existing index to be marked as a table's primary key
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-04/msg00500.php
2008-05-10 01:50:51 +00:00
Bruce Momjian d603b3e48a Add to TODO:
> 	o Allow an existing index to be marked as a table's primary key
2008-05-10 01:50:14 +00:00
Bruce Momjian f586e70665 Add URL for:
* Add column to pg_stat_activity that shows the progress of long-running
  commands like CREATE INDEX and VACUUM
>
>   http://archives.postgresql.org/pgsql-patches/2008-04/msg00203.php
>
2008-05-10 01:40:09 +00:00
Bruce Momjian 1526a701c4 Add TODO item:
> 	o Clear table counters on TRUNCATE
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-04/msg00169.php
2008-05-10 00:33:33 +00:00
Bruce Momjian 1d18d1dd7b TODOs done:
> 	o -Prevent parent tables from altering or dropping constraints
> 	o -Prevent child tables from altering or dropping constraints
2008-05-10 00:25:08 +00:00
Tom Lane cd902b331d Change the rules for inherited CHECK constraints to be essentially the same
as those for inherited columns; that is, it's no longer allowed for a child
table to not have a check constraint matching one that exists on a parent.
This satisfies the principle of least surprise (rows selected from the parent
will always appear to meet its check constraints) and eliminates some
longstanding bogosity in pg_dump, which formerly had to guess about whether
check constraints were really inherited or not.

The implementation involves adding conislocal and coninhcount columns to
pg_constraint (paralleling attislocal and attinhcount in pg_attribute)
and refactoring various ALTER TABLE actions to be more like those for
columns.

Alex Hunsaker, Nikhil Sontakke, Tom Lane
2008-05-09 23:32:05 +00:00
Bruce Momjian c56b444496 Add to TODO:
>
> * Improve the /contrib installation experience
>
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg00132.php
2008-05-09 03:58:41 +00:00
Bruce Momjian 5adf98ae24 Add psql '\pset format wrapped' mode to wrap output to screen width, or
file/pipe output too if \pset columns' is set.

Bryce Nesbitt
2008-05-08 17:04:26 +00:00
Tom Lane eb915caf92 Fix contrib/xml2 makefile to not override CFLAGS, and in passing make it
auto-configure properly for libxslt present or not.
2008-05-08 16:49:37 +00:00
Bruce Momjian 9c9732e3c7 Update TODO wording:
< * Improve detection of shared memory segments being used by other
<   FreeBSD jails

> * Improve detection of shared memory segments being used by others
>   by checking the SysV shared memory field 'nattch'
>   http://archives.postgresql.org/pgsql-hackers/2008-01/msg00673.php
2008-05-08 02:24:26 +00:00
Bruce Momjian b4362eeaa7 Add to TODO:
>
> 	o Add CREATE SCHEMA ... LIKE that copies a schema
>
2008-05-08 01:49:43 +00:00
Bruce Momjian 5b9c14cdf9 Add to TODO:
> * Add database and transaction-level triggers
>
>   http://archives.postgresql.org/pgsql-hackers/2008-03/msg00451.php
2008-05-08 01:45:16 +00:00
Bruce Momjian 5bf049b56c Remove OID/foreign key mention in psql variable interpolation docs. 2008-05-08 00:27:57 +00:00
Alvaro Herrera 09005f2fec Add Simon Riggs' email address. 2008-05-07 18:48:40 +00:00
Bruce Momjian 00756a5691 Move Client Authentication right after Server Configuration in docs.
Scott Marlowe
2008-05-07 16:36:43 +00:00
Magnus Hagander 0423de4d30 Make the pg_stat_activity view call a SRF (pg_stat_get_activity())
instead of calling a bunch of individual functions.

This function can also be called directly, taking a PID as an argument, to
return only the data for a single PID.
2008-05-07 14:41:56 +00:00
Bruce Momjian 8008988be3 Fix TODO typo. 2008-05-07 04:46:01 +00:00
Bruce Momjian 44ba6f3476 Add URL for
< * Consider increasing the number of default statistics target, and
<   reduce statistics target overhead
2008-05-07 04:45:39 +00:00
Bruce Momjian bd8131ee8f Update TODO wording:
< 	o Allow dictionary to filter out only stop words
> 	o Allow dictionaries to change the token that is passed on to
> 	  later dictionaries
2008-05-07 04:34:51 +00:00
Bruce Momjian 40941c5129 Add item, make text search section:
o Consider changing error to warning for strings larger than one
          megabyte

          http://archives.postgresql.org/pgsql-bugs/2008-02/msg00190.php
          http://archives.postgresql.org/pgsql-patches/2008-03/msg00062.php
2008-05-07 04:12:25 +00:00
Bruce Momjian 2d592d2e86 Done:
> * -Add function to report the time of the most recent server reload
2008-05-06 16:14:29 +00:00
Bruce Momjian 93afd6f619 Done:
> 	o -Improve display of enums to show valid enum values
2008-05-06 00:47:53 +00:00
Andrew Dunstan 27a52fa2d9 Document extra information provided by psql's \dT+ (not \dt+ as per recent commit). 2008-05-05 01:38:08 +00:00
Andrew Dunstan a87f15d506 Display ACLS using multiple lines for psql's \z. Brendan Jurd. 2008-05-05 01:21:03 +00:00
Tom Lane b6d15590f7 Add timestamp and timestamptz versions of generate_series().
Hitoshi Harada
2008-05-04 23:19:24 +00:00
Tom Lane 600da67fbe Add pg_conf_load_time() function to report when the Postgres configuration
files were last loaded.

George Gensure
2008-05-04 21:13:36 +00:00
Tom Lane 47391591ba Support RETURN QUERY EXECUTE in plpgsql.
Pavel Stehule
2008-05-03 00:11:36 +00:00
Tom Lane 511b798c46 Update documentation for psql relation-size-in-\dt+ patch. 2008-05-02 22:50:21 +00:00
Tom Lane db147b3483 Allow the planner's estimate of the fraction of a cursor's rows that will be
retrieved to be controlled through a GUC variable.

Robert Hell
2008-05-02 21:26:10 +00:00
Tom Lane cf9f6c8d8e Extend yesterday's patch making BLCKSZ and RELSEG_SIZE configurable to also
let XLOG_BLCKSZ and XLOG_SEG_SIZE be set via configure.  Per a proposal by
Mark Wong, though I thought it better to call the switches after "wal" rather
than "xlog".
2008-05-02 19:52:37 +00:00
Tom Lane 3c6248a828 Remove the recently added USE_SEGMENTED_FILES option, and indeed remove all
support for a nonsegmented mode from md.c.  Per recent discussions, there
doesn't seem to be much value in a "never segment" option as opposed to
segmenting with a suitably large segment size.  So instead provide a
configure-time switch to set the desired segment size in units of gigabytes.
While at it, expose a configure switch for BLCKSZ as well.

Zdenek Kotala
2008-05-02 01:08:27 +00:00
Tom Lane 1b1e335b15 Make the minimum allowed value of work_mem be 64KB always, rather than having
it vary with BLCKSZ as before.  This agrees with what the documentation says,
and avoids a regression test problem when BLCKSZ is larger than default.
Per recent discussion.
2008-05-01 19:55:40 +00:00
Alvaro Herrera ca0aecfdef Add example showing how to remove a password from a role.
Andreas Scherbaum
2008-04-30 12:38:49 +00:00
Bruce Momjian d7379b7624 Update comment for 8.4:
> #A hyphen, "-", marks changes that will appear in the upcoming 8.4 release.#
2008-04-28 23:08:33 +00:00
Alvaro Herrera 1fcb977a13 Add generate_subscripts, a series-generation function which generates an
array's subscripts.

Pavel Stehule, some editorialization by me.
2008-04-28 14:48:58 +00:00
Alvaro Herrera a1d479f518 Add SGML ID attributes to the arrays subsections, and a few index entries for
them.
2008-04-27 04:33:27 +00:00
Tom Lane ea0382e370 Code review for recent patch to terminate online backup during shutdown:
do CancelBackup at a sane place, fix some oversights in the state transitions,
allow only superusers to connect while we are waiting for backup mode to end.
2008-04-26 22:47:40 +00:00
Bruce Momjian b6e2fab978 Add URL for:
* Allow adding/renaming/removing enumerated values to an existing
  enumerated data type
>
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg01718.php
>
2008-04-25 21:38:46 +00:00
Bruce Momjian 5463d399e3 Update wording from David Fetter. 2008-04-25 14:34:26 +00:00
Bruce Momjian 43a43ad21d Update to remove passive wording from FAQ, David Fetter 2008-04-25 14:28:51 +00:00
Bruce Momjian 91674bce68 Update TODO item:
> * Allow adding/renaming/removing enumerated values to an existing
>   enumerated data type
2008-04-24 20:57:34 +00:00
Bruce Momjian bb908d9879 Update:
< * Allow adding enumerated values to an existing enumerated data
> * Allow adding/removing enumerated values to an existing enumerated data
2008-04-24 20:29:16 +00:00
Bruce Momjian 830f276b2a Add embedded usage mention to FAQ, per Greg Smith. 2008-04-24 19:58:32 +00:00
Bruce Momjian cc3c9e1b29 Add to TODO:
> * Allow prepared transactions with temporary tables created and dropped
>   in the same transaction, and when an ON COMMIT DELETE ROWS temporary
>   table is accessed
>
>   http://archives.postgresql.org/pgsql-hackers/2008-03/msg00047.php
2008-04-24 18:23:05 +00:00
Bruce Momjian a61fbe4582 Add TODO item:
>
> 	o Impove COPY performance
>
> 	  http://archives.postgresql.org/pgsql-hackers/2008-02/msg00954.php
2008-04-24 17:32:44 +00:00
Bruce Momjian 82403f0350 Add URL for:
* Allow index scans to return matching index keys, not just the matching
  heap locations
>
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg01657.php
>
2008-04-24 17:06:13 +00:00
Bruce Momjian a88b8943db Add to TODO:
> * Allow index scans to return matching index keys, not just the matching
>   heap locations
2008-04-24 16:42:39 +00:00
Bruce Momjian 0e242fec5f Add to TODO:
<
> * Allow adding enumerated values to an existing enumerated data
>   type
2008-04-24 16:14:25 +00:00
Bruce Momjian a3552f050f Remove, item done, description unclear:
< * Allow index scans to return matching index keys
<
<   http://archives.postgresql.org/pgsql-hackers/2007-03/msg01079.php
2008-04-24 16:11:31 +00:00
Bruce Momjian 9dd10490ed Update TODO description for GIT:
* Consider smaller indexes that record a range of values per heap page,
  rather than having one index entry for every heap row
2008-04-24 15:54:00 +00:00
Bruce Momjian 19750904c8 Add GIT URL:
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg01589.php
2008-04-24 02:24:29 +00:00
Bruce Momjian 0b6b8cdc81 Add to TODO:
<
> 	o Add prompt escape to display the client and server versions
2008-04-24 00:39:50 +00:00
Bruce Momjian fef58c6943 Add URL for MERGE:
>   http://archives.postgresql.org/pgsql-hackers/2008-04/msg01475.php
2008-04-23 22:38:47 +00:00
Magnus Hagander c979a1fefa Prevent shutdown in normal mode if online backup is running, and
have pg_ctl warn about this.

Cancel running online backups (by renaming the backup_label file,
thus rendering the backup useless) when shutting down in fast mode.

Laurenz Albe
2008-04-23 13:44:59 +00:00
Magnus Hagander fc2117a4b5 Replace developer FAQ with a reference to the wiki, which is where
it now lives (per discussion). Leave the other FAQs alone for now.
2008-04-22 09:26:32 +00:00
Magnus Hagander be9ab11366 Fix typo, noted by Stefan Kaltenbrunner. 2008-04-21 11:06:13 +00:00
Magnus Hagander 3bb6d101c4 Add link to major version release notes at the top of the minor
version ones, to make it clear to users just browsing the notes
that there are a lot more changes available from whatever version
they are at than what's in the minor version release notes.
2008-04-21 09:44:47 +00:00