Commit Graph

9128 Commits

Author SHA1 Message Date
Tom Lane 5698f6b925 Remove the -d and -D options of pg_dump and pg_dumpall. The functionality
is still available, but you must now write the long equivalent --inserts
or --column-inserts.  This change is made to eliminate confusion with the
use of -d to specify a database name in most other Postgres client programs.
Original patch by Greg Mullane, modified per subsequent discussion.
2009-03-22 16:44:26 +00:00
Tom Lane 0fd85d7879 Remove the datetime keywords ABSTIME and RELTIME, which we'd been treating as
noise words for the last twelve years, for compatibility with Berkeley-era
output formatting of the special INVALID values for those datatypes.
Considering that the datatypes themselves have been deprecated for awhile,
this is taking backwards compatibility a little far.  Per gripe from Josh
Berkus.
2009-03-22 01:12:32 +00:00
Peter Eisentraut 249d936bed Rename pg_restore -m to -j, and add documentation about what good numbers
are.  per discussion on hackers
2009-03-20 09:21:09 +00:00
Tom Lane 52e6371e7d Be more clear about when to use gist__int_ops vs. gist__intbig_ops.
Per suggestion from Ron Mayer.
2009-03-18 20:18:18 +00:00
Tom Lane 029348cff9 Add just-assigned CVE number to release notes for recent security issue. 2009-03-17 21:36:21 +00:00
Tom Lane f3a72bd40b Fix contrib/hstore to throw an error for keys or values that don't fit in its
data structure, rather than silently truncating them.  Andrew Gierth
2009-03-15 22:05:17 +00:00
Tom Lane 2dd9af8c0c Update back-branch release notes. 2009-03-12 22:35:48 +00:00
Bruce Momjian b0c68c242c Doc patch for the recently added probes.
Robert Lor
2009-03-10 00:08:28 +00:00
Peter Eisentraut 05a7db0582 Accept 'on' and 'off' as input for boolean data type, unifying the syntax
that the data type and GUC accepts.

ITAGAKI Takahiro
2009-03-09 14:34:35 +00:00
Tom Lane 00ce73778b Teach the planner to support index access methods that only implement
amgettuple or only implement amgetbitmap, instead of the former assumption
that every AM supports both APIs.  Extracted with minor editorialization
from Teodor's fast-GIN-insert patch; whatever becomes of that, this seems
like a simple and reasonable generalization of the index AM interface spec.
2009-03-05 23:06:45 +00:00
Tom Lane df8684c56f Remove documentation of log_restartpoints setting, which is obsoleted
in favor of log_checkpoints.  Fujii Masao
2009-03-05 19:50:03 +00:00
Peter Eisentraut b966b519f5 Provide some proper minimal documentation for the pg_dump(all) --binary-upgrade
option.  We don't want to commit to what it does, but hiding it will only
cause confusion.
2009-03-04 11:57:00 +00:00
Peter Eisentraut 12f87b2c82 Add new SQL:2008 error codes for invalid LIMIT and OFFSET values. Remove
unused nonstandard error code that was perhaps intended for this but never
used.
2009-03-04 10:55:00 +00:00
Tom Lane 640796ff41 Reduce the maximum value of vacuum_cost_delay and autovacuum_vacuum_cost_delay
to 100ms (from 1000).  This still seems to be comfortably larger than the
useful range of the parameter, and it should help discourage people from
picking uselessly large values.  Tweak the documentation to recommend small
values, too.  Per discussion of a couple weeks ago.
2009-02-28 00:10:52 +00:00
Peter Eisentraut b6e4c8f255 Equip the programs installed by contrib with proper --help and --version
options and normally formatted help output.
2009-02-27 09:30:21 +00:00
Peter Eisentraut 867a2a6d81 Fix the inconsistent and wrong claims that the option value in CREATE
FOREIGN DATA WRAPPER/SERVER/USER MAPPING is optional.
2009-02-27 07:20:00 +00:00
Peter Eisentraut 9de59fd191 Add a -w/--no-password option that prevents all password prompts to all
programs that have a -W/--password option.

In passing, remove the ancient PSQL_ALWAYS_GET_PASSWORDS compile option.
2009-02-26 16:02:39 +00:00
Peter Eisentraut 7380b6384b Don't append epoch to log_filename if no format specifier is given.
Robert Haas
2009-02-24 12:09:09 +00:00
Peter Eisentraut 7babccb915 Add the possibility to specify an explicit validator function for foreign-data
wrappers (similar to procedural languages).  This way we don't need to retain
the nearly empty libraries, and we are more free in how to implement the
wrapper API in the future.
2009-02-24 10:06:36 +00:00
Tom Lane 451a15f95c Add note that inlined SQL functions aren't tracked by track_functions. 2009-02-22 23:50:30 +00:00
Bruce Momjian 36a9cf38c5 Add --freeze option to vacuumdb. 2009-02-18 12:11:55 +00:00
Bruce Momjian 6883c54a62 Add pg_dump --binary-upgrade flag to be used by binary upgrade
utilities.

The new code allows transfer of dropped column information to the
upgraded server.
2009-02-17 15:41:50 +00:00
Tom Lane 57b5984d24 Minor wordsmithing. 2009-02-15 18:28:48 +00:00
Peter Eisentraut c1c1886d82 Unset language-related locale settings in any case, otherwise psql will
speak in tongues and mess up the regression test diffs.
2009-02-12 13:26:03 +00:00
Bruce Momjian eee82d44bd Remove tabs from SGML. 2009-02-12 13:25:33 +00:00
Tom Lane 6d1e361852 Change ALTER TABLE SET WITHOUT OIDS to rewrite the whole table to physically
get rid of the OID column.  This eliminates the problem discovered by Heikki
back in November that 8.4's suppression of "unnecessary" junk filtering in
INSERT/SELECT could lead to an Assert failure, or storing of oids into a table
that shouldn't have them if Asserts are off.  While that particular problem
could have been solved in other ways, it seems likely to be just a forerunner
of things to come if we continue to allow tables to contain rows that disagree
with the pg_class.relhasoids setting.  It's better to make this operation slow
than to sacrifice performance or risk bugs in more common code paths.

Also, add ALTER TABLE SET WITH OIDS to rewrite the table to add oids.
This was a bit more controversial, but in view of the very small amount of
extra code needed given the current ALTER TABLE infrastructure, it seems best
to eliminate the asymmetry in features.
2009-02-11 21:11:16 +00:00
Peter Eisentraut 20a43b16b4 Only unset the locale environment when --no-locale is used (the way it was
presumably designed, but didn't act).  This allows running the temp install
tests in a non-C locale, thus exercising users' real environments better.
Document how to change locales for test runs.
2009-02-11 14:03:42 +00:00
Bruce Momjian 715ea2bf18 Clarify PQinitSSL() documentation to mention what the argument controls. 2009-02-11 04:08:47 +00:00
Peter Eisentraut 8b9dd6b5fd Support for KOI8U encoding 2009-02-10 19:29:39 +00:00
Bruce Momjian b79e374519 Update wording of how to prevent pg_dump from affecting statistics
collection.
2009-02-10 00:55:21 +00:00
Alvaro Herrera 834a6da4f7 Update autovacuum to use reloptions instead of a system catalog, for
per-table overrides of parameters.

This removes a whole class of problems related to misusing the catalog,
and perhaps more importantly, gives us pg_dump support for the parameters.

Based on a patch by Euler Taveira de Oliveira, heavily reworked by me.
2009-02-09 20:57:59 +00:00
Bruce Momjian 57b10ebcd4 Fix spelling error in docs.
Erik Rijkers
2009-02-09 14:09:56 +00:00
Bruce Momjian 053835d334 Document that LIMIT NULL is the same as no LIMIT clause. 2009-02-07 20:11:16 +00:00
Bruce Momjian 97072ad80c Remove documentation mention that hash indexes perform no better than
btree;  keep mention about missing WAL logging.

Kenneth Marshall
2009-02-07 20:05:44 +00:00
Bruce Momjian 0c0d652031 Uppercase CHECK mention in relchecks documentation mention. 2009-02-07 19:27:25 +00:00
Bruce Momjian 952fe78a05 Properly wrap new pg_dump doc text. 2009-02-07 15:25:51 +00:00
Bruce Momjian ec48770e0c Update pg_constraint.conkey documentation description. 2009-02-07 15:00:27 +00:00
Bruce Momjian d54ae17b63 Document disabling the statistics collector pg_dump activity, and give a
bit more visibility to the PGOPTIONS environment variable supported by
libpq.

Bryce Nesbitt
2009-02-07 14:31:30 +00:00
Bruce Momjian 65b731bd9d Fix to_timestamp() to not require upper/lower case matching for meridian
designations (AM/PM).  Also separate out matching of a meridian with
periods (e.g. A.M.) and with those without.

Do the same for AD/BC.

Brendan Jurd
2009-02-07 14:16:46 +00:00
Tom Lane c87c31f10b Ooops, forgot to update COPY reference page to mention column privileges. 2009-02-06 21:22:49 +00:00
Tom Lane 7449427a1e Clean up some loose ends from the column privileges patch: add
has_column_privilege and has_any_column_privilege SQL functions; fix the
information_schema views that are supposed to pay attention to column
privileges; adjust pg_stats to show stats for any column you have select
privilege on; and fix COPY to allow copying a subset of columns if the user
has suitable per-column privileges for all the columns.

To improve efficiency of some of the information_schema views, extend the
has_xxx_privilege functions to allow inquiring about the OR of a set of
privileges in just one call.  This is just exposing capability that already
existed in the underlying aclcheck routines.

In passing, make the information_schema views report the owner's own
privileges as being grantable, since Postgres assumes this even when the grant
option bit is not set in the ACL.  This is a longstanding oversight.

Also, make the new has_xxx_privilege functions for foreign data objects follow
the same coding conventions used by the older ones.

Stephen Frost and Tom Lane
2009-02-06 21:15:12 +00:00
Bruce Momjian 0274e1b949 Fix typo in docs. 2009-02-06 19:24:12 +00:00
Bruce Momjian 3d1a1eeddb Document ways to avoid libpq WSACleanup() overhead on Windows.
Andrew Chernow
2009-02-06 18:18:54 +00:00
Bruce Momjian 8c78f8e65c Add PL/PgSQL FOUND and GET DIAGNOSTICS support for RETURN QUERY
statement

Pavel Stehule
2009-02-05 15:25:49 +00:00
Alvaro Herrera d1cf27a8ee Fix some SGML-compiler warnings on -wxml mode. 2009-02-04 21:30:41 +00:00
Bruce Momjian d8a30eca2e Update read committed documentation to better explain undesirable
behavior of concurrent commands in cases where rows are being added and
removed from matching query criteria.

Minor word-smithing.
2009-02-04 16:05:50 +00:00
Tom Lane c242502005 Document the longstanding behavior of LIMIT NULL and OFFSET NULL,
per gripe from David Wheeler that this was mentioned nowhere.
In passing, editorialize a bit on the description of the SQL:2008
equivalent syntax.
2009-02-02 20:42:57 +00:00
Andrew Dunstan 775f1b379e Provide for parallel restoration from a custom format archive. Each data and
post-data step is run in a separate worker child (a thread on Windows, a child
process elsewhere) up to the concurrent number specified by the new pg_restore
command-line --multi-thread | -m switch.

Andrew Dunstan, with some editing by Tom Lane.
2009-02-02 20:07:37 +00:00
Alvaro Herrera 3a5b773715 Allow reloption names to have qualifiers, initially supporting a TOAST
qualifier, and add support for this in pg_dump.

This allows TOAST tables to have user-defined fillfactor, and will also
enable us to move the autovacuum parameters to reloptions without taking
away the possibility of setting values for TOAST tables.
2009-02-02 19:31:40 +00:00
Peter Eisentraut 5e21197c7b Put pg_user_mapping section into the right (alphabetical) order. 2009-02-02 09:49:29 +00:00
Tom Lane 2044434996 Update back-branch release notes. 2009-01-30 00:37:29 +00:00
Peter Eisentraut 5fe3da927b Revert updatable views 2009-01-27 12:40:15 +00:00
Bruce Momjian 4d65d2872b Document that SELECT ... ORDER BY .. FOR UPDATE/SHARE might return
results out of order because of locking, per bug report 4593
2009-01-23 14:05:28 +00:00
Tom Lane 3cb5d6580a Support column-level privileges, as required by SQL standard.
Stephen Frost, with help from KaiGai Kohei and others
2009-01-22 20:16:10 +00:00
Peter Eisentraut dd7e54a17f Automatic view update rules
Bernd Helmle
2009-01-22 17:27:55 +00:00
Heikki Linnakangas 94136d5a18 Add new SPI_OK_REWRITTEN return code to SPI_execute and friends, for the
case that the command is rewritten into another type of command. The old
behavior to return the command tag of the last executed command was
pretty surprising. In PL/pgSQL, for example, it meant that if a command
was rewritten to a utility statement, FOUND wasn't set at all.
2009-01-21 11:02:40 +00:00
Peter Eisentraut 93a6be63a5 Revise the permission checking on user mapping DDL commands.
CREATE/ALTER/DROP USER MAPPING are now allowed either by the server owner or
by a user with USAGE privileges for his own user name.  This is more or less
what the SQL standard wants anyway (plus "implementation-defined")

Hide information_schema.user_mapping_options.option_value, unless the current
user is the one associated with the user mapping, or is the server owner and
the mapping is for PUBLIC, or is a superuser.  This is to protect passwords.

Also, fix a bug in information_schema._pg_foreign_servers, which hid servers
using wrappers where the current user did not have privileges on the wrapper.
The correct behavior is to hide servers where the current user has no
privileges on the server.
2009-01-20 09:10:20 +00:00
Bruce Momjian fe62698218 Update \d*S documentation to be more accurate; system objects are added
to the display, not restricted in the display; new text:

        The letter <literal>S</literal> adds the listing of system
        objects; without <literal>S</literal>, only non-system
        objects are shown.
2009-01-20 02:38:37 +00:00
Neil Conway fd1d4b3acd Fix an ungrammatical statement. 2009-01-17 04:29:00 +00:00
Neil Conway ea4b54e5f9 Fix typo. 2009-01-17 04:24:41 +00:00
Heikki Linnakangas 6587818542 Add vacuum_freeze_table_age GUC option, to control when VACUUM should
ignore the visibility map and scan the whole table, to advance
relfrozenxid.
2009-01-16 13:27:24 +00:00
Heikki Linnakangas 14bfea3b75 Change explanation of pg_switch_xlog()'s return value to match code. 2009-01-15 18:19:58 +00:00
Bruce Momjian 520c41b526 Add documentation mention that full page writes have to be enabled for
full pages to be restored during recovery.

Per private report from Michael Renner
2009-01-15 00:34:25 +00:00
Bruce Momjian afe8ac2078 Document how pglesslog can be used to reduce the storage requirements of PITR. 2009-01-13 00:54:11 +00:00
Peter Eisentraut 405728f669 Add some minimal documentation that the SQL standard requires parentheses
after ONLY.
2009-01-12 14:06:20 +00:00
Peter Eisentraut ca8100f9eb Add ONLY support to LOCK and TRUNCATE. By default, these commands are now
recursive.

=> Note this incompatibility in the release notes.
2009-01-12 08:54:27 +00:00
Tom Lane b7b8f0b609 Implement prefetching via posix_fadvise() for bitmap index scans. A new
GUC variable effective_io_concurrency controls how many concurrent block
prefetch requests will be issued.

(The best way to handle this for plain index scans is still under debate,
so that part is not applied yet --- tgl)

Greg Stark
2009-01-12 05:10:45 +00:00
Bruce Momjian 3b34e98242 Modify libpq environment variable documentation to point to the relevant
connection options documentation section, per idea from Magnus.
2009-01-10 20:14:30 +00:00
Bruce Momjian 2f90d9ff04 Update link guidelines. 2009-01-10 16:58:39 +00:00
Bruce Momjian feba07f838 Add guidelines section. 2009-01-10 16:03:15 +00:00
Bruce Momjian 908e2c7fd1 Add file to explain SGML linking options, for use by SGML document
writers.
2009-01-10 04:40:08 +00:00
Tom Lane ccb51c0842 A further attempt at clarifying the \distv business. 2009-01-09 19:27:14 +00:00
Bruce Momjian d3706cb6d2 Remove tabs from SGML docs. 2009-01-09 15:02:22 +00:00
Peter Eisentraut f8e5b79368 Change chapter titles thus:
III. Server Administration
15. Installation from Source Code
16. Installation from Source Code on Windows
17. Server Setup and Operation

to give users of binary installations a better idea where to start reading.

suggested by Nikolay Samokhvalov
2009-01-09 13:37:18 +00:00
Peter Eisentraut 26dc14b6b2 Rewrite update-po target, so that it works less like a shell script and more
like a makefile with real dependencies.

Instead of overwriting the old po file, write the new one to .po.new.  This is
less annoying and integrates better with the NLS web site.

Also, we can now merge languages that don't have a po file yet, by merging
against all other po files of that language, to pick up recurring translations
automatically.  This previously only worked when a po file already existed.
2009-01-09 10:54:08 +00:00
Magnus Hagander 1b4e729eaa Make krb_realm and krb_server_hostname be pg_hba options only, and remove
their GUCs.

In passing, noted that the pg_hba options for krb5 authentication weren't
listed at all - so add this.
2009-01-09 10:13:19 +00:00
Andrew Dunstan 32e1265dd9 Document values for pg_constraint confupdtype, confdeltype and confmatchtype columns. 2009-01-09 01:53:10 +00:00
Bruce Momjian 32c34aab1d Update release notes for 8.3.5, 8.2.11, and 8.1.15 to mention the need
to reindex GiST indexes:

	If you were running a previous 8.X.X release, REINDEX all GiST
	indexes after the upgrade.
2009-01-09 01:47:02 +00:00
Bruce Momjian eb0d7e243a Document that txid_visible_in_snapshot() cannot be used with
subtransaction ids.
2009-01-08 14:46:50 +00:00
Peter Eisentraut 3467f02957 Add note that not all SQL commands support ONLY in the same way. 2009-01-08 12:47:58 +00:00
Bruce Momjian af96c82019 Document current_query() as being the _client_ query. 2009-01-08 00:44:18 +00:00
Bruce Momjian 1c175cd76a Revert current_query() change to use debug_query_string again; add comment. 2009-01-08 00:13:22 +00:00
Tom Lane 445ce15702 Create a third option named "partition" for constraint_exclusion, and make it
the default.  This setting enables constraint exclusion checks only for
appendrel members (ie, inheritance children and UNION ALL arms), which are
the cases in which constraint exclusion is most likely to be useful.  Avoiding
the overhead for simple queries that are unlikely to benefit should bring
the cost down to the point where this is a reasonable default setting.
Per today's discussion.
2009-01-07 22:40:49 +00:00
Bruce Momjian 12dcf7bb75 Have current_query() use ActivePortal->sourceText rather than
debug_query_string;  this allows current_query() to be more accurate;
docs updated;  per idea from Tom
2009-01-07 21:48:15 +00:00
Tom Lane 1cfd9e8834 Fix executor/spi.h to follow our usual conventions for include files, ie,
not include postgres.h nor anything else it doesn't directly need.  Add
#includes to calling files as needed to compensate.  Per my proposal of
yesterday.

This should be noted as a source code change in the 8.4 release notes,
since it's likely to require changes in add-on modules.
2009-01-07 13:44:37 +00:00
Magnus Hagander b09f930d2e Add hba parameter include_realm to krb5, gss and sspi authentication, used
to pass the full username@realm string to the authentication instead of
just the username. This makes it possible to use pg_ident.conf to authenticate
users from multiple realms as different database users.
2009-01-07 13:09:21 +00:00
Magnus Hagander 32c469d7b1 Allow krb_realm (krb5, gssapi and sspi) and krb_server_hostname (krb5 only)
authentication options to be set in pg_hba.conf on a per-line basis, to
override the defaults set in postgresql.conf.
2009-01-07 12:38:11 +00:00
Magnus Hagander af26089841 Add appropriate text for SIGHUP parameters instead of just removing it
like previous patch did.

Per note from Tom Lane
2009-01-07 12:21:47 +00:00
Bruce Momjian d319a65358 Break out \distv into four separate lines in the psql documentation, for
clarity.
2009-01-07 04:51:34 +00:00
Bruce Momjian f5ed2ee533 Add documentation for new \d*S* patch, and clean up some of the docs.
Fix \do and trigger display for the patch too.
2009-01-06 23:01:57 +00:00
Bruce Momjian e825fac2a3 Document that Cygwin does not support OpenSSL. 2009-01-06 19:42:57 +00:00
Tom Lane e228624011 Remove references to pgsql-ports and pgsql-patches mailing lists from
various documentation, since those lists are now dead/deprecated.
Point to pgsql-bugs and/or pgsql-hackers as appropriate.
2009-01-06 17:27:06 +00:00
Tom Lane 7c63d0c72e Change a couple of ill-advised uses of INFO elog level to WARNINGs; in
particular this allows EmitWarningsOnPlaceholders messages to show up in the
postmaster log by default.  Update elog.h comment to make it clearer what INFO
is for, and fix one example in the SGML docs that was misusing it.  Per my
gripe of yesterday.
2009-01-06 16:39:52 +00:00
Bruce Momjian b32a290bdf Update SELECT version() to show whether it is a 32 or 64-bit backend binary. 2009-01-06 03:05:23 +00:00
Tom Lane b0a6ad70a1 Add a --role option to pg_dump, pg_dumpall, and pg_restore. This allows
performing dumps and restores in accordance with a security policy that
forbids logging in directly as superuser, but instead specifies that you
should log into an admin account and then SET ROLE to the superuser.

In passing, clean up some ugly and mostly-broken code for quoting shell
arguments in pg_dumpall.

Benedek László, with some help from Tom Lane
2009-01-05 16:54:37 +00:00
Bruce Momjian f42a7f1e62 Update Japanese FAQ.
Jun Kuwamura
2009-01-05 15:04:59 +00:00
Tom Lane 7466eeac61 Add contrib/pg_stat_statements for server-wide tracking of statement execution
statistics.

Takahiro Itagaki
2009-01-04 22:19:59 +00:00
Magnus Hagander 184341309e Today is find-typo-in-old-patches day. Fix wrong cut/paste in ident
documentation.
2009-01-02 11:51:53 +00:00
Magnus Hagander a27addbc87 Make it possible to change Kerberos/GSSAPI parameters without restarting
the postmaster. They are only used in backend processes, so it's just
a matter of re-labeling the GUCs.
2009-01-02 10:33:20 +00:00
Tom Lane ccdb6627ee Tweak guc.c to allow underscores in the names of custom variable classes,
and change auto_explain's custom GUC variables to be named auto_explain.xxx
not just explain.xxx.  Per discussion in connection with the
pg_stat_statements patch, it seems like a good idea to have the convention
that custom variable classes are named the same as their defining module.
Committing separately since this should happen regardless of what happens
with pg_stat_statements itself.
2009-01-02 01:16:02 +00:00
Bruce Momjian 511db38ace Update copyright for 2009. 2009-01-01 17:24:05 +00:00
Tom Lane df0ea5a1cd Throw error if a <window definition> references a window that already has a
frame clause, as appears to be required by the fine print in the SQL spec.
Per discussion with Pavel, not doing so risks user confusion.
2008-12-31 23:42:56 +00:00
Tom Lane 26ce4e85a1 Add a WINDOW attribute to CREATE FUNCTION, and teach pg_dump about it,
so that user-defined window functions are possible.  For the moment you'll
have to write them in C, for lack of any interface to the WindowObject API
in the available PLs, but it's better than no support at all.

There was some debate about the best syntax for this.  I ended up choosing
the "it's an attribute" position --- the other approach will inevitably be
more work, and the likely market for user-defined window functions is
probably too small to justify it.
2008-12-31 02:25:06 +00:00
Tom Lane 8e8854daa2 Add some basic support for window frame clauses to the window-functions
patch.  This includes the ability to force the frame to cover the whole
partition, and the ability to make the frame end exactly on the current row
rather than its last ORDER BY peer.  Supporting any more of the full SQL
frame-clause syntax will require nontrivial hacking on the window aggregate
code, so it'll have to wait for 8.5 or beyond.
2008-12-31 00:08:39 +00:00
Tom Lane 2c38b8c715 Fix thinko in documentation of default window frame behavior,
per Hitoshi Harada.
2008-12-29 18:23:53 +00:00
Tom Lane 95b07bc7f5 Support window functions a la SQL:2008.
Hitoshi Harada, with some kibitzing from Heikki and Tom.
2008-12-28 18:54:01 +00:00
Tom Lane ea7d5199e5 Add a new column proiswindow to pg_proc. It doesn't actually do anything
useful yet, but I'm tired of re-merging this aspect of the window functions
patch.
2008-12-19 18:25:20 +00:00
Peter Eisentraut cae565e503 SQL/MED catalog manipulation facilities
This doesn't do any remote or external things yet, but it gives modules
like plproxy and dblink a standardized and future-proof system for
managing their connection information.

Martin Pihlak and Peter Eisentraut
2008-12-19 16:25:19 +00:00
Tom Lane e32014d85d Add a couple of cross-references to the docs about enum types, per a
recent gripe that the info is hard to find.
2008-12-19 01:34:19 +00:00
Bruce Momjian 382af3a954 Add "not" to wal journaling text. 2008-12-18 22:34:21 +00:00
Bruce Momjian fa6116a3da Clarify documentation that journaling is not required for WAL or data files. 2008-12-18 22:21:16 +00:00
Tom Lane 517ae4039e Code review for function default parameters patch. Fix numerous problems as
per recent discussions.  In passing this also fixes a couple of bugs in
the previous variadic-parameters patch.
2008-12-18 18:20:35 +00:00
Bruce Momjian cee63eab8d Update documentation table describing how shared memory is used by
various facilities.
2008-12-18 17:03:09 +00:00
Peter Eisentraut a666d28543 Add note that TRUNCATE uses an access exclusive lock. This apparently
surprised/confused some users.
2008-12-18 10:45:00 +00:00
Alvaro Herrera 5434e46986 Add note to the shared memory sizing table about needing to use page count in
shared_buffers and wal_buffers, not size in bytes.  Per discussion.
2008-12-16 19:30:43 +00:00
Bruce Momjian 7ac5727659 Fix wording of section comparing triggers and rules; old wording as
confusing.
2008-12-16 03:12:08 +00:00
Bruce Momjian 30c6202a2a Add documentation that pg_standby sleeps on Win32 because of 'copy' behavior. 2008-12-15 22:08:35 +00:00
Tom Lane 4da65a23e7 Code review for CREATE OR REPLACE VIEW patch. Do things in a saner order to
result in hopefully-less-confusing error messages when the new definition
isn't compatible with the old; minor other cleanup.
2008-12-15 21:35:31 +00:00
Magnus Hagander 5f3724dd7c Support specifying filename for SSL certificate, key, root certificate store
and certificate revokation list by using connection parameters or environment
variables.

Original patch by Mark Woodward, heavily reworked by Alvaro Herrera and
Magnus Hagander.
2008-12-15 10:28:22 +00:00
Tom Lane 65e3ea7641 Increase the default value of default_statistics_target from 10 to 100,
and its maximum value from 1000 to 10000.  ALTER TABLE SET STATISTICS
similarly now allows a value up to 10000.  Per discussion.
2008-12-13 19:13:44 +00:00
Tom Lane 17dc173660 To reduce confusion over whether VACUUM FULL is needed for anti-wraparound
vacuuming (it's not), say "database-wide VACUUM" instead of "full-database
VACUUM" in the relevant hint messages.  Also, document the permissions needed
to do this.  Per today's discussion.
2008-12-11 18:16:18 +00:00
Peter Eisentraut 218b4e8dd8 Append major version number and for libraries soname major version number
to the gettext domain name, to simplify parallel installations.

Also, rename set_text_domain() to pg_bindtextdomain(), because that is what
it does.
2008-12-11 07:34:09 +00:00
Bruce Momjian 253fa736b9 Update journaling performance docs based on comments by Michael Renner. 2008-12-10 11:05:49 +00:00
Tom Lane 5932915fef Add a specific example of parenthesizing when extracting a field of a
composite column.  Might help cut down on future questions...
2008-12-09 20:52:03 +00:00
Magnus Hagander 9edd720050 Clearify how processes are started by autovacuum, and what the effect
of autovacuum_max_workers parameter is.

Per discussion with Alvaro.
2008-12-08 20:30:58 +00:00
Magnus Hagander bd33aca36e Add note that autovacuum can use up several times maintenance_work_mem,
with warning against setting it too high.
2008-12-08 15:11:39 +00:00
Alvaro Herrera aa7f00464d Desultorily enclose programlisting tags in CDATA, to get rid of some obnoxious
SGML-escaping.
2008-12-07 23:46:39 +00:00
Bruce Momjian ff1ea2173a Allow CREATE OR REPLACE VIEW to add columns to the _end_ of the view.
Robert Haas
2008-12-06 23:22:46 +00:00
Bruce Momjian 31076c8beb Document that non-data journaling is a recommended mount option. 2008-12-06 21:34:27 +00:00
Peter Eisentraut 455dffbb73 Default values for function arguments
Pavel Stehule, with some tweaks by Peter Eisentraut
2008-12-04 17:51:28 +00:00
Peter Eisentraut 44ff90966c Update key words table to 8.4 and SQL:2008. 2008-12-03 12:39:57 +00:00
Magnus Hagander b0729b8d4e Documentation for wildcard certificates patch 2008-12-02 12:42:11 +00:00
Peter Eisentraut 6355e69d1e Add braces to clarify syntax synopsis 2008-12-01 09:38:08 +00:00
Peter Eisentraut e3764aa1b1 Small correction 2008-12-01 09:20:37 +00:00
Peter Eisentraut d653d47f37 typo 2008-12-01 08:24:19 +00:00
Tom Lane 3f936aacc0 Add a "LIKE = typename" clause to CREATE TYPE for base types. This allows
the basic representational details (typlen, typalign, typbyval, typstorage)
to be copied from an existing type rather than listed explicitly in the
CREATE TYPE command.  The immediate reason for this is to provide a simple
solution for add-on modules that want to define types represented as int8,
float4, or float8: as of 8.4 the appropriate PASSEDBYVALUE setting is
platform-specific and so it's hard for a SQL script to know what to do.

This patch fixes the contrib/isn breakage reported by Rushabh Lathia.
2008-11-30 19:01:29 +00:00
Magnus Hagander 5d2a1a41d0 Support regular expressions in pg_ident.conf. 2008-11-28 14:26:58 +00:00
Peter Eisentraut c3cee16fe8 Add that PL/Java is an implementation of SQL/JRT, and drop claim that
PL/pgSQL has much to do with SQL/PSM.
2008-11-27 12:12:02 +00:00
Tom Lane e309739670 Tweak wording of DISCARD ALL description to avoid giving the impression
that the presented list of equivalent operations is meant to be the
primary definition of what it does.  Per comment from Guillaume Smet.
2008-11-27 00:28:06 +00:00
Peter Eisentraut f900afff3e configure check for docbook2man program, used in the new XML-based man
page build target.  This covers from-source, Debian, and Fedora
installation variants.
2008-11-26 11:26:54 +00:00
Tom Lane 1b26b07379 Make DISCARD ALL discard advisory locks, too. Marko Kreen 2008-11-26 01:21:08 +00:00
Tom Lane 8a10096440 information_schema.key_column_usage.position_in_unique_constraint was
misdocumented as not being implemented.  In reality it has worked since
the release of 8.2.
2008-11-25 20:47:42 +00:00
Tom Lane 1304f297a4 Remove PGINTERVALSTYLE from the set of special environment variables for
libpq.  As noted by Peter, adding this variable created a risk of unexpected
connection failures when talking to older server versions, and since it
doesn't do anything you can't do with PGOPTIONS, it doesn't seem really
necessary.  Removing it does occasion a few extra lines in pg_regress.c,
but saving a getenv() call per libpq connection attempt is perhaps worth
that anyway.
2008-11-25 19:30:42 +00:00
Peter Eisentraut 0884acbcab Move FAQ_AIX information to installation instructions.
The information on why the shared libraries are built the way they are
was not relevant to end users and has been made a mailing list archive
link in Makefile.shlib.
2008-11-24 11:59:37 +00:00
Peter Eisentraut a378555501 CLUSTER VERBOSE and corresponding clusterdb --verbose option
Jim Cox and Peter Eisentraut
2008-11-24 08:46:04 +00:00
Tom Lane 86422cbbfc Minor copy-editing. 2008-11-21 20:21:59 +00:00
Magnus Hagander bae2116ac6 Document which GUC settings are enums and not strings, along with a short
paragraph about what that means.
2008-11-21 19:42:12 +00:00
Magnus Hagander e5c032d898 Docs update for enumvals patch. 2008-11-21 19:31:58 +00:00
Peter Eisentraut 47d6d641dd Include the platform "FAQs" into the installation instructions.
I weeded out some really old information along the way.
FAQ_AIX needs separate consideration and will be dealt with later.
2008-11-21 16:46:19 +00:00
Peter Eisentraut 5758d5ea31 Use relation_expr for TABLE command, requested by Tom. 2008-11-21 11:47:55 +00:00
Tom Lane 3d7ac0d0b1 Note that the example aggregate array_accum is comparable to the now
built-in array_agg.  Per suggestion from Robert Haas.
2008-11-20 21:10:44 +00:00
Bruce Momjian 170b66a0c5 Issue a proper error message when MD5 is attempted when
db_user_namespace is enabled.

Also document this limitation.
2008-11-20 20:45:30 +00:00
Peter Eisentraut b09a1a2942 TABLE command 2008-11-20 14:04:46 +00:00
Magnus Hagander f179d5ea99 Add support for using SSL client certificates to authenticate to the
database (only for SSL connections, obviously).
2008-11-20 11:48:26 +00:00
Magnus Hagander 3c486fbd1c Control client certificate requesting with the pg_hba option "clientcert"
instead of just relying on the root certificate file to be present.
2008-11-20 09:29:36 +00:00
Peter Eisentraut 5054867632 Add WITH as a refname to the SELECT reference page.
Now "\help WITH" works and there will be a separate WITH(7) man page.
2008-11-19 12:21:57 +00:00
Bruce Momjian 89ad92a216 Add "Most Common Implementation" row to high availablity table so the
table is less abstract.  Most common implementations were already
mentioned in the text.
2008-11-19 04:46:37 +00:00
Tom Lane e125e28e78 Add auto-explain contrib module for automatic logging of the plans of
slow-running queries.

Takahiro Itagaki
2008-11-19 02:59:28 +00:00
Peter Eisentraut f426fbf746 Ident authentication over Unix-domain sockets on Solaris, using
getpeerucred() function.

Author: Garick Hamlin <ghamlin@isc.upenn.edu>
2008-11-18 13:10:20 +00:00
Bruce Momjian 29ad832dba Document that Bucardo is an example of mulit-master replication with
conflict resolution.
2008-11-17 18:55:14 +00:00
Tom Lane 18004101ac Modify UPDATE/DELETE WHERE CURRENT OF to use the FOR UPDATE infrastructure to
locate the target row, if the cursor was declared with FOR UPDATE or FOR
SHARE.  This approach is more flexible and reliable than digging through the
plan tree; for instance it can cope with join cursors.  But we still provide
the old code for use with non-FOR-UPDATE cursors.  Per gripe from Robert Haas.
2008-11-16 17:34:28 +00:00
Tom Lane 07c179a82b Document a gotcha that happens on Windows when using libpq's new event
procedure support: it's possible to get confused because exported procedures
have two different addresses.  Per Andrew Chernow.
2008-11-14 22:58:51 +00:00
Tom Lane 32cc9e5533 Reduce contrib/intagg to a thin wrapper around the new core functions
array_agg() and unnest().  We could drop it entirely in the future,
but let's keep it for a release or two as a compatibility assist.
2008-11-14 19:58:45 +00:00
Peter Eisentraut 6e82501083 Since doc/src/sgml already builds the HTML docs twice to resolve index
entries, we don't have to do two builds here as well.
2008-11-14 10:43:59 +00:00
Peter Eisentraut d129255077 Set SQL man pages to be section 7 by default, and only transform them to
another section if required by the platform (instead of the old way of
building them in section "l" and always transforming them to the
platform-specific section).

This speeds up the installation on common platforms, and it avoids some
funny business with the man page tools and build process.
2008-11-14 10:22:48 +00:00
Tom Lane c889ebce0a Implement the basic form of UNNEST, ie unnest(anyarray) returns setof
anyelement.  This lacks the WITH ORDINALITY option, as well as the multiple
input arrays option added in the most recent SQL specs.  But it's still a
pretty useful subset of the spec's functionality, and it is enough to
allow obsoleting contrib/intagg.
2008-11-14 00:51:47 +00:00
Tom Lane c23b6fa7b5 Marginal editorial improvements for array_agg patch documentation. 2008-11-13 23:01:09 +00:00
Peter Eisentraut 3379fae6de array_agg aggregate function, as per SQL:2008, but without ORDER BY clause
Rearrange the documentation a bit now that array_agg and xmlagg have similar
semantics and issues.

best of Robert Haas, Jeff Davis, Peter Eisentraut
2008-11-13 15:59:51 +00:00
Magnus Hagander c89404edf3 Fix libpq certificate validation for SSL connections.
Add config parameter "sslverify" to control the verification. Default
is to do full verification.

Clean up some old SSL code that never really worked.
2008-11-13 09:45:25 +00:00
Peter Eisentraut 2b2fb7d85d Support for man page links, if a man page has more than one refname.
We don't actually use this anywhere, but it might come in handy for dealing
with SELECT/WITH/TABLE.

It works with both the old and the new man page target (for some value of
"works").
2008-11-12 16:01:51 +00:00
Peter Eisentraut 18eeacc463 Remove unnecessary whitespace in refname elements. This confuses the
man page tools.
2008-11-12 15:53:34 +00:00
Peter Eisentraut 2655ec1f2c Add refentrytitle elements to refentry pages. Their absence confused the
man page tools somewhat.
2008-11-12 15:52:44 +00:00
Peter Eisentraut f98f6ee064 array_length() function, and for SQL compatibility also cardinality()
function as a special case.

This version still has the suspicious behavior of returning null for an
empty array (rather than zero), but this may need a wholesale revision of
empty array behavior, currently under discussion.

Jim Nasby, Robert Haas, Peter Eisentraut
2008-11-12 13:09:28 +00:00
Magnus Hagander bd059c2d1d Mention the tup_fetched column in pg_stat_database.
Greg Sabino Mullane
2008-11-11 20:06:21 +00:00
Tom Lane a4917bef0e Add support for input and output of interval values formatted per ISO 8601;
specifically, we can input either the "format with designators" or the
"alternative format", and we can output the former when IntervalStyle is set
to iso_8601.

Ron Mayer
2008-11-11 02:42:33 +00:00
Alvaro Herrera 6462e7b81c Add a --locale switch to createdb, to ease the creation of databases with
different locales.  This is just syntactical sweetener over --lc-collate and
--lc-ctype.  Per discussion.

While at it, properly document --lc-ctype and --lc-collate in SGML docs,
which apparently were forgotten (or purposefully ommited?) when they were
created.
2008-11-10 16:25:41 +00:00
Tom Lane c5451c22e3 Make relhasrules and relhastriggers work like relhasindex, namely we let
VACUUM reset them to false rather than trying to clean 'em up during DROP.
2008-11-10 00:49:37 +00:00
Tom Lane e4718f2c9e Replace pg_class.reltriggers with relhastriggers, which is just a boolean hint
("there might be triggers") rather than an exact count.  This is necessary
catalog infrastructure for the upcoming patch to reduce the strength of
locking needed for trigger addition/removal.  Split out and committed
separately for ease of reviewing/testing.

In passing, also get rid of the unused pg_class columns relukeys, relfkeys,
and relrefs, which haven't been maintained in many years and now have no
chance of ever being maintained (because of wishing to avoid locking).

Simon Riggs
2008-11-09 21:24:33 +00:00
Tom Lane 1d577f5e49 Add a startup check that pg_xlog and pg_xlog/archive_status exist.
If the latter doesn't exist, automatically recreate it.  (We don't do
this for pg_xlog, though, per discussion.)

Jonah Harris
2008-11-09 17:51:15 +00:00
Tom Lane dbf57d31f8 Add some documentation about handling of fractions in interval input.
(It's always worked like this, but we never documented it before.)
2008-11-09 17:09:48 +00:00
Tom Lane df7641e25a Add a new GUC variable called "IntervalStyle" that decouples interval output
from DateStyle, and create a new interval style that produces output matching
the SQL standard (at least for interval values that fall within the standard's
restrictions).  IntervalStyle is also used to resolve the conflict between the
standard and traditional Postgres rules for interpreting negative interval
input.

Ron Mayer
2008-11-09 00:28:35 +00:00
Tom Lane 399ad77c66 Improve documentation of pg_typeof, per gripe from David Wheeler. 2008-11-07 22:54:41 +00:00
Tom Lane 6517f377d6 Implement ALTER DATABASE SET TABLESPACE to move a whole database (or at least
as much of it as lives in its default tablespace) to a new tablespace.

Guillaume Lelarge, with some help from Bernd Helmle and Tom Lane
2008-11-07 18:25:07 +00:00
Tom Lane cdc197cf31 Improve psql's \dC command to take a pattern parameter. Casts are shown
if their source or target types match the pattern (using the same definition
of "match" as \dT does).  Per recent discussion.
2008-11-06 15:18:36 +00:00
Bruce Momjian e33e0c43fe Document that SSL is only possible on tcp/ip connections in the
postgresql.conf 'ssl' section.
2008-11-04 22:40:40 +00:00
Bruce Momjian c227ccc2f7 Document that 'sslmode' is ignored for Unix domain socket communication;
backpatch to 8.3.X.
2008-11-04 22:36:07 +00:00
Peter Eisentraut 725ba51f2c Experimental new support for building man pages via docbook2x, an XSL-based
tool chain.  With some polishing, this might help us get rid of our ancient
and crufty man page build mechanism.
2008-11-04 14:58:22 +00:00
Peter Eisentraut 254aecb704 ADD array_ndims function
Author: Robert Haas <robertmhaas@gmail.com>
2008-11-04 14:49:12 +00:00
Bruce Momjian 4253f016c9 Add missing colon to docs. 2008-11-04 04:18:50 +00:00
Bruce Momjian ac3797a913 Remove tabs from SGML file. 2008-11-04 00:59:45 +00:00
Tom Lane 31b15fe8dc Disallow LOCK TABLE outside a transaction block (or function), since this case
almost certainly represents user error.  Per a gripe from Sebastian Böhm
and subsequent discussion.
2008-11-04 00:57:19 +00:00
Peter Eisentraut 84aa797292 Allow uuid_in() to parse a wider variety of variant input formats for the UUID
data type.  This patch takes the approach of allowing an optional hyphen after
each group of four hex digits.

Author: Robert Haas <robertmhaas@gmail.com>
2008-11-03 22:14:40 +00:00
Andrew Dunstan f0dae70431 suppress_redundant_updates_trigger function. 2008-11-03 20:17:21 +00:00
Tom Lane b8fab2411d Add pg_typeof() function.
Brendan Jurd
2008-11-03 17:51:13 +00:00
Alvaro Herrera aa3288146a Update URL to Docbook DSSSL stylesheets, per Gabriele Bartolini. 2008-11-03 15:39:38 +00:00
Tom Lane 3c2313f481 Change the pgstat logic so that the stats collector writes the stats file only
upon requests from backends, rather than on a fixed 500msec cycle.  (There's
still throttling logic to ensure it writes no more often than once per
500msec, though.)  This should result in a significant reduction in stats file
write traffic in typical scenarios where the stats are demanded only
infrequently.

This approach also means that the former difficulty with changing
stats_temp_directory on-the-fly has gone away, so remove the caution about
that as well as the thrashing we did to minimize the trouble window.

In passing, also fix pgstat_report_stat() so that we will send a stats
message if we have function call stats but not table stats to report;
this fixes a bug in the recent patch to support function-call stats.

Martin Pihlak
2008-11-03 01:17:08 +00:00
Tom Lane 9b46abb7c4 Allow SQL-language functions to return the output of an INSERT/UPDATE/DELETE
RETURNING clause, not just a SELECT as formerly.

A side effect of this patch is that when a set-returning SQL function is used
in a FROM clause, performance is improved because the output is collected into
a tuplestore within the function, rather than using the less efficient
value-per-call mechanism.
2008-10-31 19:37:56 +00:00
Peter Eisentraut 29077051de The conversion rule from postgres.sgml to postgres.xml didn't work with
BSD sed.  So write it in Perl, which is more portable and a bit faster, too.
We already use Perl for standard documentation builds, so this imposes no
additional requirement.
2008-10-31 14:35:30 +00:00
Heikki Linnakangas 092bc49653 Add support for user-defined I/O conversion casts. 2008-10-31 08:39:22 +00:00
Tom Lane d1e384884c Update back-branch release notes. 2008-10-30 22:22:24 +00:00