Commit 15aa0252 authored by Tom Lane's avatar Tom Lane

Make a copy-editing pass over the 8.4 release notes.

parent f7a08e71
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.627 2009/04/11 02:06:16 momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.628 2009/04/13 06:05:12 tgl Exp $ -->
<!--
Typical markup:
......@@ -69,7 +69,7 @@ do it for earlier branch release files.
<note>
<title>Release date</title>
<simpara>2009-XX-XX, ITEMS CURRENT AS OF 2009-04-08</simpara>
<simpara>2009-??-??, ITEMS CURRENT AS OF 2009-04-08</simpara>
</note>
<sect2>
......@@ -78,9 +78,9 @@ do it for earlier branch release files.
<para>
After many years of development, <productname>PostgreSQL</> has
become feature-complete in many areas. This release shows a
targeted approach to adding features (e.g. authentication,
targeted approach to adding features (e.g., authentication,
monitoring, space reuse), and adds capabilities defined in the
later SQL standards; the major areas of enhancement are:
later SQL standards. The major areas of enhancement are:
</para>
<itemizedlist>
......@@ -131,7 +131,7 @@ do it for earlier branch release files.
<listitem>
<para>
Improved join performance for EXISTS and NOT EXISTS queries
Improved join performance for <literal>EXISTS</> and <literal>NOT EXISTS</> queries
</para>
</listitem>
......@@ -214,8 +214,9 @@ do it for earlier branch release files.
</para>
<para>
This was available previously via a configure
--enable-integer-datetimes option.
Previously this was selected by <application>configure</>'s
<option>--enable-integer-datetimes</> option. To retain
the old behavior, build with <option>--disable-integer-datetimes</>.
</para>
</listitem>
......@@ -225,7 +226,7 @@ do it for earlier branch release files.
</para>
<para>
The utility only worked on a few platforms; users should use
The utility only worked on a few platforms. Users should use
their operating system tools instead.
</para>
</listitem>
......@@ -240,15 +241,15 @@ do it for earlier branch release files.
<listitem>
<para>
Change <filename>postgresql.conf</> default for
Change default setting for
<literal>log_min_messages</> to <literal>warning</> (previously
<literal>notice</>) to reduce log file volume (Tom)
it was <literal>notice</>) to reduce log file volume (Tom)
</para>
</listitem>
<listitem>
<para>
Have <literal>debug_print_parse</>, <literal>debug_print_rewritten</>,
Make <literal>debug_print_parse</>, <literal>debug_print_rewritten</>,
and <literal>debug_print_plan</>
output appear at <literal>LOG</> message level, not
<literal>DEBUG1</> as formerly (Tom)
......@@ -263,33 +264,33 @@ do it for earlier branch release files.
<listitem>
<para>
Make <varname>log_temp_files</> super-user set only, like other
logging options (Simon)
Remove <varname>explain_pretty_print</> parameter (no longer needed) (Tom)
</para>
</listitem>
<listitem>
<para>
Disable appending of the epoch date/time when no <literal>%</>
escapes are present in <literal>log_filename</> (Robert Haas)
Make <varname>log_temp_files</> settable by superusers only, like other
logging options (Simon Riggs)
</para>
</listitem>
<listitem>
<para>
This change was made because some users wanted a fixed filename,
for use with an external log rotation tool.
Disable appending of the epoch date/time when no <literal>%</>
escapes are present in <literal>log_filename</> (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Remove <varname>explain_pretty_print</> parameter (no longer needed) (Tom)
This change was made because some users wanted a fixed log filename,
for use with an external log rotation tool.
</para>
</listitem>
<listitem>
<para>
Remove <varname>log_restartpoints</> from <filename>recovery.conf</>;
instead use <varname>log_checkpoints</> (Simon Riggs)
instead use <varname>log_checkpoints</> (Simon)
</para>
</listitem>
......@@ -300,22 +301,24 @@ do it for earlier branch release files.
</para>
<para>
This breaks compatibility with pre-<productname>PostgreSQL</> 7.2 versions.
This breaks compatibility with pre-<productname>PostgreSQL</> 7.2
clients, as there is no longer any non-plaintext password method
that they can use.
</para>
</listitem>
<listitem>
<para>
Remove <varname>krb_realm</> and <varname>krb_server_hostname</>, now
<filename>pg_hba.conf</>-only settings (Magnus)
Remove <varname>krb_realm</> and <varname>krb_server_hostname</>;
these are now set in <filename>pg_hba.conf</> instead (Magnus)
</para>
</listitem>
<listitem>
<para>
The <link
linkend="release-8-4-pg-hba-conf"><filename>pg_hba.conf</></link>
section below also has extensive changes related to migration.
There are also significant changes in <link
linkend="release-8-4-pg-hba-conf"><filename>pg_hba.conf</></link>,
as described below.
</para>
</listitem>
......@@ -331,11 +334,11 @@ do it for earlier branch release files.
<listitem>
<para>
Force child tables to inherit <literal>CHECK</> constraints from parents
(Alex Hunsaker, Nikhil Sontakke, Tom Lane)
(Alex Hunsaker, Nikhil Sontakke, Tom)
</para>
<para>
Formerly it was possible to delete such a constraint from a child
Formerly it was possible to drop such a constraint from a child
table, allowing rows that violate the constraint to be visible
when scanning the parent table. This was deemed inconsistent,
as well as contrary to SQL standard.
......@@ -344,13 +347,14 @@ do it for earlier branch release files.
<listitem>
<para>
Change <command>TRUNCATE</> and <command>LOCK</> behavior to
apply to all child tables (Peter)
Change <command>TRUNCATE</> and <command>LOCK</> to
apply to child tables of the specified table(s) (Peter)
</para>
<para>
There is a new <literal>ONLY</> clause which disables this
behavior.
These commands now accept an <literal>ONLY</> option that prevents
processing child tables; this option must be used if the old
behavior is needed.
</para>
</listitem>
......@@ -368,8 +372,19 @@ do it for earlier branch release files.
</para>
<para>
Such an operation is useless because the lock would be immediately
released.
Such an operation is useless because the lock would be released
immediately.
</para>
</listitem>
<listitem>
<para>
Sequences now contain an additional <structfield>start_value</> column
(Zoltan Boszormenyi)
</para>
<para>
This supports <command>ALTER SEQUENCE ... RESTART</>.
</para>
</listitem>
......@@ -385,20 +400,20 @@ do it for earlier branch release files.
<listitem>
<para>
Have <literal>NUMERIC 0 ^ 4.3</> return <literal>1</>, rather
than an error, and have <literal>0 ^ 0.0</> return <literal>1</>,
Make <type>numeric</> zero raised to a fractional power return
<literal>0</>, rather than throwing an error, and make
<type>numeric</> zero raised to the zero power return <literal>1</>,
rather than error (Bruce)
</para>
<para>
This was already the <type>float8</> behavior.
This matches the longstanding <type>float8</> behavior.
</para>
</listitem>
<listitem>
<para>
Remove code that prevented unary minus of floating-point values
from producing <literal>-0</> (Tom)
Allow unary minus of floating-point values to produce minus zero (Tom)
</para>
<para>
......@@ -410,7 +425,12 @@ do it for earlier branch release files.
<listitem>
<para>
Throw an error if an escape character is the last character in
a <literal>LIKE</> pattern (there is nothing to escape) (Tom)
a <literal>LIKE</> pattern (i.e., it has nothing to escape) (Tom)
</para>
<para>
Previously, such an escape character was silently ignored,
thus possibly masking application logic errors.
</para>
</listitem>
......@@ -460,24 +480,37 @@ do it for earlier branch release files.
<listitem>
<para>
Have <function>to_char()</>'s localized month/day names depend
on <varname>LC_TIME</>, not <varname>LC_MESSAGES</> (Euler
Taveira de Oliveira)
<varname>DateStyle</> no longer controls <type>interval</> output
formatting; instead there is a new variable <varname>IntervalStyle</>
(Ron Mayer)
</para>
</listitem>
<listitem>
<para>
Cause <function>to_date()</> and <function>to_timestamp()</>
to more consistently report errors on invalid input (Brendan
Jurd)
Improve consistency of handling of fractional seconds in
<type>timestamp</> and <type>interval</> output (Ron Mayer)
</para>
<para>
This may result in displaying a different number of fractional
digits than before, or rounding instead of truncating.
</para>
</listitem>
<listitem>
<para>
Make <function>to_char()</>'s localized month/day names depend
on <varname>LC_TIME</>, not <varname>LC_MESSAGES</> (Euler
Taveira de Oliveira)
</para>
</listitem>
<listitem>
<para>
Provide consistent rounding for fractional seconds (Ron Mayer)
bjm: combine with another item?
Cause <function>to_date()</> and <function>to_timestamp()</>
to more consistently report errors for invalid input (Brendan
Jurd)
</para>
</listitem>
......@@ -497,9 +530,10 @@ do it for earlier branch release files.
<listitem>
<para>
Require the existence of periods in <function>to_timestamp()</>
Require <function>to_timestamp()</> input to match
meridian (<literal>AM</>/<literal>PM</>) and era
(<literal>BC</>/<literal>AD</>) format designations to match
(<literal>BC</>/<literal>AD</>) format designations with
respect to presence of periods
(Brendan Jurd)
</para>
......@@ -509,13 +543,6 @@ do it for earlier branch release files.
</para>
</listitem>
<listitem>
<para>
<varname>DateStyle</> no longer controls <type>INTERVAL</>
output (use new variable <varname>IntervalStyle</>)
</para>
</listitem>
</itemizedlist>
</sect4>
......@@ -539,11 +566,12 @@ do it for earlier branch release files.
<listitem>
<para>
Improve optimizer statistics calculations (Tom, Jan Urbanski)
Improve optimizer statistics calculations (Jan Urbanski, Tom)
</para>
<para>
This includes improved statistics for full text columns.
In particular, estimates for full-text-search operators are
greatly improved.
</para>
</listitem>
......@@ -561,31 +589,23 @@ do it for earlier branch release files.
the previous behavior can be restored by
disabling <literal>enable_hashagg</>, but that is a very
performance-expensive fix. <literal>SELECT DISTINCT ON</> never
uses hashing.
uses hashing, however, so its behavior is unchanged.
</para>
</listitem>
<listitem>
<para>
New semi- and anti-joins (Tom)
Create explicit concepts of semi-joins and anti-joins (Tom)
</para>
<para>
While semi-joins merely replace existing <literal>IN</> joins,
anti-joins are a new capability for <literal>NOT EXISTS</>
clauses. This improves optimization possibilities.
</para>
</listitem>
<listitem>
<para>
Improve <literal>IN</>/<literal>ANY</>/<literal>EXISTS</>
processing (Tom)
</para>
<para>
<literal>IN</> and <literal>EXISTS</> now provide similar
performance for equivalent clauses.
This work formalizes our previous ad-hoc treatment of <literal>IN
(SELECT ...)</> clauses, and extends it to <literal>EXISTS</> and
<literal>NOT EXISTS</> clauses. It should result in significantly
better planning of <literal>EXISTS</> and <literal>NOT EXISTS</>
queries. In general, logically equivalent <literal>IN</> and
<literal>EXISTS</> clauses should now have similar performance,
whereas previously <literal>IN</> often won.
</para>
</listitem>
......@@ -603,13 +623,7 @@ do it for earlier branch release files.
<listitem>
<para>
Improve handling of subqueries by the optimizer (Tom)
</para>
</listitem>
<listitem>
<para>
Reduce I/O frequency of writing the backend statistics file
Reduce I/O load of writing the statistics collection file
by writing the file only when requested (Martin Pihlak)
</para>
</listitem>
......@@ -635,14 +649,13 @@ do it for earlier branch release files.
<listitem>
<para>
Modify <varname>constraint_exclusion</> to check for partitioned
tables by default when inheritance or <literal>UNION ALL</> is
used (Tom)
Perform <varname>constraint_exclusion</> checking by default
in queries involving inheritance or <literal>UNION ALL</> (Tom)
</para>
<para>
A new <varname>constraint_exclusion</> setting,
<literal>partition</>, was added to match this behavior.
<literal>partition</>, was added to specify this behavior.
</para>
</listitem>
......@@ -653,8 +666,8 @@ do it for earlier branch release files.
<para>
The amount of read-ahead is controlled by
<varname>effective_io_concurrency</>. This requires
<function>posix_fadvise()</> support in the kernel.
<varname>effective_io_concurrency</>. This feature is available only
if the kernel has <function>posix_fadvise()</> support.
</para>
</listitem>
......@@ -703,7 +716,7 @@ do it for earlier branch release files.
<listitem>
<para>
Convert many <filename>postgresql.conf</> settings to enumerated
values so <literal>pg_settings</> can easily display valid
values so <literal>pg_settings</> can display valid
values (Magnus)
</para>
</listitem>
......@@ -711,15 +724,15 @@ do it for earlier branch release files.
<listitem>
<para>
Add <varname>cursor_tuple_fraction</> parameter to control the
fraction of a cursor's rows expected to be requested by the
user (Robert Hell)
fraction of a cursor's rows that the planner assumes will be
fetched (Robert Hell)
</para>
</listitem>
<listitem>
<para>
Allow underscores in <filename>postgresql.conf</> custom variable
classes (Tom)
Allow underscores in the names of custom variable
classes in <filename>postgresql.conf</> (Tom)
</para>
</listitem>
......@@ -762,47 +775,49 @@ do it for earlier branch release files.
<listitem>
<para>
Parse <filename>pg_hba.conf</> in the postmaster so errors are
reported on reload (Magnus)
Parse <filename>pg_hba.conf</> fully when it is loaded,
so that errors are reported immediately (Magnus)
</para>
<para>
Previously errors in the file wouldn't be detected until clients
tried to connect, which could leave the system with a broken
file loaded.
Previously, most errors in the file wouldn't be detected until clients
tried to connect, so an erroneous file could render the system
unusable. With the new behavior, if an error is detected during
reload then the bad file is rejected and the postmaster continues
to use its old copy.
</para>
</listitem>
<listitem>
<para>
Remove the <literal>sameuser</> option, making it the default
if no usermap is specified (Magnus)
Show all parsing errors in <filename>pg_hba.conf</> instead of
aborting after the first one (Selena Deckelmann)
</para>
</listitem>
<listitem>
<para>
Change all authentication options to be <literal>name=value</>
settings (Magnus)
Remove the <literal>ident sameuser</> option, instead making that
behavior the default if no usermap is specified (Magnus)
</para>
</listitem>
<listitem>
<para>
Allow usermap parameter for all external authentication methods
(Magnus)
Change all authentication options to use <literal>name=value</>
syntax (Magnus)
</para>
</listitem>
<listitem>
<para>
Previously this was only supported for <literal>ident</>
authentication.
Allow a usermap parameter for all external authentication methods
(Magnus)
</para>
</listitem>
<listitem>
<para>
Allow <literal>ident</> authentication over Unix-domain sockets
on <productname>Solaris</> (Garick Hamlin)
Previously a usermap was only supported for <literal>ident</>
authentication.
</para>
</listitem>
......@@ -846,8 +861,8 @@ do it for earlier branch release files.
<listitem>
<para>
Add <literal>krb5</>, <literal>gssapi</>, and <literal>sspi</>
<varname>include_realm</> parameter (Magnus)
Add <varname>include_realm</> parameter for <literal>krb5</>,
<literal>gssapi</>, and <literal>sspi</> methods (Magnus)
</para>
<para>
......@@ -858,8 +873,8 @@ do it for earlier branch release files.
<listitem>
<para>
Show all parsing errors instead of aborting after the first
one (Selena Deckelmann)
Support <literal>ident</> authentication over Unix-domain sockets
on <productname>Solaris</> (Garick Hamlin)
</para>
</listitem>
......@@ -885,7 +900,7 @@ do it for earlier branch release files.
<listitem>
<para>
Have <function>pg_stop_backup()</> wait for modified <acronym>WAL</>
Make <function>pg_stop_backup()</> wait for modified <acronym>WAL</>
files to be archived (Simon)
</para>
......@@ -897,14 +912,14 @@ do it for earlier branch release files.
<listitem>
<para>
Prevent normal shutdown if a continuous archiving base backup
Delay <quote>smart</> shutdown while a continuous archiving base backup
is in progress (Laurenz Albe)
</para>
</listitem>
<listitem>
<para>
Cancel a continuous archiving base backup if a fast shutdown
Cancel a continuous archiving base backup if <quote>fast</> shutdown
is requested (Laurenz Albe)
</para>
</listitem>
......@@ -913,6 +928,7 @@ do it for earlier branch release files.
<para>
Allow <filename>recovery.conf</> boolean variables to take the
same range of string values as <filename>postgresql.conf</>
boolean variables
(Bruce)
</para>
</listitem>
......@@ -938,47 +954,53 @@ do it for earlier branch release files.
Add <function>pg_terminate_backend()</> to safely terminate a
backend (the <literal>SIGTERM</> signal works also) (Tom, Bruce)
</para>
<para>
While it's always been possible to <literal>SIGTERM</> a single
backend, this was previously considered unsupported; and testing
of the case found some bugs that are now fixed.
</para>
</listitem>
<listitem>
<para>
Add ability to track user-defined functions call counts and
runtimes via parameter <varname>track_functions</> (Martin
Pihlak)
Add ability to track user-defined functions' call counts and
runtimes (Martin Pihlak)
</para>
<para>
Function statistics appear in a new system table,
<literal>pg_stat_user_functions</>. However, inlined
<acronym>SQL</> functions are not tracked.
Function statistics appear in a new system view,
<literal>pg_stat_user_functions</>. Tracking is controlled
by the new parameter <varname>track_functions</>.
</para>
</listitem>
<listitem>
<para>
Allow specification of the maximum <literal>pg_stat_activity</>
query string size via <varname>track_activity_query_size</>
parameter (Thomas Lee)
Allow specification of the maximum query string size in
<literal>pg_stat_activity</> via new
<varname>track_activity_query_size</> parameter (Thomas Lee)
</para>
</listitem>
<listitem>
<para>
Improve syslog performance by increasing the maximum line length
(Tom)
Increase the maximum line length sent to <application>syslog</>, in
hopes of improving performance (Tom)
</para>
</listitem>
<listitem>
<para>
Add read-only <filename>postgresql.conf</> variables <varname>segment_size</>,
<varname>wal_block_size</>, and <varname>wal_segment_size</> (Bernd Helmle)
Add read-only configuration variables <varname>segment_size</>,
<varname>wal_block_size</>, and <varname>wal_segment_size</>
(Bernd Helmle)
</para>
</listitem>
<listitem>
<para>
When reporting a deadlock, report all session queries involved
When reporting a deadlock, report the text of all queries involved
in the deadlock to the server log (Itagaki Takahiro)
</para>
</listitem>
......@@ -1001,8 +1023,7 @@ do it for earlier branch release files.
This allows the statistics file to be placed in a
<acronym>RAM</>-resident directory to reduce I/O requirements.
On startup/shutdown, the file is copied to the top-level
<literal>$PGDATA</> directory so it is preserved between
restarts.
<literal>$PGDATA</> directory so it is preserved across restarts.
</para>
</listitem>
......@@ -1024,7 +1045,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add <literal>WITH</> clauses support, including <literal>WITH
Add support for <literal>WITH</> clauses (CTEs), including <literal>WITH
RECURSIVE</> (Yoshiyuki Asaba, Tatsuo Ishii, Tom)
</para>
</listitem>
......@@ -1035,8 +1056,8 @@ do it for earlier branch release files.
</para>
<para>
<command>TABLE tablename</> is a short-hand for <command>SELECT
* FROM tablename</>.
<literal>TABLE tablename</> is a SQL standard short-hand for
<literal>SELECT * FROM tablename</>.
</para>
</listitem>
......@@ -1044,8 +1065,25 @@ do it for earlier branch release files.
<para>
Allow <literal>AS</> to be optional when specifying a
<command>SELECT</> (or <literal>RETURNING</>) column output
label (assuming the label is not an <acronym>SQL</> keyword)
(Hiroshi Saito)
label (Hiroshi Saito)
</para>
<para>
This works so long as the column label is not any
<productname>PostgreSQL</> keyword; otherwise <literal>AS</> is still
needed.
</para>
</listitem>
<listitem>
<para>
Support set-returning functions in <command>SELECT</> result lists
even for functions that return their result via a tuplestore (Tom)
</para>
<para>
In particular, this means that functions written in PL/PgSQL
and other PL languages can now be called this way.
</para>
</listitem>
......@@ -1073,7 +1111,7 @@ do it for earlier branch release files.
There are no remote or external <acronym>SQL/MED</> capabilities
yet, but this change provides a standardized and future-proof
system for managing connection information for modules like
dblink and plproxy.
<filename>dblink</> and <filename>plproxy</>.
</para>
</listitem>
......@@ -1095,9 +1133,9 @@ do it for earlier branch release files.
</para>
<para>
Specifically this allows <literal>array[row(1,2), row(3,4)]</>
and <literal>row(1,1.1) = any (array[row(7,7.7), row(1,1.0)])</>.
This is particularly useful for recursive queries.
This allows constructs such as
<literal>row(1, 1.1) = any (array[row(7, 7.7), row(1, 1.0)])</>.
This is particularly useful in recursive queries.
</para>
</listitem>
......@@ -1113,6 +1151,11 @@ do it for earlier branch release files.
<para>
Improve the parser's ability to report error locations (Tom)
</para>
<para>
An error location is now reported for many semantic errors,
such as mismatched datatypes, that previously could not be localized.
</para>
</listitem>
</itemizedlist>
......@@ -1162,8 +1205,8 @@ do it for earlier branch release files.
<listitem>
<para>
Have <command>EXPLAIN VERBOSE</> show the output columns of a
query (Tom)
Make <command>EXPLAIN VERBOSE</> show the output columns of each
plan node (Tom)
</para>
<para>
......@@ -1182,7 +1225,7 @@ do it for earlier branch release files.
<listitem>
<para>
Have <command>EXPLAIN</> honor <varname>debug_print_plan</> (Tom)
Make <command>EXPLAIN</> honor <varname>debug_print_plan</> (Tom)
</para>
</listitem>
......@@ -1202,15 +1245,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <literal>LIMIT</> and <literal>OFFSET</> to use subselects
as arguments (Tom)
</para>
</listitem>
<listitem>
<para>
Document that <literal>LIMIT NULL</> and <literal>OFFSET NULL</>
have no effect (Tom)
Allow sub-selects in <literal>LIMIT</> and <literal>OFFSET</> (Tom)
</para>
</listitem>
......@@ -1261,7 +1296,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add <literal>WITH [NO] DATA</> clause to <command>CREATE TABLE
AS</>, per the <acronym>SQL</> standard (Tom, Peter)
AS</>, per the <acronym>SQL</> standard (Peter, Tom)
</para>
</listitem>
......@@ -1274,7 +1309,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <command>CREATE AGGREGATE</> to use an <type>internal</>
transition datatype (for super-users only) (Tom)
transition datatype (Tom)
</para>
</listitem>
......@@ -1292,7 +1327,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <command>CREATE OR REPLACE VIEW</> to add columns to the
<emphasis>end</> of a view (Robert Haas)
end of a view (Robert Haas)
</para>
</listitem>
......@@ -1310,9 +1345,8 @@ do it for earlier branch release files.
<listitem>
<para>
Add <command>ALTER SEQUENCE ... RESTART</> (no parameter) to
Add <command>ALTER SEQUENCE ... RESTART</> (with no parameter) to
reset a sequence to its initial value (Zoltan Boszormenyi)
bjm: compatibility problem?
</para>
</listitem>
......@@ -1321,15 +1355,10 @@ do it for earlier branch release files.
Modify the <command>ALTER TABLE</> syntax to allow all reasonable
combinations for tables, indexes, sequences, and views (Tom)
</para>
</listitem>
<listitem>
<para>
New syntax supported (these formerly required <command>ALTER
TABLE</>)
</para>
This change allows the following new syntaxes:
<para>
<itemizedlist>
<listitem>
<para>
......@@ -1352,8 +1381,11 @@ do it for earlier branch release files.
</para>
</listitem>
</itemizedlist>
</para>
There is no actual new functionality here, but formerly
you had to say <command>ALTER TABLE</> to do these things,
which was confusing.
</para>
</listitem>
<listitem>
......@@ -1370,8 +1402,8 @@ do it for earlier branch release files.
<listitem>
<para>
Have <command>ALTER TABLE SET WITHOUT OIDS</> rewrite the table
to remove <type>OID</> values (Tom)
Make <command>ALTER TABLE SET WITHOUT OIDS</> rewrite the table
to physically remove <type>OID</> values (Tom)
</para>
<para>
......@@ -1399,8 +1431,8 @@ do it for earlier branch release files.
<listitem>
<para>
Make <varname>LC_COLLATE</> and <varname>LC_CTYPE</> database-level
settings (Radek Strnad, Heikki)
Make <varname>LC_COLLATE</> and <varname>LC_CTYPE</> into
per-database settings (Radek Strnad, Heikki)
</para>
<para>
......@@ -1437,7 +1469,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add verbose option to the <command>CLUSTER</> command and
Add a verbose option to the <command>CLUSTER</> command and
<application>clusterdb</> (Jim Cox)
</para>
</listitem>
......@@ -1469,13 +1501,13 @@ do it for earlier branch release files.
<listitem>
<para>
Have hash indexes store only the hashed value, not the full
Make hash indexes store only the hashed value, not the full
indexed columns (Xiao Meng)
</para>
<para>
This greatly reduces the size of hash indexes for long indexed
values, and improves performance.
values, improving performance.
</para>
</listitem>
......@@ -1493,7 +1525,7 @@ do it for earlier branch release files.
<listitem>
<para>
<literal>xxx_pattern_ops</> indexes can now be used for simple
equality comparisons, not only <literal>LIKE</> (Tom)
equality comparisons, not only for <literal>LIKE</> (Tom)
</para>
</listitem>
......@@ -1540,13 +1572,13 @@ do it for earlier branch release files.
<listitem>
<para>
Improve support for Nepali language and Devanagari alphabet (Teodor)
Support multi-column <acronym>GIN</> indexes (Teodor Sigaev)
</para>
</listitem>
<listitem>
<para>
Support multi-column <acronym>GIN</> indexes (Teodor Sigaev)
Improve support for Nepali language and Devanagari alphabet (Teodor)
</para>
</listitem>
......@@ -1560,53 +1592,55 @@ do it for earlier branch release files.
<listitem>
<para>
Allow relation forks to track free space (Heikki)
Track free space in separate per-relation <quote>fork</> files (Heikki)
</para>
<para>
This allows the recording of all free space discovered by vacuum
in <filename>*.fsm</> files, rather than having to limit
recording to a fixed-sized shared memory area;
<varname>max_fsm_pages</> and <varname>max_fsm_relations</>
settings have been removed.
Free space discovered by <command>VACUUM</> is now recorded in
<filename>*_fsm</> files, rather than in a fixed-sized shared memory
area. The <varname>max_fsm_pages</> and <varname>max_fsm_relations</>
settings have been removed, greatly simplifying administration of
free space management.
</para>
</listitem>
<listitem>
<para>
New visibility map file to track pages that do not require
vacuum (Heikki)
Add a visibility map to track pages that do not require
vacuuming (Heikki)
</para>
<para>
This allows <command>VACUUM</> to avoid sequentially scanning
This allows <command>VACUUM</> to avoid scanning all of
a table when only a portion of the table needs vacuuming.
The visibility map is stored in per-relation <quote>fork</> files.
</para>
</listitem>
<listitem>
<para>
Track explicit transaction snapshots (Alvaro)
Add <varname>vacuum_freeze_table_age</> parameter to control
when <command>VACUUM</> should ignore the visibility map and
do a full table scan to set frozen xids (Heikki)
</para>
</listitem>
<listitem>
<para>
This improves space reuse by vacuum in the presence of long-running
transactions.
Track transaction snapshots more carefully (Alvaro)
</para>
</listitem>
<listitem>
<para>
Add <varname>vacuum_freeze_table_age</> parameter to control
when <command>VACUUM</> should ignore the visibility map and
do a full table scan to set frozen xids (Heikki)
This can improve space reuse by <command>VACUUM</> in the presence of
long-running transactions.
</para>
</listitem>
<listitem>
<para>
Add ability to specify autovacuum and <acronym>TOAST</> parameters
in <command>CREATE TABLE</> (Alvaro, Euler Taveira de Oliveira)
Add ability to specify per-relation autovacuum and <acronym>TOAST</>
parameters in <command>CREATE TABLE</> (Alvaro, Euler Taveira de
Oliveira)
</para>
<para>
......@@ -1646,26 +1680,26 @@ do it for earlier branch release files.
<listitem>
<para>
Add <type>int2</> with <type>int8</> basic arithmetic operators
Add basic arithmetic operators for <type>int2</> with <type>int8</>
(Tom)
</para>
<para>
This simplifies casting requirements.
This eliminates the need for explicit casting in some situations.
</para>
</listitem>
<listitem>
<para>
Allow <type>UUID</> input to accept optional hyphens after
every four digits (Robert Haas)
Allow <type>UUID</> input to accept an optional hyphen after
every fourth digit (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Accept <literal>on</>/<literal>off</> as boolean data type
values (Itagaki Takahiro)
Allow <literal>on</>/<literal>off</> as input for the boolean data type
(Itagaki Takahiro)
</para>
</listitem>
......@@ -1689,9 +1723,9 @@ do it for earlier branch release files.
</para>
<para>
Previously these were interpreted as <literal>1 BC</>; years
<literal>0</> and <literal>00</> are assumed to be the year
2000.
Previously these were interpreted as <literal>1 BC</>.
(Note: years <literal>0</> and <literal>00</> are still assumed to be
the year 2000.)
</para>
</listitem>
......@@ -1704,8 +1738,8 @@ do it for earlier branch release files.
<listitem>
<para>
Support the <acronym>IS0 8601</> <type>interval</> syntax (Tom,
Kevin Grittner)
Support the <acronym>IS0 8601</> <type>interval</> syntax (Kevin
Grittner)
</para>
<para>
......@@ -1716,41 +1750,42 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <type>INTERVAL</> precision to be specified after the
Allow <type>interval</> precision to be specified after the
last field, for <acronym>SQL</>-standards compliance (Tom)
</para>
<para>
Formerly the precision had to be specified after the keyword
<type>INTERVAL</> (this syntax is still supported). Data type
<type>interval</> (this syntax is still supported). Data type
definitions will now be output using the new format.
</para>
</listitem>
<listitem>
<para>
Support <literal>infinite</> dates (Tom)
Support <literal>infinity</> and <literal>-infinity</> as
values of type <type>date</> (Tom)
</para>
</listitem>
<listitem>
<para>
Add <varname>IntervalStyle</> parameter
which controls how <type>INTERVAL</> values are output (Ron Mayer)
which controls how <type>interval</> values are output (Ron Mayer)
</para>
<para>
Valid value are: <literal>postgres</>, <literal>postgres_verbose</>,
<literal>sql_standard</>, <literal>iso_8601</>. This also
controls the handling of negative <type>INTERVAL</> input when only
Valid values are: <literal>postgres</>, <literal>postgres_verbose</>,
<literal>sql_standard</>, <literal>iso_8601</>. This setting also
controls the handling of negative <type>interval</> input when only
some fields have positive/negative designations.
</para>
</listitem>
<listitem>
<para>
Make <type>INTERVAL</> seconds rounding more consistent across
output formats (Ron Mayer)
Improve consistency of handling of fractional seconds in
<type>timestamp</> and <type>interval</> output (Ron Mayer)
</para>
</listitem>
......@@ -1764,13 +1799,18 @@ do it for earlier branch release files.
<listitem>
<para>
Have cast on <type>ARRAY</> apply to all elements, not just
the array result (Brendan Jurd)
Improve the handling of casts applied to <literal>ARRAY[]</>
constructs, such as <literal>ARRAY[...]::integer[]</>
(Brendan Jurd)
</para>
<para>
This allows <literal>NULL</> <type>ARRAY</> entries as long as
they are properly cast.
Formerly <productname>PostgreSQL</> attempted to determine a data type
for the <literal>ARRAY[]</> construct without reference to the ensuing
cast. This could fail unnecessarily in many cases, in particular when
the <literal>ARRAY[]</> construct was empty or contained only
ambiguous entries such as <literal>NULL</>. Now the cast is consulted
to determine the type that the array elements must be.
</para>
</listitem>
......@@ -1791,7 +1831,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add <function>array_length()</> to return the length
of an array for the specified dimensions (Jim Nasby, Robert
of an array for a specified dimension (Jim Nasby, Robert
Haas, Peter Eisentraut)
</para>
</listitem>
......@@ -1847,21 +1887,24 @@ do it for earlier branch release files.
<listitem>
<para>
Consider <acronym>TOAST</> compression on values as short as
32 bytes (previously 256 bytes) (Tom)
32 bytes (previously 256 bytes) (Greg Stark)
</para>
</listitem>
<listitem>
<para>
Require 25% of space savings before using <acronym>TOAST</>
compression (previously 20%) (Tom)
Require 25% minimum space savings before using <acronym>TOAST</>
compression (previously 20% for small values and any-savings-at-all
for large values) (Greg)
</para>
</listitem>
<listitem>
<para>
Be more aggressive in storing <literal>EXTERNAL</> and
<literal>EXTENDED</> column values in <acronym>TOAST</>(Tom)
Improve toast heuristics for rows including a mix of large and
small toastable fields, so that we prefer to push large values
out of line and don't compress small values unnecessarily
(Greg, Tom)
</para>
</listitem>
......@@ -1885,7 +1928,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add server side function <function>lo_import(filename, oid)</>
Add server-side function <function>lo_import(filename, oid)</>
(Tatsuo)
</para>
</listitem>
......@@ -1893,14 +1936,14 @@ do it for earlier branch release files.
<listitem>
<para>
Add <function>quote_nullable()</>, which behaves like
<function>quote_literal()</> but returns <literal>NULL</> for
<function>quote_literal()</> but returns the string <literal>NULL</> for
a null argument (Brendan Jurd)
</para>
</listitem>
<listitem>
<para>
Improve full text search <function>headline()</> generation to
Improve full text search <function>headline()</> function to
allow several fragments (Sushant Sinha)
</para>
</listitem>
......@@ -1908,14 +1951,14 @@ do it for earlier branch release files.
<listitem>
<para>
Add <function>suppress_redundant_updates_trigger()</> trigger
function to avoid non-data-changing updates (Andrew)
function to prevent non-data-changing updates (Andrew)
</para>
</listitem>
<listitem>
<para>
Add <function>div(NUMERIC, NUMERIC)</> for <type>NUMERIC</>
division, without rounding (Tom)
Add <function>div(numeric, numeric)</> to perform <type>numeric</>
division without rounding (Tom)
</para>
</listitem>
......@@ -1941,25 +1984,18 @@ do it for earlier branch release files.
<listitem>
<para>
Add <function>pg_get_keywords()</> to return predefined
Add <function>pg_get_keywords()</> to return a list of the
parser keywords (Dave Page)
</para>
</listitem>
<listitem>
<para>
Add <function>pg_get_functiondef()</> to see a functions
Add <function>pg_get_functiondef()</> to see a function's
definition (Abhijit Menon-Sen)
</para>
</listitem>
<listitem>
<para>
Modify <function>pg_relation_size()</> to handle free space
map (<filename>*.fsm</>) files (Heikki)
</para>
</listitem>
<listitem>
<para>
Modify <function>pg_relation_size()</> to use <literal>regclass</>
......@@ -1999,7 +2035,7 @@ do it for earlier branch release files.
<listitem>
<para>
Have <function>version()</> return information about whether
Make <function>version()</> return information about whether
the server is a 32 or 64-bit binary (Bruce)
</para>
</listitem>
......@@ -2028,7 +2064,7 @@ do it for earlier branch release files.
<listitem>
<para>
Have <function>pg_*_is_visible()</> and
Make <function>pg_*_is_visible()</> and
<function>has_*_privilege()</> functions return <literal>NULL</>
for invalid oids, rather than generate an error (Tom)
</para>
......@@ -2064,7 +2100,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <literal>DEFAULT</> values for function arguments (Pavel
Support <literal>DEFAULT</> values for function arguments (Pavel
Stehule)
</para>
</listitem>
......@@ -2082,10 +2118,6 @@ do it for earlier branch release files.
of an <command>INSERT</>/<command>UPDATE</>/<command>DELETE</>
<literal>RETURNING</> clause (Tom)
</para>
<para>
Formerly only <command>SELECT</> was supported.
</para>
</listitem>
</itemizedlist>
......@@ -2104,7 +2136,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow looping over an open cursor using a <literal>FOR</>
Allow looping over the results of a cursor using a <literal>FOR</>
loop (Pavel Stehule)
</para>
</listitem>
......@@ -2118,7 +2150,7 @@ do it for earlier branch release files.
<listitem>
<para>
Improve the <literal>RAISE</> command: (Pavel Stehule)
Improve the <literal>RAISE</> command (Pavel Stehule)
<itemizedlist>
<listitem>
......@@ -2139,7 +2171,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <literal>RAISE</> without parameters in an exception
block to rethrow the current error
block to re-throw the current error
</para>
</listitem>
</itemizedlist>
......@@ -2148,7 +2180,7 @@ do it for earlier branch release files.
<listitem>
<para>
Allow specification of <varname>SQLSTATE</> numeric codes
Allow specification of numeric <varname>SQLSTATE</> codes
in <literal>EXCEPTION</> lists (Pavel Stehule)
</para>
......@@ -2219,7 +2251,7 @@ do it for earlier branch release files.
<listitem>
<para>
Remove <literal>-q</> (quiet) option for create* and drop*
Remove <literal>-q</> (quiet) option of create* and drop*
utility commands (Peter)
</para>
......@@ -2232,19 +2264,19 @@ do it for earlier branch release files.
</itemizedlist>
<sect4>
<title><link linkend="APP-PSQL"><application>psql</></link></title>
<title><application>psql</></title>
<itemizedlist>
<listitem>
<para>
Remove startup banner; now just suggest <literal>help</>
Remove verbose startup banner; now just suggest <literal>help</>
(Joshua Drake)
</para>
</listitem>
<listitem>
<para>
Have <literal>help</> show common backslash commands (Greg
Make <literal>help</> show common backslash commands (Greg
Sabino Mullane)
</para>
</listitem>
......@@ -2268,6 +2300,10 @@ do it for earlier branch release files.
Require a space between a backslash command and the first
argument (Bernd Helmle)
</para>
<para>
This removes a historical source of ambiguity.
</para>
</listitem>
<listitem>
......@@ -2279,14 +2315,14 @@ do it for earlier branch release files.
<listitem>
<para>
Improve tab completion support for schema qualified and
Improve tab completion support for schema-qualified and
quoted identifiers (Greg Sabino Mullane)
</para>
</listitem>
<listitem>
<para>
Allow the normal range of boolean values in <command>\pset</>,
Allow all supported spellings of boolean values in <command>\pset</>,
rather than just <literal>on</> and <literal>off</> (Bruce)
</para>
</listitem>
......@@ -2300,13 +2336,13 @@ do it for earlier branch release files.
<listitem>
<para>
Have <command>\l</> show access privileges (Andrew Gilligan)
Make <command>\l</> show access privileges (Andrew Gilligan)
</para>
</listitem>
<listitem>
<para>
Have <command>\l+</> show database sizes, if permissions
Make <command>\l+</> show database sizes, if permissions
allow (Andrew Gilligan)
</para>
</listitem>
......@@ -2316,11 +2352,6 @@ do it for earlier branch release files.
Add the <command>\ef</> command to edit function definitions
(Abhijit Menon-Sen)
</para>
<para>
<command>\ef</> without a function name creates an empty
function template for editing.
</para>
</listitem>
</itemizedlist>
......@@ -2328,19 +2359,19 @@ do it for earlier branch release files.
</sect4>
<sect4>
<title><link linkend="APP-PSQL"><application>psql</></link> \d*</title>
<title><application>psql</> \d* commands</title>
<itemizedlist>
<listitem>
<para>
Have <command>\d</> show cases where this table is referenced
as a foreign-key constraint (Kenneth D'Souza)
Make <command>\d</> show cases where the current table is referenced
by a foreign-key constraint (Kenneth D'Souza)
</para>
</listitem>
<listitem>
<para>
Have <command>\d</> show the value of sequence columns
Make <command>\d</> on a sequence show its column values
(Euler Taveira de Oliveira)
</para>
</listitem>
......@@ -2355,7 +2386,7 @@ do it for earlier branch release files.
<listitem>
<para>
Show relation size in <command>\d+</> output (Dickson S.
Show relation size in <command>\dt+</> output (Dickson S.
Guedes)
</para>
</listitem>
......@@ -2369,25 +2400,15 @@ do it for earlier branch release files.
<para>
The former behavior was inconsistent across different variants
of <command>\d</>, and provided no easy way to see just user objects.
</para>
</listitem>
<listitem>
<para>
Make <command>\d</> and <command>\dt</> consistent in
their display of system tables (Bruce)
</para>
<para>
Previously, <literal>\d pg_class</> would show <literal>pg_class</>
while <literal>\dt pg_class</> would not.
of <command>\d</>, and in most cases it provided no easy way to see
just user objects.
</para>
</listitem>
<listitem>
<para>
Show enumerated values in <command>\dT+</> (David Fetter)
Show the values of <literal>enum</> types in <command>\dT+</> (David
Fetter)
</para>
</listitem>
......@@ -2423,14 +2444,14 @@ do it for earlier branch release files.
</sect4>
<sect4>
<title><link linkend="APP-PGDUMP"><application>pg_dump</></link></title>
<title><application>pg_dump</></title>
<itemizedlist>
<listitem>
<para>
Add a <literal>--no-tablespaces</> option to
<application>pg_dump</>/<application>pg_dumpall</>/<application>pg_restore</>
so dumps can be restored to clusters that have non-matching
so that dumps can be restored to clusters that have non-matching
tablespace layouts (Gavin Roy)
</para>
</listitem>
......@@ -2459,7 +2480,7 @@ do it for earlier branch release files.
<para>
Use of this option does not throw an error, but it has no
effect. This option was removed because the version checks
are considered necessary.
are necessary for safety.
</para>
</listitem>
......@@ -2485,14 +2506,14 @@ do it for earlier branch release files.
<listitem>
<para>
Reorder <application>pg_dump</> <literal>--data-only</> output
to dump primary-key tables referenced by foreign keys before
the foreign-key referencing tables (Tom)
to dump tables referenced by foreign keys before
the referencing tables (Tom)
</para>
<para>
This allows data loads when foreign keys are already present.
If circular references make this impossible, a <literal>NOTICE</>
is issued.
If circular references make a safe ordering impossible, a
<literal>NOTICE</> is issued.
</para>
</listitem>
......@@ -2506,20 +2527,20 @@ do it for earlier branch release files.
<listitem>
<para>
Allow <application>pg_restore</> of a custom format archive to
use multiple concurrent connections to do the restore (Andrew)
Allow <application>pg_restore</> to use multiple concurrent
connections to do the restore (Andrew)
</para>
<para>
The number of concurrent connections is controlled by the option
<literal>--jobs</>.
<literal>--jobs</>. This is supported only for custom-format archives.
</para>
</listitem>
<listitem>
<para>
Add new <application>pg_dump</> <literal>--binary-upgrade</>
option for use by binary upgrade utilities (Bruce)
Add new <application>pg_dump</> option <option>--binary-upgrade</>
for use by binary upgrade utilities (Bruce)
</para>
</listitem>
......@@ -2533,13 +2554,13 @@ do it for earlier branch release files.
<title>Programming Tools</title>
<sect4>
<title><link linkend="libpq"><application>libpq</></link></title>
<title><application>libpq</></title>
<itemizedlist>
<listitem>
<para>
Allow the <type>OID</> to be specified when importing large
objects using <function>lo_import_with_oid()</> (Tatsuo)
Allow the <type>OID</> to be specified when importing a large
object, via new function <function>lo_import_with_oid()</> (Tatsuo)
</para>
</listitem>
......@@ -2563,7 +2584,7 @@ do it for earlier branch release files.
<listitem>
<para>
Have <function>PQexecParams()</> return
Make <function>PQexecParams()</> return
<varname>PGRES_EMPTY_QUERY</> for an empty query (Tom)
</para>
......@@ -2584,8 +2605,8 @@ do it for earlier branch release files.
</sect4>
<sect4>
<title><link linkend="libpq"><application>libpq</></link>
<acronym>SSL</> (Secure Sockets Layer)</title>
<title><application>libpq</> <acronym>SSL</> (Secure Sockets Layer)
support</title>
<itemizedlist>
<listitem>
......@@ -2604,13 +2625,6 @@ do it for earlier branch release files.
</para>
</listitem>
<listitem>
<para>
Allow the file locations for client certificates to be specified
(Mark Woodward, Alvaro, Magnus)
</para>
</listitem>
<listitem>
<para>
Add connection parameter <literal>sslverify</> to control
......@@ -2623,6 +2637,13 @@ do it for earlier branch release files.
</para>
</listitem>
<listitem>
<para>
Allow the file locations for client certificates to be specified
(Mark Woodward, Alvaro, Magnus)
</para>
</listitem>
<listitem>
<para>
Add a <function>PQinitOpenSSL</> function to allow greater control
......@@ -2633,7 +2654,7 @@ do it for earlier branch release files.
<listitem>
<para>
Properly unregister <application>OpenSSL</> callbacks when
libpq is done with all connections (Bruce, Magnus, Russell Smith)
libpq is finished with all connections (Bruce, Magnus, Russell Smith)
</para>
<para>
......@@ -2647,7 +2668,7 @@ do it for earlier branch release files.
</sect4>
<sect4>
<title><link linkend="ecpg"><application>ecpg</></link></title>
<title><application>ecpg</></title>
<itemizedlist>
<listitem>
......@@ -2664,7 +2685,7 @@ do it for earlier branch release files.
</para>
<para>
Previously a separate ecpg parser was maintained.
Previously the ecpg parser was hand-maintained.
</para>
</listitem>
......@@ -2705,24 +2726,6 @@ do it for earlier branch release files.
<title>Build Options</title>
<itemizedlist>
<listitem>
<para>
Support 64-bit time zone data files (Heikki)
</para>
<para>
This adds support for daylight saving time (<acronym>DST</>)
calculations beyond year 2038.
</para>
</listitem>
<listitem>
<para>
Fix bug in handling of the time zone database when cross-compiling
(Richard Evans)
</para>
</listitem>
<listitem>
<para>
Update build system to use <productname>Autoconf</> 2.61 (Peter)
......@@ -2735,8 +2738,8 @@ do it for earlier branch release files.
</para>
<para>
This has been a requirement for several years but this removes
the infrastructure for supporting other parser tools.
This has effectively been required for several years, but now there
is no infrastructure claiming to support other parser tools.
</para>
</listitem>
......@@ -2779,9 +2782,9 @@ do it for earlier branch release files.
</para>
<para>
This allows compile-time control over several constants that
affect how tables and <acronym>WAL</> files are segmented and
their internal block sizes.
This simplifies build-time control over several constants that
previously could only be changed by editing
<filename>pg_config_manual.h</>.
</para>
</listitem>
......@@ -2812,13 +2815,13 @@ do it for earlier branch release files.
<listitem>
<para>
Append the major version number to the <application>gettext</>
Append the major version number to the backend <application>gettext</>
domain, and the <literal>soname</> major version number to
libraries (Peter)
libraries' <application>gettext</> domain (Peter)
</para>
<para>
This simplifies parallel installations.
This simplifies parallel installations of multiple versions.
</para>
</listitem>
......@@ -2836,14 +2839,6 @@ do it for earlier branch release files.
</para>
</listitem>
<listitem>
<para>
Fix problem when setting <varname>LC_MESSAGES</> on
<application>MSVC</>-built systems (Hiroshi Inoue, Hiroshi
Saito, Magnus) bjm: details?
</para>
</listitem>
</itemizedlist>
</sect3>
......@@ -2852,6 +2847,24 @@ do it for earlier branch release files.
<title>Source Code</title>
<itemizedlist>
<listitem>
<para>
Support 64-bit time zone data files (Heikki)
</para>
<para>
This adds support for daylight saving time (<acronym>DST</>)
calculations beyond the year 2038.
</para>
</listitem>
<listitem>
<para>
Fix bug in handling of the time zone database when cross-compiling
(Richard Evans)
</para>
</listitem>
<listitem>
<para>
Link backend object files in one step, rather than in stages
......@@ -2907,7 +2920,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add function hook to let plug-ins control the executor (Itagaki
Add function hook to let plug-ins monitor the executor (Itagaki
Takahiro)
</para>
</listitem>
......@@ -2976,6 +2989,14 @@ do it for earlier branch release files.
</para>
</listitem>
<listitem>
<para>
Fix problem when setting <varname>LC_MESSAGES</> on
<application>MSVC</>-built systems (Hiroshi Inoue, Hiroshi
Saito, Magnus)
</para>
</listitem>
</itemizedlist>
</sect3>
......@@ -2986,21 +3007,14 @@ do it for earlier branch release files.
<listitem>
<para>
Add query mode option to <filename>/contrib/pgbench</>
Add duration and query mode options to <filename>contrib/pgbench</>
(Itagaki Takahiro)
</para>
</listitem>
<listitem>
<para>
Add duration option to <filename>/contrib/pgbench</> (Itagaki
Takahiro)
</para>
</listitem>
<listitem>
<para>
Fix <filename>/contrib/pgstattuple</> to handle tables and
Fix <filename>contrib/pgstattuple</> to handle tables and
indexes with over 2 billion pages (Tatsuhito Kasahara)
</para>
</listitem>
......@@ -3008,7 +3022,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add Levenshtein string-distance function to
<filename>/contrib/fuzzystrmatch</> that allows the user to
<filename>contrib/fuzzystrmatch</> that allows the user to
specify the cost of insertion, deletion, and substitution
(Volkan Yazici)
</para>
......@@ -3017,37 +3031,37 @@ do it for earlier branch release files.
<listitem>
<para>
Remove <function>dblink_current_query()</> from
<filename>/contrib/dblink</>; it should now use
<filename>contrib/dblink</>; one should now use
<function>current_query()</> (Tomas Doran)
</para>
</listitem>
<listitem>
<para>
Have <filename>/contrib/ltree</> support multibyte encodings
Make <filename>contrib/ltree</> support multibyte encodings
(laser)
</para>
</listitem>
<listitem>
<para>
Add <filename>/contrib/btree_gin</> to allow GIN indexes to
Add <filename>contrib/btree_gin</> to allow GIN indexes to
handle more datatypes (Oleg, Teodor)
</para>
</listitem>
<listitem>
<para>
Add <filename>/contrib/citext</> as a case-insensitive,
Add <filename>contrib/citext</> to provide a case-insensitive,
multibyte-aware text data type (David Wheeler)
</para>
</listitem>
<listitem>
<para>
Make sure <filename>/contrib/dblink</> uses a password supplied
by the user, and not accidentally from the server's .pgpass file
(Joe Conway)
Make sure <filename>contrib/dblink</> uses a password supplied
by the user, and not accidentally taken from the server's
<filename>.pgpass</> file (Joe Conway)
</para>
<para>
......@@ -3058,26 +3072,28 @@ do it for earlier branch release files.
<listitem>
<para>
Add <function>fsm_page_contents()</>
to<filename>/contrib/pageinspect</> (Heikki)
to <filename>contrib/pageinspect</> (Heikki)
</para>
</listitem>
<listitem>
<para>
Modify <function>get_raw_page()</> to support free space map
(<filename>*.fsm</>) files. Also update
<filename>/contrib/pg_freespacemap</>.
(<filename>*_fsm</>) files. Also update
<filename>contrib/pg_freespacemap</>.
</para>
</listitem>
<listitem>
<para>
Add support for multibyte encodings to <filename>/contrib/pg_trgm</>
Add support for multibyte encodings to <filename>contrib/pg_trgm</>
(Teodor)
</para>
</listitem>
<listitem>
<para>
Rewrite <filename>/contrib/intagg</> to user new server-side
Rewrite <filename>contrib/intagg</> to use new
functions <function>array_agg()</> and <function>unnest()</>
(Tom)
</para>
......@@ -3085,13 +3101,13 @@ do it for earlier branch release files.
<listitem>
<para>
Remove <filename>/contrib/intarray</>'s definitions of the
Remove <filename>contrib/intarray</>'s definitions of the
<literal>&lt;@</> and <literal>@&gt;</> operators (Tom)
</para>
<para>
This avoids confusion with the equivalent built-in operators.
If necessary, the <filename>/contrib/intarray</> implementations
If needed, the <filename>contrib/intarray</> implementations
are still available under their historical names <literal>@</>
and <literal>~</>.
</para>
......@@ -3099,7 +3115,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add <filename>/contrib/auto_explain</> to automatically run
Add <filename>contrib/auto_explain</> to automatically run
<command>EXPLAIN</> on queries exceeding a specified duration
(Itagaki Takahiro, Tom)
</para>
......@@ -3107,7 +3123,7 @@ do it for earlier branch release files.
<listitem>
<para>
Add <filename>/contrib/pg_stat_statements</> for server-wide
Add <filename>contrib/pg_stat_statements</> for server-wide
tracking of statement execution statistics (Itagaki Takahiro)
</para>
</listitem>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment