Commit 23a9ac61 authored by Tom Lane's avatar Tom Lane

Some more work on the 8.4 release notes. Document a few changes that Bruce

apparently found uninteresting, and do minor wordsmithing on a number of
the existing entries.
parent 1d3a1613
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.631 2009/04/24 13:01:30 mha Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.632 2009/04/26 20:08:30 tgl Exp $ -->
<!-- <!--
Typical markup: Typical markup:
...@@ -277,7 +277,7 @@ do it for earlier branch release files. ...@@ -277,7 +277,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Disable appending of the epoch date/time when no <literal>%</> Remove automatic appending of the epoch timestamp when no <literal>%</>
escapes are present in <literal>log_filename</> (Robert Haas) escapes are present in <literal>log_filename</> (Robert Haas)
</para> </para>
...@@ -301,9 +301,9 @@ do it for earlier branch release files. ...@@ -301,9 +301,9 @@ do it for earlier branch release files.
</para> </para>
<para> <para>
This breaks compatibility with pre-<productname>PostgreSQL</> 7.2 This effectively obsoletes pre-<productname>PostgreSQL</> 7.2 client
clients, as there is no longer any non-plaintext password method libraries, as there is no longer any non-plaintext password method that
that they can use. they can use.
</para> </para>
</listitem> </listitem>
...@@ -491,6 +491,18 @@ do it for earlier branch release files. ...@@ -491,6 +491,18 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Adopt a faster algorithm for hash functions (Kenneth Marshall,
based on work of Bob Jenkins)
</para>
<para>
Many of the built-in hash functions now deliver different results on
little-endian and big-endian platforms.
</para>
</listitem>
</itemizedlist> </itemizedlist>
<sect4> <sect4>
...@@ -615,6 +627,18 @@ do it for earlier branch release files. ...@@ -615,6 +627,18 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Improve optimization of sub-selects beneath outer joins (Tom)
</para>
<para>
Formerly, a sub-select or view could not be optimized very well if it
appeared within the nullable side of an outer join and contained
non-strict expressions (for instance, constants) in its result list.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Improve the performance of <function>text_position()</> and Improve the performance of <function>text_position()</> and
...@@ -623,7 +647,7 @@ do it for earlier branch release files. ...@@ -623,7 +647,7 @@ do it for earlier branch release files.
</para> </para>
<para> <para>
This is particularly useful for long search patterns. This is particularly helpful for long search patterns.
</para> </para>
</listitem> </listitem>
...@@ -707,6 +731,12 @@ do it for earlier branch release files. ...@@ -707,6 +731,12 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Improve performance of shared cache invalidation (Tom)
</para>
</listitem>
</itemizedlist> </itemizedlist>
</sect3> </sect3>
...@@ -722,7 +752,7 @@ do it for earlier branch release files. ...@@ -722,7 +752,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Convert many <filename>postgresql.conf</> settings to enumerated Convert many <filename>postgresql.conf</> settings to enumerated
values so <literal>pg_settings</> can display valid values so that <literal>pg_settings</> can display the valid
values (Magnus) values (Magnus)
</para> </para>
</listitem> </listitem>
...@@ -950,8 +980,8 @@ do it for earlier branch release files. ...@@ -950,8 +980,8 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <function>pg_conf_load_time()</> to report when Add <function>pg_conf_load_time()</> to report when
the Postgres configuration files were last loaded (George the <productname>PostgreSQL</> configuration files were last loaded
Gensure) (George Gensure)
</para> </para>
</listitem> </listitem>
...@@ -1013,23 +1043,22 @@ do it for earlier branch release files. ...@@ -1013,23 +1043,22 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
New <function>pg_stat_get_activity(pid)</> function to return Add <function>pg_stat_get_activity(pid)</> function to return
information about a specific process id (Magnus) information about a specific process id (Magnus)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Move the server statistics file into the subdirectory Allow the location of the server's statistics file to be specified
<filename>pg_stat_tmp</> and allow its location to be specified
via <varname>stats_temp_directory</> (Magnus) via <varname>stats_temp_directory</> (Magnus)
</para> </para>
<para> <para>
This allows the statistics file to be placed in a This allows the statistics file to be placed in a
<acronym>RAM</>-resident directory to reduce I/O requirements. <acronym>RAM</>-resident directory to reduce I/O requirements.
On startup/shutdown, the file is copied to the top-level On startup/shutdown, the file is copied to its traditional location
<literal>$PGDATA</> directory so it is preserved across restarts. (<literal>$PGDATA/global/</>) so it is preserved across restarts.
</para> </para>
</listitem> </listitem>
...@@ -1058,7 +1087,7 @@ do it for earlier branch release files. ...@@ -1058,7 +1087,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
New <command>TABLE</> command (Peter) Add <command>TABLE</> command (Peter)
</para> </para>
<para> <para>
...@@ -1147,7 +1176,7 @@ do it for earlier branch release files. ...@@ -1147,7 +1176,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add support for Unicode string and identifier specifications Add support for Unicode string literal and identifier specifications
using code points, e.g. <literal>U&amp;'d\0061t\+000061'</> using code points, e.g. <literal>U&amp;'d\0061t\+000061'</>
(Peter) (Peter)
</para> </para>
...@@ -1178,8 +1207,8 @@ do it for earlier branch release files. ...@@ -1178,8 +1207,8 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <command>TRUNCATE TABLE</> ... Add <literal>RESTART</>/<literal>CONTINUE IDENTITY</> options
<literal>RESTART</>/<literal>CONTINUE IDENTITY</> clauses for <command>TRUNCATE TABLE</>
(Zoltan Boszormenyi) (Zoltan Boszormenyi)
</para> </para>
...@@ -1287,15 +1316,29 @@ do it for earlier branch release files. ...@@ -1287,15 +1316,29 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Improve reporting of dependencies during <command>DROP</> Refactor multi-object <command>DROP</> operations to reduce the
commands (Alex Hunsaker) need for <literal>CASCADE</> (Alex Hunsaker)
</para>
<para>
For example, if table <literal>B</> has a dependency on table
<literal>A</>, the command <literal>DROP TABLE A, B</> no longer
requires the <literal>CASCADE</> option.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Refactor multi-object <command>DROP</> operations so conflicting Fix various problems with concurrent <command>DROP</> commands
dependencies do not generate an error (Alex Hunsaker) by ensuring that locks are taken before we begin to drop dependencies
of an object (Tom)
</para>
</listitem>
<listitem>
<para>
Improve reporting of dependencies during <command>DROP</>
commands (Tom)
</para> </para>
</listitem> </listitem>
...@@ -1330,6 +1373,18 @@ do it for earlier branch release files. ...@@ -1330,6 +1373,18 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Allow specification of the type category and <quote>preferred</>
status for user-defined base types (Tom)
</para>
<para>
This allows more control over the coercion behavior of user-defined
types.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Allow <command>CREATE OR REPLACE VIEW</> to add columns to the Allow <command>CREATE OR REPLACE VIEW</> to add columns to the
...@@ -1475,7 +1530,7 @@ do it for earlier branch release files. ...@@ -1475,7 +1530,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add a verbose option to the <command>CLUSTER</> command and Add a <literal>VERBOSE</> option to the <command>CLUSTER</> command and
<application>clusterdb</> (Jim Cox) <application>clusterdb</> (Jim Cox)
</para> </para>
</listitem> </listitem>
...@@ -1496,7 +1551,7 @@ do it for earlier branch release files. ...@@ -1496,7 +1551,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Dramatically improve the speed of building and accessing hash Dramatically improve the speed of building and accessing hash
indexes (Tom Raney, Shreya Bhargava, Kenneth Marshall) indexes (Tom Raney, Shreya Bhargava)
</para> </para>
<para> <para>
...@@ -1507,8 +1562,8 @@ do it for earlier branch release files. ...@@ -1507,8 +1562,8 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Make hash indexes store only the hashed value, not the full Make hash indexes store only the hash code, not the full value of
indexed columns (Xiao Meng) the indexed column (Xiao Meng)
</para> </para>
<para> <para>
...@@ -1519,7 +1574,7 @@ do it for earlier branch release files. ...@@ -1519,7 +1574,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Implement fast update for GIN indexes (Teodor, Oleg) Implement fast update option for GIN indexes (Teodor, Oleg)
</para> </para>
<para> <para>
...@@ -1546,7 +1601,7 @@ do it for earlier branch release files. ...@@ -1546,7 +1601,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Remove the requirement to use <literal>@@@</> when doing Remove the requirement to use <literal>@@@</> when doing
<acronym>GIN</> weighted lookups on full text indexes (Tom) <acronym>GIN</> weighted lookups on full text indexes (Tom, Teodor)
</para> </para>
<para> <para>
...@@ -1562,13 +1617,6 @@ do it for earlier branch release files. ...@@ -1562,13 +1617,6 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add partial match support for <acronym>GIN</> indexes (Teodor
Sigaev, Oleg Bartunov)
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Allow prefix matching in full text searches (Teodor Sigaev, Allow prefix matching in full text searches (Teodor Sigaev,
...@@ -1627,7 +1675,7 @@ do it for earlier branch release files. ...@@ -1627,7 +1675,7 @@ do it for earlier branch release files.
<para> <para>
Add <varname>vacuum_freeze_table_age</> parameter to control Add <varname>vacuum_freeze_table_age</> parameter to control
when <command>VACUUM</> should ignore the visibility map and when <command>VACUUM</> should ignore the visibility map and
do a full table scan to set frozen xids (Heikki) do a full table scan to freeze tuples (Heikki)
</para> </para>
</listitem> </listitem>
...@@ -1637,8 +1685,8 @@ do it for earlier branch release files. ...@@ -1637,8 +1685,8 @@ do it for earlier branch release files.
</para> </para>
<para> <para>
This can improve space reuse by <command>VACUUM</> in the presence of This improves <command>VACUUM</>'s ability to reclaim space
long-running transactions. in the presence of long-running transactions.
</para> </para>
</listitem> </listitem>
...@@ -1737,40 +1785,53 @@ do it for earlier branch release files. ...@@ -1737,40 +1785,53 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Include <acronym>SGT</> (Singapore time) as a valid time zone Include <literal>SGT</> (Singapore time) in the default list of
abbreviation (Tom) known time zone abbreviations (Tom)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Support the <acronym>IS0 8601</> <type>interval</> syntax (Ron Support <literal>infinity</> and <literal>-infinity</> as
Mayer, Kevin Grittner) values of type <type>date</> (Tom)
</para> </para>
</listitem>
<listitem>
<para> <para>
For example, <literal>INTERVAL 'P1Y2M3DT4H5M6.7S'</> is now Make parsing of <type>interval</> literals more standard-compliant (Tom)
supported. </para>
<para>
For example, <literal>INTERVAL '1' YEAR</> now does what it's
supposed to.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow <type>interval</> precision to be specified after the Allow <type>interval</> fractional-seconds precision to be specified
last field, for <acronym>SQL</>-standards compliance (Tom) after the <literal>second</> keyword, for <acronym>SQL</> standard
compliance (Tom)
</para> </para>
<para> <para>
Formerly the precision had to be specified after the keyword Formerly the precision had to be specified after the keyword
<type>interval</> (this syntax is still supported). Data type <type>interval</>. (For backwards compatibility, this syntax is still
definitions will now be output using the new format. supported, though deprecated.) Data type definitions will now be
output using the standard format.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Support <literal>infinity</> and <literal>-infinity</> as Support the <acronym>IS0 8601</> <type>interval</> syntax (Ron
values of type <type>date</> (Tom) Mayer, Kevin Grittner)
</para>
<para>
For example, <literal>INTERVAL 'P1Y2M3DT4H5M6.7S'</> is now
supported.
</para> </para>
</listitem> </listitem>
...@@ -1844,7 +1905,7 @@ do it for earlier branch release files. ...@@ -1844,7 +1905,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add new aggregate function <function>array_agg()</>, which Add aggregate function <function>array_agg()</>, which
returns all aggregated values as a single array (Robert Haas, returns all aggregated values as a single array (Robert Haas,
Jeff Davis, Peter) Jeff Davis, Peter)
</para> </para>
...@@ -1870,15 +1931,8 @@ do it for earlier branch release files. ...@@ -1870,15 +1931,8 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <function>generate_subscripts()</> to generate array Add <function>generate_subscripts()</> to simplify generating
subscripts (Pavel Stehule) the range of an array's subscripts (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Generate proper error if a <type>SERIAL</> array is specified
(Tom)
</para> </para>
</listitem> </listitem>
...@@ -1907,10 +1961,9 @@ do it for earlier branch release files. ...@@ -1907,10 +1961,9 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Improve toast heuristics for rows including a mix of large and Improve <acronym>TOAST</> heuristics for rows that have a mix of large
small toastable fields, so that we prefer to push large values and small toastable fields, so that we prefer to push large values out
out of line and don't compress small values unnecessarily of line and don't compress small values unnecessarily (Greg, Tom)
(Greg, Tom)
</para> </para>
</listitem> </listitem>
...@@ -1950,14 +2003,14 @@ do it for earlier branch release files. ...@@ -1950,14 +2003,14 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Improve full text search <function>headline()</> function to Improve full text search <function>headline()</> function to
allow several fragments (Sushant Sinha) allow extracting several fragments of text (Sushant Sinha)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add <function>suppress_redundant_updates_trigger()</> trigger Add <function>suppress_redundant_updates_trigger()</> trigger
function to prevent non-data-changing updates (Andrew) function to avoid overhead for non-data-changing updates (Andrew)
</para> </para>
</listitem> </listitem>
...@@ -1970,7 +2023,7 @@ do it for earlier branch release files. ...@@ -1970,7 +2023,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <type>TIMESTAMP</> and <type>TIMESTAMPTZ</> versions of Add <type>timestamp</> and <type>timestamptz</> versions of
<function>generate_series()</> (Hitoshi Harada) <function>generate_series()</> (Hitoshi Harada)
</para> </para>
</listitem> </listitem>
...@@ -2020,6 +2073,18 @@ do it for earlier branch release files. ...@@ -2020,6 +2073,18 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add source file name and line number columns to
<literal>pg_settings</> output for variables set in a configuration
file (Magnus, Alvaro)
</para>
<para>
For security reasons, these columns are only visible to superusers.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Add support for <varname>CURRENT_CATALOG</>, Add support for <varname>CURRENT_CATALOG</>,
...@@ -2028,7 +2093,7 @@ do it for earlier branch release files. ...@@ -2028,7 +2093,7 @@ do it for earlier branch release files.
</para> </para>
<para> <para>
These are <acronym>SQL</>-standard capabilities. These provide <acronym>SQL</>-standard syntax for existing features.
</para> </para>
</listitem> </listitem>
...@@ -2042,7 +2107,7 @@ do it for earlier branch release files. ...@@ -2042,7 +2107,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Make <function>version()</> return information about whether Make <function>version()</> return information about whether
the server is a 32 or 64-bit binary (Bruce) the server is a 32- or 64-bit binary (Bruce)
</para> </para>
</listitem> </listitem>
...@@ -2072,7 +2137,15 @@ do it for earlier branch release files. ...@@ -2072,7 +2137,15 @@ do it for earlier branch release files.
<para> <para>
Make <function>pg_*_is_visible()</> and Make <function>pg_*_is_visible()</> and
<function>has_*_privilege()</> functions return <literal>NULL</> <function>has_*_privilege()</> functions return <literal>NULL</>
for invalid oids, rather than generate an error (Tom) for invalid OIDs, rather than reporting an error (Tom)
</para>
</listitem>
<listitem>
<para>
Extend <function>has_*_privilege()</> functions to allow inquiring
about the OR of multiple privileges in one call (Stephen
Frost, Tom)
</para> </para>
</listitem> </listitem>
...@@ -2106,8 +2179,7 @@ do it for earlier branch release files. ...@@ -2106,8 +2179,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Support <literal>DEFAULT</> values for function arguments (Pavel Support default values for function arguments (Pavel Stehule)
Stehule)
</para> </para>
</listitem> </listitem>
...@@ -2136,7 +2208,8 @@ do it for earlier branch release files. ...@@ -2136,7 +2208,8 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Support <literal>EXECUTE USING</> (Pavel Stehule) Support <literal>EXECUTE USING</> for easier insertion of data
values into a dynamic query string (Pavel Stehule)
</para> </para>
</listitem> </listitem>
...@@ -2166,7 +2239,7 @@ do it for earlier branch release files. ...@@ -2166,7 +2239,7 @@ do it for earlier branch release files.
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Support <literal>SQLSTATE</> error codes Support specification of the <literal>SQLSTATE</> error code
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
...@@ -2186,7 +2259,7 @@ do it for earlier branch release files. ...@@ -2186,7 +2259,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Allow specification of numeric <varname>SQLSTATE</> codes Allow specification of <varname>SQLSTATE</> codes
in <literal>EXCEPTION</> lists (Pavel Stehule) in <literal>EXCEPTION</> lists (Pavel Stehule)
</para> </para>
...@@ -2203,8 +2276,9 @@ do it for earlier branch release files. ...@@ -2203,8 +2276,9 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <literal>FOUND</> and <command>GET DIAGNOSTICS</> support Make <command>RETURN QUERY</> set the special <literal>FOUND</> and
for the <literal>RETURN QUERY</> statement (Pavel Stehule) <command>GET DIAGNOSTICS</> <literal>ROW_COUNT</> variables
(Pavel Stehule)
</para> </para>
</listitem> </listitem>
...@@ -2216,12 +2290,6 @@ do it for earlier branch release files. ...@@ -2216,12 +2290,6 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add message translation support (Alvaro)
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Avoid memory leakage when the same function is called at varying Avoid memory leakage when the same function is called at varying
...@@ -2250,15 +2318,16 @@ do it for earlier branch release files. ...@@ -2250,15 +2318,16 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <literal>-w</>/<literal>--no-password</> option that Add <literal>-w</>/<literal>--no-password</> option that
suppresses password prompts to all utilities that have a prevents password prompting in all utilities that have a
<literal>-W</>/<literal>--password</> option (Peter) <literal>-W</>/<literal>--password</> option (Peter)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Remove <literal>-q</> (quiet) option of create* and drop* Remove <option>-q</> (quiet) option of <application>createdb</>,
utility commands (Peter) <application>createuser</>, <application>dropdb</>,
<application>dropuser</> (Peter)
</para> </para>
<para> <para>
...@@ -2297,25 +2366,31 @@ do it for earlier branch release files. ...@@ -2297,25 +2366,31 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Use the pager for wide output (Bruce) Allow all supported spellings of boolean values in <command>\pset</>,
rather than just <literal>on</> and <literal>off</> (Bruce)
</para> </para>
</listitem>
<listitem>
<para> <para>
Require a space between a backslash command and the first Formerly, any string other than <quote>off</> was silently taken
argument (Bernd Helmle) to mean <literal>true</>. <application>psql</> will now complain
about unrecognized spellings (but still take them as <literal>true</>).
</para> </para>
</listitem>
<listitem>
<para> <para>
This removes a historical source of ambiguity. Use the pager for wide output (Bruce)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Display access control rights on multiple lines (Brendan Require a space between a one-letter backslash command and its first
Jurd, Andreas Scherbaum) argument (Bernd Helmle)
</para>
<para>
This removes a historical source of ambiguity.
</para> </para>
</listitem> </listitem>
...@@ -2328,21 +2403,21 @@ do it for earlier branch release files. ...@@ -2328,21 +2403,21 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Allow all supported spellings of boolean values in <command>\pset</>, Add optional <literal>on</>/<literal>off</> argument for
rather than just <literal>on</> and <literal>off</> (Bruce) <command>\timing</> (David Fetter)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add optional <literal>on</>/<literal>off</> arguments for Display access control rights on multiple lines (Brendan
<command>\timing</> (David Fetter) Jurd, Andreas Scherbaum)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Make <command>\l</> show access privileges (Andrew Gilligan) Make <command>\l</> show database access privileges (Andrew Gilligan)
</para> </para>
</listitem> </listitem>
...@@ -2366,68 +2441,72 @@ do it for earlier branch release files. ...@@ -2366,68 +2441,72 @@ do it for earlier branch release files.
<sect4> <sect4>
<title><application>psql</> \d* commands</title> <title><application>psql</> \d* commands</title>
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
Make <command>\d</> show cases where the current table is referenced Make <command>\d*</> commands that do not have a pattern argument
by a foreign-key constraint (Kenneth D'Souza) show system objects only if the <literal>S</> modifier is specified
(Greg Sabino Mullane, Bruce)
</para> </para>
</listitem>
<listitem>
<para> <para>
Make <command>\d</> on a sequence show its column values The former behavior was inconsistent across different variants
(Euler Taveira de Oliveira) of <command>\d</>, and in most cases it provided no easy way to see
just user objects.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add column storage type and other relation options to the Improve <command>\d*</> commands to work with older
<command>\d+</> display (Gregory Stark, Euler Taveira de <productname>PostgreSQL</> server versions (back to 7.4),
Oliveira) not only the current server version
(Guillaume Lelarge)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Show relation size in <command>\dt+</> output (Dickson S. Make <command>\d</> show foreign-key constraints that reference
Guedes) the selected table (Kenneth D'Souza)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Make <command>\d*</> commands that do not have a pattern argument Make <command>\d</> on a sequence show its column values
show system objects only if the <literal>S</> modifier is specified (Euler Taveira de Oliveira)
(Greg Sabino Mullane, Bruce)
</para> </para>
</listitem>
<listitem>
<para> <para>
The former behavior was inconsistent across different variants Add column storage type and other relation options to the
of <command>\d</>, and in most cases it provided no easy way to see <command>\d+</> display (Gregory Stark, Euler Taveira de
just user objects. Oliveira)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Show the values of <literal>enum</> types in <command>\dT+</> (David Show relation size in <command>\dt+</> output (Dickson S.
Fetter) Guedes)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow <command>\dC</> to accept wildcard patterns (Tom) Show the possible values of <literal>enum</> types in <command>\dT+</>
(David Fetter)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow <command>\d*</> commands to work with versions of Allow <command>\dC</> to accept a wildcard pattern, which matches
<productname>PostgreSQL</> back to 7.4 (Guillaume Lelarge) either datatype involved in the cast (Tom)
</para> </para>
</listitem> </listitem>
...@@ -2472,7 +2551,7 @@ do it for earlier branch release files. ...@@ -2472,7 +2551,7 @@ do it for earlier branch release files.
These options were too frequently confused with the option to These options were too frequently confused with the option to
select a database name in other <productname>PostgreSQL</> select a database name in other <productname>PostgreSQL</>
client applications. The functionality is still available, client applications. The functionality is still available,
but you must spell out the long option name but you must now spell out the long option name
<option>--inserts</> or <option>--column-inserts</>. <option>--inserts</> or <option>--column-inserts</>.
</para> </para>
</listitem> </listitem>
...@@ -2543,13 +2622,6 @@ do it for earlier branch release files. ...@@ -2543,13 +2622,6 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add new <application>pg_dump</> option <option>--binary-upgrade</>
for use by binary upgrade utilities (Bruce)
</para>
</listitem>
</itemizedlist> </itemizedlist>
</sect4> </sect4>
...@@ -2572,12 +2644,13 @@ do it for earlier branch release files. ...@@ -2572,12 +2644,13 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add events support (Andrew Chernow, Merlin Moncure) Add <quote>events</> support (Andrew Chernow, Merlin Moncure)
</para> </para>
<para> <para>
This adds the ability to register callbacks to handle private This adds the ability to register callbacks to manage private
data for connection and result creation and destruction. data associated with <structname>PGconn</> and <structname>PGresult</>
objects.
</para> </para>
</listitem> </listitem>
...@@ -2590,12 +2663,12 @@ do it for earlier branch release files. ...@@ -2590,12 +2663,12 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Make <function>PQexecParams()</> return Make <function>PQexecParams()</> and related functions return
<varname>PGRES_EMPTY_QUERY</> for an empty query (Tom) <varname>PGRES_EMPTY_QUERY</> for an empty query (Tom)
</para> </para>
<para> <para>
It previously returned <varname>PGRES_COMMAND_OK</>. They previously returned <varname>PGRES_COMMAND_OK</>.
</para> </para>
</listitem> </listitem>
...@@ -2651,8 +2724,9 @@ do it for earlier branch release files. ...@@ -2651,8 +2724,9 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Properly unregister <application>OpenSSL</> callbacks when Make <application>libpq</> unregister its <application>OpenSSL</>
libpq is finished with all connections (Bruce, Magnus, Russell Smith) callbacks when no database connections remain open
(Bruce, Magnus, Russell Smith)
</para> </para>
<para> <para>
...@@ -2704,7 +2778,7 @@ do it for earlier branch release files. ...@@ -2704,7 +2778,7 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add new <varname>SPI_OK_REWRITTEN</> return code to Add new <varname>SPI_OK_REWRITTEN</> return code for
<function>SPI_execute()</> (Heikki) <function>SPI_execute()</> (Heikki)
</para> </para>
...@@ -2714,6 +2788,18 @@ do it for earlier branch release files. ...@@ -2714,6 +2788,18 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Remove unnecessary inclusions from <filename>executor/spi.h</> (Tom)
</para>
<para>
SPI-using modules might need to add some <literal>#include</>
lines if they were depending on <filename>spi.h</> to include
things for them.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</sect4> </sect4>
...@@ -2757,18 +2843,23 @@ do it for earlier branch release files. ...@@ -2757,18 +2843,23 @@ do it for earlier branch release files.
<para> <para>
Add <application>configure</> option Add <application>configure</> option
<literal>--disable-float4-byval</> to use the old behavior. <literal>--disable-float4-byval</> to use the old behavior.
External C functions that use old-style (version 0) call convention
and pass or return <type>float4</> values will be broken by this
change, so you may need the <application>configure</> option if you
have such functions and don't want to update them.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Pass <type>float8</> and <type>int8</> by value in the server Pass <type>float8</>, <type>int8</>, and related datatypes
where possible (Zoltan Boszormenyi) by value inside the server on 64-bit platforms (Zoltan Boszormenyi)
</para> </para>
<para> <para>
Add <application>configure</> option Add <application>configure</> option
<literal>--disable-float8-byval</> to use the old behavior. <literal>--disable-float8-byval</> to use the old behavior.
As above, this change might break old-style external C functions.
</para> </para>
</listitem> </listitem>
...@@ -2823,6 +2914,13 @@ do it for earlier branch release files. ...@@ -2823,6 +2914,13 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add support for code coverage testing with <application>gcov</>
(Michelle Caisse)
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Allow out-of-tree builds on <productname>Mingw</> and Allow out-of-tree builds on <productname>Mingw</> and
...@@ -2856,6 +2954,20 @@ do it for earlier branch release files. ...@@ -2856,6 +2954,20 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Deprecate use of platform's <type>time_t</> data type (Tom)
</para>
<para>
Some platforms have migrated to 64-bit <type>time_t</>, some have
not, and Windows can't make up its mind what it's doing. Define
<type>pg_time_t</> to have the same meaning as <type>time_t</>,
but always be 64 bits (unless the platform has no 64-bit integer type),
and use that type in all module APIs and on-disk data formats.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Fix bug in handling of the time zone database when cross-compiling Fix bug in handling of the time zone database when cross-compiling
...@@ -2879,53 +2991,57 @@ do it for earlier branch release files. ...@@ -2879,53 +2991,57 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Add <application>DTrace</> probes (Robert Lor) Add message translation support to the PL languages (Alvaro, Peter)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add <application>DTrace</> support on <application>Mac OS X Add more <application>DTrace</> probes (Robert Lor)
Leopard</> (Robert Lor)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add new <type>cstring</> to <type>text</> conversion functions Enable <application>DTrace</> support on <application>Mac OS X
(Brendan Jurd, Tom) Leopard</> and other non-Solaris platforms (Robert Lor)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add a <structfield>relistemp</> column to <structname>pg_class</> Simplify and standardize conversions between C strings and
to ease identification of temporary tables (Tom) <type>text</> datums, by providing common functions for the purpose
(Brendan Jurd, Tom)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Improve logic for shared cache invalidation (Tom) Clean up the <filename>include/catalog/</> header files so that
frontend programs can include them without including
<filename>postgres.h</>
(Zdenek Kotala)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Make <type>name</> char-aligned (Tom) Make <type>name</> char-aligned, and suppress zero-padding of
<type>name</> entries in indexes (Tom)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add function hook to let plug-ins monitor the executor (Itagaki Add a hook to let plug-ins monitor the executor (Itagaki
Takahiro) Takahiro)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add a hook to allow the planner statistics lookup behavior to Add a hook to allow the planner's statistics lookup behavior to
be overridden (Simon Riggs) be overridden (Simon Riggs)
</para> </para>
</listitem> </listitem>
...@@ -2939,20 +3055,42 @@ do it for earlier branch release files. ...@@ -2939,20 +3055,42 @@ do it for earlier branch release files.
<listitem> <listitem>
<para> <para>
Replace <literal>pg_class</> column <literal>reltriggers</> Replace the index access method <function>amgetmulti</> entry point
with boolean <literal>relhastriggers</> (Simon) with <function>amgetbitmap</>, and extend the API for
<function>amgettuple</> to support run-time determination of
operator lossiness (Heikki, Tom, Teodor)
</para>
<para>
The API for GIN and GiST opclass <function>consistent</> functions
has been extended as well.
</para>
</listitem>
<listitem>
<para>
Add support for partial-match searches in <acronym>GIN</> indexes
(Teodor Sigaev, Oleg Bartunov)
</para>
</listitem>
<listitem>
<para>
Replace <structname>pg_class</> column <structfield>reltriggers</>
with boolean <structfield>relhastriggers</> (Simon)
</para> </para>
<para> <para>
Also remove unused <literal>pg_class</> columns <literal>relukeys</>, Also remove unused <structname>pg_class</> columns
<literal>relfkeys</>, and <literal>relrefs</>. <structfield>relukeys</>, <structfield>relfkeys</>, and
<structfield>relrefs</>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Move <acronym>SQL</>-command manual pages from the <filename>manl</> Add a <structfield>relistemp</> column to <structname>pg_class</>
(man-el) section to <filename>man7</> (Peter) to ease identification of temporary tables (Tom)
</para> </para>
</listitem> </listitem>
...@@ -3001,57 +3139,72 @@ do it for earlier branch release files. ...@@ -3001,57 +3139,72 @@ do it for earlier branch release files.
<sect3> <sect3>
<title>Contrib</title> <title>Contrib</title>
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
Add duration and query mode options to <filename>contrib/pgbench</> Add <filename>contrib/auto_explain</> to automatically run
(Itagaki Takahiro) <command>EXPLAIN</> on queries exceeding a specified duration
(Itagaki Takahiro, Tom)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Fix <filename>contrib/pgstattuple</> to handle tables and Add <filename>contrib/btree_gin</> to allow GIN indexes to
indexes with over 2 billion pages (Tatsuhito Kasahara) handle more datatypes (Oleg, Teodor)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add Levenshtein string-distance function to Add <filename>contrib/citext</> to provide a case-insensitive,
<filename>contrib/fuzzystrmatch</> that allows the user to multibyte-aware text data type (David Wheeler)
specify the cost of insertion, deletion, and substitution
(Volkan Yazici)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Remove <function>dblink_current_query()</> from Add <filename>contrib/pg_stat_statements</> for server-wide
<filename>contrib/dblink</>; one should now use tracking of statement execution statistics (Itagaki Takahiro)
<function>current_query()</> (Tomas Doran)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Make <filename>contrib/ltree</> support multibyte encodings Add duration and query mode options to <filename>contrib/pgbench</>
(laser) (Itagaki Takahiro)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add <filename>contrib/btree_gin</> to allow GIN indexes to Fix <filename>contrib/pgstattuple</> to handle tables and
handle more datatypes (Oleg, Teodor) indexes with over 2 billion pages (Tatsuhito Kasahara)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add <filename>contrib/citext</> to provide a case-insensitive, In <filename>contrib/fuzzystrmatch</>, add a version of the
multibyte-aware text data type (David Wheeler) Levenshtein string-distance function that allows the user to
specify the costs of insertion, deletion, and substitution
(Volkan Yazici)
</para>
</listitem>
<listitem>
<para>
Make <filename>contrib/ltree</> support multibyte encodings
(laser)
</para>
</listitem>
<listitem>
<para>
Improve <filename>contrib/dblink</>'s reporting of errors from
the remote server (Joe Conway)
</para> </para>
</listitem> </listitem>
...@@ -3063,7 +3216,7 @@ do it for earlier branch release files. ...@@ -3063,7 +3216,7 @@ do it for earlier branch release files.
</para> </para>
<para> <para>
This is a security enhancement. This is a minor security enhancement.
</para> </para>
</listitem> </listitem>
...@@ -3111,21 +3264,6 @@ do it for earlier branch release files. ...@@ -3111,21 +3264,6 @@ do it for earlier branch release files.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add <filename>contrib/auto_explain</> to automatically run
<command>EXPLAIN</> on queries exceeding a specified duration
(Itagaki Takahiro, Tom)
</para>
</listitem>
<listitem>
<para>
Add <filename>contrib/pg_stat_statements</> for server-wide
tracking of statement execution statistics (Itagaki Takahiro)
</para>
</listitem>
</itemizedlist> </itemizedlist>
</sect3> </sect3>
......
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