postgresql/contrib
Tom Lane 0426f349ef Rearrange the handling of error context reports.
Remove the code in plpgsql that suppressed the innermost line of CONTEXT
for messages emitted by RAISE commands.  That was never more than a quick
backwards-compatibility hack, and it's pretty silly in cases where the
RAISE is nested in several levels of function.  What's more, it violated
our design theory that verbosity of error reports should be controlled
on the client side not the server side.

To alleviate the resulting noise increase, introduce a feature in libpq
and psql whereby the CONTEXT field of messages can be suppressed, either
always or only for non-error messages.  Printing CONTEXT for errors only
is now their default behavior.

The actual code changes here are pretty small, but the effects on the
regression test outputs are widespread.  I had to edit some of the
alternative expected outputs by hand; hopefully the buildfarm will soon
find anything I fat-fingered.

In passing, fix up (again) the output line counts in psql's various
help displays.  Add some commentary about how to verify them.

Pavel Stehule, reviewed by Petr Jelínek, Jeevan Chalke, and others
2015-09-05 11:58:33 -04:00
..
adminpack Update copyright for 2015 2015-01-06 11:43:47 -05:00
auth_delay Add file version information to most installed Windows binaries. 2014-07-14 14:07:52 -04:00
auto_explain Rearrange explain.c's API so callers need not embed sizeof(ExplainState). 2015-01-15 13:39:33 -05:00
btree_gin pgindent run for 9.5 2015-05-23 21:35:49 -04:00
btree_gist Fix misc typos. 2015-09-05 11:35:49 +03:00
chkpass Avoid returning undefined bytes in chkpass_in(). 2015-02-14 12:20:56 -05:00
citext Fix incorrect declaration of citext's regexp_matches() functions. 2015-05-05 15:51:22 -04:00
cube Fix misc typos. 2015-09-05 11:35:49 +03:00
dblink Rearrange the handling of error context reports. 2015-09-05 11:58:33 -04:00
dict_int Update copyright for 2015 2015-01-06 11:43:47 -05:00
dict_xsyn Update copyright for 2015 2015-01-06 11:43:47 -05:00
earthdistance Improve speed of make check-world 2015-04-23 08:59:52 -04:00
file_fdw TABLESAMPLE, SQL Standard and extensible 2015-05-15 14:37:10 -04:00
fuzzystrmatch pgindent run for 9.5 2015-05-23 21:35:49 -04:00
hstore pgindent run for 9.5 2015-05-23 21:35:49 -04:00
hstore_plperl Rearrange the handling of error context reports. 2015-09-05 11:58:33 -04:00
hstore_plpython Rearrange the handling of error context reports. 2015-09-05 11:58:33 -04:00
intagg Fix typos in some error messages thrown by extension scripts when fed to psql. 2014-08-25 18:30:37 +02:00
intarray Add selectivity estimation functions for intarray operators. 2015-07-21 20:59:24 +03:00
isn contrib/isn now needs a .gitignore file. 2015-08-02 23:57:32 -04:00
lo Fix typos in some error messages thrown by extension scripts when fed to psql. 2014-08-25 18:30:37 +02:00
ltree pgindent run for 9.5 2015-05-23 21:35:49 -04:00
ltree_plpython Rearrange the handling of error context reports. 2015-09-05 11:58:33 -04:00
oid2name Add file version information to most installed Windows binaries. 2014-07-14 14:07:52 -04:00
pageinspect Use materialize SRF mode in brin_page_items 2015-08-13 13:02:10 -03:00
passwordcheck Update copyright for 2015 2015-01-06 11:43:47 -05:00
pg_buffercache pgindent run for 9.5 2015-05-23 21:35:49 -04:00
pg_freespacemap Fix typos in some error messages thrown by extension scripts when fed to psql. 2014-08-25 18:30:37 +02:00
pg_prewarm Update copyright for 2015 2015-01-06 11:43:47 -05:00
pg_standby Don't use function definitions looking like old-style ones. 2015-08-15 17:25:00 +02:00
pg_stat_statements Redesign tablesample method API, and do extensive code review. 2015-07-25 14:39:00 -04:00
pg_trgm This supports the triconsistent function for pg_trgm GIN opclass 2015-07-20 18:18:48 +03:00
pgcrypto pgindent run for 9.5 2015-05-23 21:35:49 -04:00
pgrowlocks Optimize locking a tuple already locked by another subxact 2015-04-10 13:47:15 -03:00
pgstattuple Prevent pgstattuple() from reporting BRIN as unknown index. 2015-07-14 22:36:51 +09:00
postgres_fdw Use appendStringInfoString/Char et al where appropriate. 2015-07-02 12:36:03 +03:00
seg Move strategy numbers to include/access/stratnum.h 2015-05-15 17:03:16 -03:00
sepgsql Rearrange the handling of error context reports. 2015-09-05 11:58:33 -04:00
spi Collection of typo fixes. 2015-05-20 16:56:22 +03:00
sslinfo Make Port->ssl_in_use available, even when built with !USE_SSL 2014-11-25 09:46:11 +02:00
start-scripts Fix typo in linux startup script. 2015-04-26 09:43:15 -04:00
tablefunc Fix a number of places that produced XX000 errors in the regression tests. 2015-08-02 23:49:19 -04:00
tcn Update copyright for 2015 2015-01-06 11:43:47 -05:00
test_decoding Remove bogus step from test_decoding isolation tests. 2015-08-14 22:40:55 -04:00
tsearch2 Add an optional missing_ok argument to SQL function current_setting(). 2015-07-02 16:41:07 -04:00
tsm_system_rows Redesign tablesample method API, and do extensive code review. 2015-07-25 14:39:00 -04:00
tsm_system_time Some platforms now need contrib/tsm_system_time to be linked with libm. 2015-07-25 16:37:12 -04:00
unaccent Make unaccent handle all diacritics known to Unicode, and expand ligatures correctly 2015-09-04 12:51:53 +03:00
uuid-ossp Update copyright for 2015 2015-01-06 11:43:47 -05:00
vacuumlo vacuumlo: Avoid unlikely memory leak. 2015-01-14 15:14:20 -05:00
xml2 Replace a bunch more uses of strncpy() with safer coding. 2015-01-24 13:05:42 -05:00
Makefile Finish removing pg_audit 2015-05-28 12:48:25 -04:00
README Rename 'gmake' to 'make' in docs and recommended commands 2014-02-12 17:29:19 -05:00
contrib-global.mk Remove cvs keywords from all files. 2010-09-20 22:08:53 +02:00

README

The PostgreSQL contrib tree
---------------------------

This subtree contains porting tools, analysis utilities, and plug-in
features that are not part of the core PostgreSQL system, mainly
because they address a limited audience or are too experimental to be
part of the main source tree.  This does not preclude their
usefulness.

User documentation for each module appears in the main SGML
documentation.

When building from the source distribution, these modules are not
built automatically, unless you build the "world" target.  You can
also build and install them all by running "make all" and "make
install" in this directory; or to build and install just one selected
module, do the same in that module's subdirectory.

Some directories supply new user-defined functions, operators, or
types.  To make use of one of these modules, after you have installed
the code you need to register the new SQL objects in the database
system by executing a CREATE EXTENSION command.  In a fresh database,
you can simply do

    CREATE EXTENSION module_name;

See the PostgreSQL documentation for more information about this
procedure.