Commit 554032b3 authored by Tom Lane's avatar Tom Lane

Update release notes to current, and do a pass of editorial corrections.

parent 8b175c75
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.476 2006/10/20 16:34:48 alvherre Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.477 2006/10/20 23:02:20 tgl Exp $ -->
<!-- <!--
Typical markup: Typical markup:
...@@ -40,40 +40,51 @@ links to the main documentation. ...@@ -40,40 +40,51 @@ links to the main documentation.
<note> <note>
<title>Release date</title> <title>Release date</title>
<simpara>2006-1?-??</simpara> <simpara>2006-1?-??</simpara>
<para>CURRENT AS OF 2006-09-21</> <para>CURRENT AS OF 2006-10-18</>
</note> </note>
<sect2> <sect2>
<title>Overview</title> <title>Overview</title>
<para> <para>
This release adds many improvements to commands and database This release adds many functionality and performance improvements that
facilities that were requested by users, including: were requested by users, including:
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
Improved sort performance with lower memory usage Query language enhancements including <command>INSERT/UPDATE/DELETE
RETURNING</command>, multi-row <literal>VALUES</literal> lists, and
optional target-table alias in
<command>UPDATE</>/<command>DELETE</command>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
More efficient locking with better concurrency Index creation without blocking concurrent
<command>INSERT</>/<command>UPDATE</>/<command>DELETE</>
operations
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
New <literal>FILLFACTOR</literal> support for tables and indexes Many query optimization improvements, including support for
reordering outer joins
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Many query optimization improvements, including support for Improved sorting performance with lower memory usage
reordering outer joins </para>
</listitem>
<listitem>
<para>
More efficient locking with better concurrency
</para> </para>
</listitem> </listitem>
...@@ -85,21 +96,19 @@ links to the main documentation. ...@@ -85,21 +96,19 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Warm standby server enhancements Easier administration of warm standby servers
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Monitoring, logging, and performance tuning additions New <literal>FILLFACTOR</literal> support for tables and indexes
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Query language enhancements including <literal>RETURNING</literal> Monitoring, logging, and performance tuning additions
values, multi-<literal>VALUES</literal> support, and
self-joins for <command>DELETE</command>
</para> </para>
</listitem> </listitem>
...@@ -111,28 +120,28 @@ links to the main documentation. ...@@ -111,28 +120,28 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Allow table inheritance to be added and removed from pre-existing tables Table inheritance relationships can be defined
for and removed from pre-existing tables
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Index creation without blocking concurrent <command>COPY TO</command> can copy the output of an arbitrary
<command>INSERT</>/<command>UPDATE</>/<command>DELETE</> <command>SELECT</command> statement
operations
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<command>COPY TO</command> support for <command>SELECT</command> statements Array improvements, including nulls in arrays
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Array and aggregate improvements, including SQL:2003 Aggregate-function improvements, including multiple-input
statistical functions aggregates and SQL:2003 statistical functions
</para> </para>
</listitem> </listitem>
...@@ -211,7 +220,21 @@ links to the main documentation. ...@@ -211,7 +220,21 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Have <link linkend="SQL-SET-CONSTRAINTS"><command>SET Make <link linkend="functions-comparison">row <literal>IS <optional>NOT</> NULL</literal></link>
tests follow <acronym>SQL</> standard semantics (Tom)
</para>
<para>
The former behavior conformed to the standard for simple cases
with <literal>IS NULL</>, but <literal>IS NOT NULL</> would return
true if any row field was non-null, whereas the standard says it
should return true only when all fields are non-null.
</para>
</listitem>
<listitem>
<para>
Make <link linkend="SQL-SET-CONSTRAINTS"><command>SET
CONSTRAINT</></link> affect only one constraint (Kris Jurka) CONSTRAINT</></link> affect only one constraint (Kris Jurka)
</para> </para>
...@@ -220,18 +243,18 @@ links to the main documentation. ...@@ -220,18 +243,18 @@ links to the main documentation.
all constraints with a matching name. In this release, all constraints with a matching name. In this release,
the schema search path is used to modify only the first the schema search path is used to modify only the first
matching constraint. A schema specification is also matching constraint. A schema specification is also
supported. supported. This more nearly conforms to the SQL standard.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Remove rule permission for tables, for security reasons Remove <literal>RULE</> permission for tables, for security reasons
(Tom) (Tom)
</para> </para>
<para> <para>
In this release, only a table's owner can create or modify As of this release, only a table's owner can create or modify
rules for the table. For backwards compatibility, rules for the table. For backwards compatibility,
<command>GRANT</>/<command>REVOKE RULE</> is still accepted, <command>GRANT</>/<command>REVOKE RULE</> is still accepted,
but it does nothing. but it does nothing.
...@@ -295,22 +318,22 @@ links to the main documentation. ...@@ -295,22 +318,22 @@ links to the main documentation.
<para> <para>
In prior releases, <varname>log_duration</> only printed if In prior releases, <varname>log_duration</> only printed if
the query appeared earlier in the logs. the query appeared earlier in the log.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Have <link Make <link
linkend="functions-formatting"><function>to_char(time)</></link> linkend="functions-formatting"><function>to_char(time)</></link>
and <link and <link
linkend="functions-formatting"><function>to_char(interval)</></link> linkend="functions-formatting"><function>to_char(interval)</></link>
treat <literal>'HH'</> and <literal>'HH12'</> as 12-hour treat <literal>HH</> and <literal>HH12</> as 12-hour
intervals. intervals
</para> </para>
<para> <para>
Most applications should use <literal>'HH24'</> unless they Most applications should use <literal>HH24</> unless they
want a 12-hour display. want a 12-hour display.
</para> </para>
</listitem> </listitem>
...@@ -321,6 +344,11 @@ links to the main documentation. ...@@ -321,6 +344,11 @@ links to the main documentation.
linkend="datatype-inet"><type>INET</></link> to <link linkend="datatype-inet"><type>INET</></link> to <link
linkend="datatype-inet"><type>CIDR</></link> (Tom) linkend="datatype-inet"><type>CIDR</></link> (Tom)
</para> </para>
<para>
This ensures that the converted value is actually valid for
<type>CIDR</>.
</para>
</listitem> </listitem>
<listitem> <listitem>
...@@ -330,8 +358,8 @@ links to the main documentation. ...@@ -330,8 +358,8 @@ links to the main documentation.
</para> </para>
<para> <para>
No longer needed now that timezone abbreviations are This variable has been superseded by a more general facility
configurable. for configuring timezone abbreviations.
</para> </para>
</listitem> </listitem>
...@@ -359,8 +387,8 @@ links to the main documentation. ...@@ -359,8 +387,8 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Change <link linkend="libpq"><application>libpq</></link> Declare <link linkend="libpq"><application>libpq</></link>
<function>PQgetssl()</> to return a <literal>void *</>, <function>PQgetssl()</> as returning <literal>void *</>,
rather than <literal>SSL *</> (Martijn van Oosterhout) rather than <literal>SSL *</> (Martijn van Oosterhout)
</para> </para>
...@@ -378,8 +406,8 @@ links to the main documentation. ...@@ -378,8 +406,8 @@ links to the main documentation.
<para> <para>
<function>xml_valid()</> will remain for backward compatibility, <function>xml_valid()</> will remain for backward compatibility,
but its behavior will change to do schema checks in future but its behavior will change to do schema checking in a future
releases. release.
</para> </para>
</listitem> </listitem>
...@@ -399,7 +427,7 @@ links to the main documentation. ...@@ -399,7 +427,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Remove abandoned contrib modules: mSQL-interface, ips Remove abandoned contrib modules: mSQL-interface, tips
</para> </para>
</listitem> </listitem>
...@@ -420,7 +448,7 @@ links to the main documentation. ...@@ -420,7 +448,7 @@ links to the main documentation.
<title>Changes</title> <title>Changes</title>
<para> <para>
Below you will find a detailed account of the additional Below you will find a detailed account of the
changes between <productname>PostgreSQL</productname> 8.2 and changes between <productname>PostgreSQL</productname> 8.2 and
the previous major release. the previous major release.
</para> </para>
...@@ -460,12 +488,6 @@ links to the main documentation. ...@@ -460,12 +488,6 @@ links to the main documentation.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Improve <command>COPY</> performance (Alon Goldshuv, Tom)
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Add <literal>FILLFACTOR</> to <link Add <literal>FILLFACTOR</> to <link
...@@ -475,7 +497,7 @@ links to the main documentation. ...@@ -475,7 +497,7 @@ links to the main documentation.
</para> </para>
<para> <para>
This adds extra free space to each table or index page, This leaves extra free space in each table or index page,
allowing improved performance as the database grows. This allowing improved performance as the database grows. This
is particularly valuable to maintain <command>CLUSTER</>ing. is particularly valuable to maintain <command>CLUSTER</>ing.
</para> </para>
...@@ -483,7 +505,8 @@ links to the main documentation. ...@@ -483,7 +505,8 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Improve locking performance by breaking locks into sections Improve locking performance by breaking the lock manager tables into
sections
(Tom) (Tom)
</para> </para>
...@@ -515,12 +538,12 @@ links to the main documentation. ...@@ -515,12 +538,12 @@ links to the main documentation.
<para> <para>
In previous releases, outer joins would always be evaluated in In previous releases, outer joins would always be evaluated in
the order specified by the query. This change means that the the order written in the query. This change allows the
query optimizer will consider reordering outer joins in some query optimizer to consider reordering outer joins, in cases where
cases, provided that the join order can be changed without it can determine that the join order can be changed without
altering the meaning of the query. This can make a altering the meaning of the query. This can make a
considerable performance difference for queries involving considerable performance difference for queries involving
multiple outer joins. multiple outer joins or mixed inner and outer joins.
</para> </para>
</listitem> </listitem>
...@@ -557,8 +580,21 @@ links to the main documentation. ...@@ -557,8 +580,21 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
<function>MIN()</> and <function>MAX()</> can now use indexes Improve planning of constant <literal>WHERE</> clauses, such as
in more cases (Tom) a condition that depends only on variables inherited from an
outer query level (Tom)
</para>
</listitem>
<listitem>
<para>
Protocol-level unnamed prepared statements are re-planned
for each set of <literal>BIND</> values (Tom)
</para>
<para>
This improves performance because the exact parameter values
can be used in the plan.
</para> </para>
</listitem> </listitem>
...@@ -571,15 +607,15 @@ links to the main documentation. ...@@ -571,15 +607,15 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Improve multicolumn <link linkend="GiST"><acronym>GiST</></link> Avoid extra scan of tables without indexes during <link
indexing (Oleg, Teodor) linkend="SQL-VACUUM"><command>VACUUM</></link> (Greg Stark)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<link linkend="GiST"><acronym>GiST</></link> indexes now Improve multicolumn <link linkend="GiST"><acronym>GiST</></link>
are clusterable (Teodor) indexing (Oleg, Teodor)
</para> </para>
</listitem> </listitem>
...@@ -604,12 +640,12 @@ links to the main documentation. ...@@ -604,12 +640,12 @@ links to the main documentation.
</para> </para>
<para> <para>
This is valuable for keeping continuous archiving servers This is valuable for keeping warm standby slave servers
in sync with the master. xlog file switching also happens in sync with the master. xlog file switching now also happens
automatically during <link automatically during <link
linkend="functions-admin"><function>pg_stop_backup()</></link>. linkend="functions-admin"><function>pg_stop_backup()</></link>.
This ensures that continuous archiving servers have all This ensures that all
xlog files needed for recovery. xlog files needed for recovery can be archived immediately.
</para> </para>
</listitem> </listitem>
...@@ -623,21 +659,20 @@ links to the main documentation. ...@@ -623,21 +659,20 @@ links to the main documentation.
point and determining <acronym>WAL</> filenames from the point and determining <acronym>WAL</> filenames from the
hex <acronym>WAL</> locations displayed by <link hex <acronym>WAL</> locations displayed by <link
linkend="functions-admin"><function>pg_stop_backup()</></link> linkend="functions-admin"><function>pg_stop_backup()</></link>
and friends. and related functions.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow <acronym>WAL</> replay to be restored quicker in case Improve recovery from a crash during <acronym>WAL</> replay (Simon)
of a crash (Simon)
</para> </para>
<para> <para>
The server now does periodic checkpoints during <acronym>WAL</> The server now does periodic checkpoints during <acronym>WAL</>
recovery, so if there is a crash, future <acronym>WAL</> recovery, so if there is a crash, future <acronym>WAL</>
recovery is shortened. This also eliminates the need for recovery is shortened. This also eliminates the need for
continuous archive servers to replay the entire log since the warm standby servers to replay the entire log since the
base backup if they crash. base backup if they crash.
</para> </para>
</listitem> </listitem>
...@@ -650,7 +685,7 @@ links to the main documentation. ...@@ -650,7 +685,7 @@ links to the main documentation.
</para> </para>
<para> <para>
This enforces a maximum delay for continuous archive servers. This enforces a maximum replication delay for warm standby servers.
</para> </para>
</listitem> </listitem>
...@@ -669,14 +704,13 @@ links to the main documentation. ...@@ -669,14 +704,13 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add <link linkend="sql-grant-description-objects"><literal>GRANT Add <link linkend="sql-grant-description-objects"><literal>GRANT
CONNECT ON DATABASE</></link>, to be used in addition to CONNECT ON DATABASE</></link> (Gevik Babakhani)
<link linkend="auth-pg-hba-conf"><filename>pg_hba.conf</></link>
(Gevik Babakhani)
</para> </para>
<para> <para>
This gives SQL-control over database access, and works in This gives SQL-level control over database access. It works as
combination with the existing <filename>pg_hba.conf</> an additional filter on top of the existing
<link linkend="auth-pg-hba-conf"><filename>pg_hba.conf</></link>
controls. controls.
</para> </para>
</listitem> </listitem>
...@@ -684,12 +718,20 @@ links to the main documentation. ...@@ -684,12 +718,20 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add support for <link linkend="ssl-tcp"><acronym>SSL</> Add support for <link linkend="ssl-tcp"><acronym>SSL</>
Certificate Revocation List</link> (<acronym>CRL</>) files, Certificate Revocation List</link> (<acronym>CRL</>) files
<filename>root.crl</> (Libor Hoho&scaron;) (Libor Hoho&scaron;)
</para> </para>
<para> <para>
This was added to <application>libpq</> as well. The server and <application>libpq</> both recognize <acronym>CRL</>
files now.
</para>
</listitem>
<listitem>
<para>
<link linkend="GiST"><acronym>GiST</></link> indexes are
now clusterable (Teodor)
</para> </para>
</listitem> </listitem>
...@@ -725,7 +767,7 @@ links to the main documentation. ...@@ -725,7 +767,7 @@ links to the main documentation.
<para> <para>
These values now appear in the <link These values now appear in the <link
linkend="monitoring-stats-views-table"><literal>pg_stat_*_tables</></link> linkend="monitoring-stats-views-table"><literal>pg_stat_*_tables</></link>
system views, and are used by autovacuum. ? system views.
</para> </para>
</listitem> </listitem>
...@@ -754,17 +796,23 @@ links to the main documentation. ...@@ -754,17 +796,23 @@ links to the main documentation.
</para> </para>
<para> <para>
This allows <literal>pg_stat_activity</> to show the same This allows <structname>pg_stat_activity</> to show all the
information as the <literal>ps</> display. information included in the <application>ps</> display.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add <acronym>GUC</> variable <link Add configuration parameter <link
linkend="guc-update-process-title"><varname>update_process_title</></link> linkend="guc-update-process-title"><varname>update_process_title</></link>
to control whether the <application>ps</> display is updated to control whether the <application>ps</> display is updated
for every command, default to <literal>on</> (Bruce) for every command (Bruce)
</para>
<para>
On platforms where it is expensive to update the <application>ps</>
display, it may be worthwhile to turn this off and rely solely on
<structname>pg_stat_activity</> for status information.
</para> </para>
</listitem> </listitem>
...@@ -776,8 +824,8 @@ links to the main documentation. ...@@ -776,8 +824,8 @@ links to the main documentation.
<para> <para>
For example, you can now set <link For example, you can now set <link
linkend="guc-shared-buffers"><varname>shared_buffer</></link> linkend="guc-shared-buffers"><varname>shared_buffers</></link>
to <literal>32000kB</>. to <literal>32MB</> rather than mentally converting sizes.
</para> </para>
</listitem> </listitem>
...@@ -801,6 +849,34 @@ links to the main documentation. ...@@ -801,6 +849,34 @@ links to the main documentation.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Prevent <link
linkend="guc-max-stack-depth"><varname>max_stack_depth</></link>
from being set to unsafe values
</para>
<para>
On platforms where we can determine the actual kernel stack depth
limit (which is most), make sure that the initial default value of
<varname>max_stack_depth</> is safe, and reject attempts to set it
to unsafely large values.
</para>
</listitem>
<listitem>
<para>
Enable highlighting of error location in query in more
cases (Tom)
</para>
<para>
The server is now able to report a specific error location for
some semantic errors (such as unrecognized column name), rather
than just for basic syntax errors as before.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</sect3> </sect3>
...@@ -827,9 +903,8 @@ links to the main documentation. ...@@ -827,9 +903,8 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add support for multiple-row <link Add support for multiple-row <link
linkend="queries-values"><literal>VALUES</></link> clauses linkend="queries-values"><literal>VALUES</></link> clauses,
as part of <command>INSERT</> and <command>SELECT</> per SQL standard (Joe, Tom)
statements, per SQL standard (Joe, Tom)
</para> </para>
<para> <para>
...@@ -849,9 +924,8 @@ links to the main documentation. ...@@ -849,9 +924,8 @@ links to the main documentation.
</para> </para>
<para> <para>
This allows these statements to support self-joins more The SQL standard does not permit an alias in these commands, but
conveniently. <command>UPDATE</> already supported as many database systems allow one anyway for notational convenience.
<literal>FROM</> clause, but <command>DELETE</> did not.
</para> </para>
</listitem> </listitem>
...@@ -863,19 +937,22 @@ links to the main documentation. ...@@ -863,19 +937,22 @@ links to the main documentation.
</para> </para>
<para> <para>
This is basically as short-hand for assigning the columns This is basically a short-hand for assigning the columns
and values in pairs. The syntax is <literal>UPDATE tab and values in pairs. The syntax is <literal>UPDATE tab
SET (col, ...) = (val, ...)</>. SET (<replaceable>column</>, ...) = (<replaceable>val</>, ...)</>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow additional row value comparisons (Tom) Make row comparisons work per standard (Tom)
</para> </para>
<para> <para>
Add &lt;, &lt;=, &gt;, &gt;=. The forms &lt;, &lt;=, &gt;, &gt;= now compare rows lexicographically,
that is, compare the first elements, if equal compare the second
elements, and so on. Formerly they expanded to an AND condition
across all the elements, which was neither standard nor very useful.
</para> </para>
</listitem> </listitem>
...@@ -886,8 +963,9 @@ links to the main documentation. ...@@ -886,8 +963,9 @@ links to the main documentation.
</para> </para>
<para> <para>
This allows <command>TRUNCATE</> to automatically truncate all This causes <command>TRUNCATE</> to automatically include all tables
foreign-key referencing tables. that reference the specified table(s) via foreign keys. While
convenient, this is a dangerous tool &mdash; use with caution!
</para> </para>
</listitem> </listitem>
...@@ -921,8 +999,8 @@ links to the main documentation. ...@@ -921,8 +999,8 @@ links to the main documentation.
</para> </para>
<para> <para>
When all columns are of the same defined length, that length When all corresponding columns are of the same defined length, that
is used for output, rather than a generic length. length is used for the result, rather than a generic length.
</para> </para>
</listitem> </listitem>
...@@ -935,7 +1013,7 @@ links to the main documentation. ...@@ -935,7 +1013,7 @@ links to the main documentation.
<para> <para>
Internally, <literal>ILIKE</> now calls <function>lower()</> Internally, <literal>ILIKE</> now calls <function>lower()</>
and then uses <literal>LIKE</>. Locale-specific regular and then uses <literal>LIKE</>. Locale-specific regular
expression operations still do not work in these encodings. expression patterns still do not work in these encodings.
</para> </para>
</listitem> </listitem>
...@@ -947,31 +1025,39 @@ links to the main documentation. ...@@ -947,31 +1025,39 @@ links to the main documentation.
</para> </para>
<para> <para>
This allow special backslash escaping in strings to be This allows backslash escaping in strings to be disabled,
turned off so <productname>PostgreSQL</> is more making <productname>PostgreSQL</> more
standards-compliant. The default is <literal>off</>, but standards-compliant. The default is <literal>off</> for backwards
future releases will default this to <literal>on</>. compatibility, but future releases will default this to <literal>on</>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add system view <link Do not flatten subqueries that contain <literal>volatile</>
linkend="view-pg-prepared-statements"><literal>pg_prepared_statements</></link> functions in their target lists (Jaime Casanova)
to show prepared statements (Joachim Wieland, Neil) </para>
<para>
This prevents surprising behavior due to multiple evaluation
of a <literal>volatile</> function (such as <function>random()</>
or <function>nextval()</>). It may cause performance
degradation in the presence of functions that are unnecessarily
marked as <literal>volatile</>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add system view <link Add system views <link
linkend="view-pg-cursors"><literal>pg_cursors</></link> to linkend="view-pg-prepared-statements"><literal>pg_prepared_statements</></link>
show open cursors (Joachim Wieland, Neil) and <link
linkend="view-pg-cursors"><literal>pg_cursors</></link>
to show prepared statements and open cursors (Joachim Wieland, Neil)
</para> </para>
<para> <para>
This, and <literal>pg_prepared_statements</> above, are very These are very useful in pooled connection setups.
useful for pooled connection setups.
</para> </para>
</listitem> </listitem>
...@@ -983,8 +1069,8 @@ links to the main documentation. ...@@ -983,8 +1069,8 @@ links to the main documentation.
</para> </para>
<para> <para>
This allows, for example, <literal>?</> parameters to work This allows, for example, <acronym>JDBC</> <literal>?</> parameters to
in these commands in <acronym>JDBC</>. work in these commands.
</para> </para>
</listitem> </listitem>
...@@ -992,7 +1078,7 @@ links to the main documentation. ...@@ -992,7 +1078,7 @@ links to the main documentation.
<para> <para>
If <acronym>SQL</>-level <link If <acronym>SQL</>-level <link
linkend="SQL-PREPARE"><command>PREPARE</></link> parameters linkend="SQL-PREPARE"><command>PREPARE</></link> parameters
are unspecified, infer their types from the context of the are unspecified, infer their types from the content of the
query (Neil) query (Neil)
</para> </para>
...@@ -1001,18 +1087,6 @@ links to the main documentation. ...@@ -1001,18 +1087,6 @@ links to the main documentation.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Protocol-level unnamed prepared statements are re-planned
for each set of <literal>BIND</> values (Tom)
</para>
<para>
This improves performance because the exact parameter values
can be used in the plan.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Allow <literal>LIMIT</> and <literal>OFFSET</> to exceed Allow <literal>LIMIT</> and <literal>OFFSET</> to exceed
...@@ -1073,10 +1147,19 @@ links to the main documentation. ...@@ -1073,10 +1147,19 @@ links to the main documentation.
</para> </para>
<para> <para>
Shell types create a type reference, without specifying A shell type declaration creates a type name, without specifying
any of the aspects of the type. It is useful for creating any of the details of the type. Making a shell type is useful
types with input/output functions that reference the data because it allows cleaner declaration of the type's input/output
type. The syntax is <command>CREATE TYPE <replaceable class="parameter">typename</replaceable></>. functions, which must exist before the type can be defined <quote>for
real</>. The syntax is <command>CREATE TYPE <replaceable
class="parameter">typename</replaceable></>.
</para>
</listitem>
<listitem>
<para>
<link linkend="SQL-CREATEAGGREGATE">Aggregate functions</link>
now support multiple input parameters (Sergey Koposov, Tom)
</para> </para>
</listitem> </listitem>
...@@ -1097,16 +1180,9 @@ links to the main documentation. ...@@ -1097,16 +1180,9 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
<link linkend="SQL-CREATEAGGREGATE">Aggregate functions</link> Add <link
now support multiple input parameters (Sergey Koposov, Tom) linkend="SQL-ALTERROLE"><command>ALTER ROLE PASSWORD NULL</></link>
</para> to remove a previously set role password (Peter)
</listitem>
<listitem>
<para>
Add <command>CREATE</>/<command>ALTER <link
linkend="SQL-CREATEROLE">ROLE PASSWORD NULL</link></>,
which removes the role's password (Peter)
</para> </para>
</listitem> </listitem>
...@@ -1164,8 +1240,9 @@ links to the main documentation. ...@@ -1164,8 +1240,9 @@ links to the main documentation.
</para> </para>
<para> <para>
<literal>USAGE</> permission allows more find-grained <literal>USAGE</> permission allows more fine-grained
control over sequence access. It allows users to increment control over sequence access. Granting <literal>USAGE</>
allows users to increment
a sequence, but prevents them from setting the sequence to a sequence, but prevents them from setting the sequence to
an arbitrary value using <function>setval()</>. an arbitrary value using <function>setval()</>.
</para> </para>
...@@ -1174,13 +1251,13 @@ links to the main documentation. ...@@ -1174,13 +1251,13 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add <link linkend="SQL-ALTERTABLE"><literal>ALTER TABLE Add <link linkend="SQL-ALTERTABLE"><literal>ALTER TABLE
... [ NO ] INHERIT</></link> (Greg Stark) [ NO ] INHERIT</></link> (Greg Stark)
</para> </para>
<para> <para>
This allow inheritance to be adjusted dynamically, rather than This allows inheritance to be adjusted dynamically, rather than
just at table creation and destruction. This is very valuable just at table creation and destruction. This is very valuable
for table partitioning using constraint exclusion. when using inheritance to implement table partitioning.
</para> </para>
</listitem> </listitem>
...@@ -1191,9 +1268,12 @@ links to the main documentation. ...@@ -1191,9 +1268,12 @@ links to the main documentation.
</para> </para>
<para> <para>
Previously, global object comments were stored in individual Previously, comments attached to databases were stored in individual
databases, making them ineffective. This adds a new databases, making them ineffective, and there was no provision
<literal>pg_shdescription</> system catalog. at all for comments on roles. This change adds a new
<link
linkend="catalog-pg-shdescription"><structname>pg_shdescription</structname></link>
system catalog and stores comments on databases and roles therein.
</para> </para>
</listitem> </listitem>
...@@ -1226,8 +1306,8 @@ links to the main documentation. ...@@ -1226,8 +1306,8 @@ links to the main documentation.
</para> </para>
<para> <para>
This is a new locking API that is similar to what used to be This is a new locking API designed to replace what used to be
in /contrib. The /contrib code is now on pgfoundry. in /contrib/userlock. The userlock code is now on pgfoundry.
</para> </para>
</listitem> </listitem>
...@@ -1246,7 +1326,7 @@ links to the main documentation. ...@@ -1246,7 +1326,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Have the <link linkend="SQL-COPY"><command>COPY</></link> Make the <link linkend="SQL-COPY"><command>COPY</></link>
command return a command tag that includes the number of command return a command tag that includes the number of
rows copied (Volkan YAZICI) rows copied (Volkan YAZICI)
</para> </para>
...@@ -1262,7 +1342,7 @@ links to the main documentation. ...@@ -1262,7 +1342,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Have <link linkend="APP-INITDB"><application>initdb</></link> Make <link linkend="APP-INITDB"><application>initdb</></link>
detect the operating system locale and set the default detect the operating system locale and set the default
<varname>DateStyle</> accordingly (Peter) <varname>DateStyle</> accordingly (Peter)
</para> </para>
...@@ -1270,20 +1350,13 @@ links to the main documentation. ...@@ -1270,20 +1350,13 @@ links to the main documentation.
<para> <para>
This makes it more likely that the installed This makes it more likely that the installed
<filename>postgresql.conf</> <varname>DateStyle</> value will <filename>postgresql.conf</> <varname>DateStyle</> value will
be correct. be as desired.
</para>
</listitem>
<listitem>
<para>
Avoid extra scan of tables without indexes during <link
linkend="SQL-VACUUM"><command>VACUUM</></link> (Greg Stark)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Reduce progress messages displayed by <application>initdb</> (Tom) Reduce number of progress messages displayed by <application>initdb</> (Tom)
</para> </para>
</listitem> </listitem>
...@@ -1298,7 +1371,7 @@ links to the main documentation. ...@@ -1298,7 +1371,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Allow full timezone names in <link Allow full timezone names in <link
linkend="datatype-datetime"><type>timestamp</></link> values linkend="datatype-datetime"><type>timestamp</></link> input values
(Joachim Wieland) (Joachim Wieland)
</para> </para>
...@@ -1310,12 +1383,12 @@ links to the main documentation. ...@@ -1310,12 +1383,12 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Create a configuration file of timezone abbreviations Support configurable timezone abbreviations (Joachim Wieland)
(Joachim Wieland)
</para> </para>
<para> <para>
The file name is controlled by the GUC variable <link A desired set of timezone abbreviations can be chosen via the
configuration parameter <link
linkend="guc-timezone-abbreviations"><varname>timezone_abbreviations</></link>. linkend="guc-timezone-abbreviations"><varname>timezone_abbreviations</></link>.
</para> </para>
</listitem> </listitem>
...@@ -1371,7 +1444,7 @@ links to the main documentation. ...@@ -1371,7 +1444,7 @@ links to the main documentation.
<para> <para>
Intervals and times are treated as 24-hour periods, e.g. Intervals and times are treated as 24-hour periods, e.g.
<literal>25 hours</> is <acronym>AM</>. <literal>25 hours</> is considered <acronym>AM</>.
</para> </para>
</listitem> </listitem>
...@@ -1383,6 +1456,16 @@ links to the main documentation. ...@@ -1383,6 +1456,16 @@ links to the main documentation.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Allow timezone offsets up to 14:59 away from GMT
</para>
<para>
Kiribati uses GMT+14, so we'd better accept that.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Interval computation improvements (Michael Glaesemann, Bruce) Interval computation improvements (Michael Glaesemann, Bruce)
...@@ -1405,13 +1488,26 @@ links to the main documentation. ...@@ -1405,13 +1488,26 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
New <link linkend="functions-array">operators</link> Allow assignment to array elements not contiguous with the existing
entries (Tom)
</para>
<para>
The intervening array positions will be filled with nulls.
This is per SQL standard.
</para>
</listitem>
<listitem>
<para>
New built-in <link linkend="functions-array">operators</link>
for array-subset comparisons (<literal>@&gt;</>, for array-subset comparisons (<literal>@&gt;</>,
<literal>&lt;@</>, <literal>&amp;&amp;</>) (Teodor, Tom) <literal>&lt;@</>, <literal>&amp;&amp;</>) (Teodor, Tom)
</para> </para>
<para> <para>
The old operators were kept for backward compatibility. These operators can be indexed for many data types using
<acronym>GiST</> or <acronym>GIN</> indexes.
</para> </para>
</listitem> </listitem>
...@@ -1425,17 +1521,17 @@ links to the main documentation. ...@@ -1425,17 +1521,17 @@ links to the main documentation.
<para> <para>
The new operators are <literal>&</> (and), <literal>|</> The new operators are <literal>&</> (and), <literal>|</>
(or), <literal>~</> (not), <literal>+</> <type>int8</>, (or), <literal>~</> (not), <type>inet</> <literal>+</> <type>int8</>,
<literal>-</> <type>int8</>, and <type>inet</> <literal>-</> <type>inet</> <literal>-</> <type>int8</>, and
<type>inet</>. <type>inet</> <literal>-</> <type>inet</>.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add new aggregate <link Add new <link
linkend="functions-aggregate-statistics-table">functions</link> linkend="functions-aggregate-statistics-table">aggregate functions</link>
from SQL2003 (Neil) from SQL:2003 (Neil)
</para> </para>
<para> <para>
...@@ -1444,14 +1540,14 @@ links to the main documentation. ...@@ -1444,14 +1540,14 @@ links to the main documentation.
<function>stddev_samp()</>. <function>var_samp()</> and <function>stddev_samp()</>. <function>var_samp()</> and
<function>stddev_samp()</> are merely renamings of the <function>stddev_samp()</> are merely renamings of the
existing aggregates <function>variance()</> and existing aggregates <function>variance()</> and
<function>stddev()</>. The latter names have been kept <function>stddev()</>. The latter names remain available
for backward compatibility. for backward compatibility.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add SQL2003-standard statistical <link Add SQL:2003 statistical <link
linkend="functions-aggregate-statistics-table">aggregates</link> linkend="functions-aggregate-statistics-table">aggregates</link>
(Sergey Koposov) (Sergey Koposov)
</para> </para>
...@@ -1470,7 +1566,7 @@ links to the main documentation. ...@@ -1470,7 +1566,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Allow <link linkend="SQL-CREATEDOMAIN">domains</link> to be Allow <link linkend="SQL-CREATEDOMAIN">domains</link> to be
created using other domains (Tom) based on other domains (Tom)
</para> </para>
</listitem> </listitem>
...@@ -1484,7 +1580,7 @@ links to the main documentation. ...@@ -1484,7 +1580,7 @@ links to the main documentation.
<para> <para>
For example, the result of a user-defined function that is For example, the result of a user-defined function that is
declared to return a domain type is now checked against the declared to return a domain type is now checked against the
constraints. This closes a significant hole in the domain domain's constraints. This closes a significant hole in the domain
implementation. implementation.
</para> </para>
</listitem> </listitem>
...@@ -1522,21 +1618,6 @@ links to the main documentation. ...@@ -1522,21 +1618,6 @@ links to the main documentation.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Do not flatten subqueries that contain <literal>VOLATILE</>
functions in their target lists (Jaime Casanova) ?
</para>
<para>
This prevents surprising behavior due to multiple evaluation
of a <literal>volatile</> function (such as <function>random()</>
or <function>nextval()</>). It may cause performance
degradation in the presence of functions that are unnecessarily
marked as <literal>volatile</>.
</para>
</listitem>
</itemizedlist> </itemizedlist>
</sect3> </sect3>
...@@ -1641,8 +1722,7 @@ links to the main documentation. ...@@ -1641,8 +1722,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Allow returning of <literal>composite types</> and Allow returning of composite types and result sets (Sven Suursoho)
<literal>result sets</> (Sven Suursoho)
</para> </para>
</listitem> </listitem>
...@@ -1653,12 +1733,6 @@ links to the main documentation. ...@@ -1653,12 +1733,6 @@ links to the main documentation.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Return composite-types as dictionary (Sven Suursoho)
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Allow functions to return <literal>void</> (Neil) Allow functions to return <literal>void</> (Neil)
...@@ -1721,7 +1795,7 @@ links to the main documentation. ...@@ -1721,7 +1795,7 @@ links to the main documentation.
</para> </para>
<para> <para>
Use options <literal>-1</> or <literal>--single-transaction</>. Use option <literal>-1</> or <literal>--single-transaction</>.
</para> </para>
</listitem> </listitem>
...@@ -1732,18 +1806,24 @@ links to the main documentation. ...@@ -1732,18 +1806,24 @@ links to the main documentation.
</para> </para>
<para> <para>
This is accomplished using <command>\set FETCH_COUNT</>. This This is enabled using <command>\set FETCH_COUNT
feature allows large result sets to be manipulated in <replaceable>n</></command>. This
<application>psql</> without needing to buffer the entire feature allows large result sets to be retrieved in
<application>psql</> without attempting to buffer the entire
result set in memory. result set in memory.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow multi-line values to align in the proper column Make multi-line values align in the proper column
(Martijn van Oosterhout) (Martijn van Oosterhout)
</para> </para>
<para>
Field values containing newlines are now displayed in a more
readable fashion.
</para>
</listitem> </listitem>
<listitem> <listitem>
...@@ -1753,16 +1833,9 @@ links to the main documentation. ...@@ -1753,16 +1833,9 @@ links to the main documentation.
</para> </para>
<para> <para>
This makes up-arrow recall of queries easier. (This is This makes up-arrow recall of queries easier. (This is
not available on Win32 because it typically uses the native not available on Win32, because that platform uses the native
command-line editing present in the operating system.) command-line editing present in the operating system.)
</para>
</listitem>
<listitem>
<para>
Improve highlighting of error location in query in more
cases (Tom)
</para> </para>
</listitem> </listitem>
...@@ -1798,9 +1871,12 @@ links to the main documentation. ...@@ -1798,9 +1871,12 @@ links to the main documentation.
<para> <para>
<application>pg_dump</> now supports multiple <literal>-n</> <application>pg_dump</> now supports multiple <literal>-n</>
(schema) and <literal>-t</> (table) options, and adds (schema) and <literal>-t</> (table) options, and adds
<literal>-T</> and <literal>-N</> options to exclude objects. <literal>-N</> and <literal>-T</> options to exclude objects.
Also adds support for regular expressions for object names Also, the arguments of these switches can now be wild-card expressions
in these switches. rather than single object names, for example
<literal>-t 'foo*'</>, and a schema can be part of
a <literal>-t</> or <literal>-T</> switch, for example
<literal>-t schema1.table1</>.
</para> </para>
</listitem> </listitem>
...@@ -1808,7 +1884,7 @@ links to the main documentation. ...@@ -1808,7 +1884,7 @@ links to the main documentation.
<para> <para>
Add <link linkend="APP-PGRESTORE"><application>pg_restore</></link> Add <link linkend="APP-PGRESTORE"><application>pg_restore</></link>
<literal>--no-data-for-failed-tables</> option to suppress <literal>--no-data-for-failed-tables</> option to suppress
loading data if table creation failed (the table already loading data if table creation failed (i.e., the table already
exists) (Martin Pitt) exists) (Martin Pitt)
</para> </para>
</listitem> </listitem>
...@@ -1821,7 +1897,7 @@ links to the main documentation. ...@@ -1821,7 +1897,7 @@ links to the main documentation.
</para> </para>
<para> <para>
Use options <literal>-1</> or <literal>--single-transaction</>. Use option <literal>-1</> or <literal>--single-transaction</>.
</para> </para>
</listitem> </listitem>
...@@ -1841,7 +1917,7 @@ links to the main documentation. ...@@ -1841,7 +1917,7 @@ links to the main documentation.
</para> </para>
<para> <para>
This allows passwords to be sent encrypted for commands This allows passwords to be sent pre-encrypted for commands
like <link linkend="SQL-ALTERROLE"><command>ALTER ROLE ... like <link linkend="SQL-ALTERROLE"><command>ALTER ROLE ...
PASSWORD</></link>. PASSWORD</></link>.
</para> </para>
...@@ -1866,14 +1942,14 @@ links to the main documentation. ...@@ -1866,14 +1942,14 @@ links to the main documentation.
linkend="libpq-exec-main"><function>PQdescribePrepared()</></link>, linkend="libpq-exec-main"><function>PQdescribePrepared()</></link>,
<link <link
linkend="libpq-exec-main"><function>PQdescribePortal()</></link>, linkend="libpq-exec-main"><function>PQdescribePortal()</></link>,
and related functions return information about previously and related functions to return information about previously
prepared statements and open cursors (Volkan YAZICI) prepared statements and open cursors (Volkan YAZICI)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Allow <acronym>LDAP</> <link linkend="libpq-ldap">lookups</link> Allow <link linkend="libpq-ldap"><acronym>LDAP</></link> lookups
from <link from <link
linkend="libpq-pgservice"><filename>pg_service.conf</></link> linkend="libpq-pgservice"><filename>pg_service.conf</></link>
(Laurenz Albe) (Laurenz Albe)
...@@ -1882,9 +1958,15 @@ links to the main documentation. ...@@ -1882,9 +1958,15 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Allow the <link linkend="libpq-pgpass"><filename>.pgpass</></link> Allow a hostname in <link
hostname to match the default socket directory, as well as linkend="libpq-pgpass"><filename>~/.pgpass</></link>
a blank <literal>pghost</> (Bruce) to match the default socket directory (Bruce)
</para>
<para>
A blank hostname continues to match any Unix-socket connection,
but this addition allows entries that are specific to one of
several postmasters on the machine.
</para> </para>
</listitem> </listitem>
...@@ -1955,26 +2037,14 @@ links to the main documentation. ...@@ -1955,26 +2037,14 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Drop privileges on startup so servers can be started from Drop privileges on startup, so that the server can be started from
an administrative account (Magnus) an administrative account (Magnus)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Improve handling of intermittent file system and resource Stability fixes (Qingqing Zhou, Magnus)
failures (Qingqing Zhou)
</para>
</listitem>
<listitem>
<para>
Stability fixes (Magnus)
</para>
<para>
Particularly, prevent the postmaster from stopping if too
many connection requests arrive too rapidly.
</para> </para>
</listitem> </listitem>
...@@ -1984,7 +2054,7 @@ links to the main documentation. ...@@ -1984,7 +2054,7 @@ links to the main documentation.
</para> </para>
<para> <para>
Previous implementations mimicked SysV semaphores. The previous code mimicked SysV semaphores.
</para> </para>
</listitem> </listitem>
...@@ -1999,7 +2069,7 @@ links to the main documentation. ...@@ -1999,7 +2069,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add <link linkend="GIN"><acronym>GIN</></link> (Generalized Add <link linkend="GIN"><acronym>GIN</></link> (Generalized
Inverted iNdex) index access method (Teodor) ? Inverted iNdex) index access method (Teodor, Oleg)
</para> </para>
</listitem> </listitem>
...@@ -2018,7 +2088,7 @@ links to the main documentation. ...@@ -2018,7 +2088,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Reduce libraries linked into the backend needlessly (Martijn Reduce libraries needlessly linked into the backend (Martijn
van Oosterhout, Tom) van Oosterhout, Tom)
</para> </para>
</listitem> </listitem>
...@@ -2094,16 +2164,39 @@ links to the main documentation. ...@@ -2094,16 +2164,39 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Rename existing <acronym>GUC</> variable Add server support for <quote>plugin</> libraries
that can be used for add-on tasks such as debugging and performance
measurement (Korry Douglas)
</para>
<para>
This consists of two features: a table of <quote>rendezvous
variables</> that allows separately-loaded shared libraries to
communicate, and a new configuration parameter <link
linkend="guc-local-preload-libraries"><varname>local_preload_libraries</></link>
that allows libraries to be loaded into specific sessions without
explicit cooperation from the client application. This allows
external add-ons to implement features such as a PL/PgSQL debugger.
</para>
</listitem>
<listitem>
<para>
Rename existing configuration parameter
<varname>preload_libraries</> to <link <varname>preload_libraries</> to <link
linkend="guc-shared-preload-libraries"><varname>shared_preload_libraries</></link> linkend="guc-shared-preload-libraries"><varname>shared_preload_libraries</></link>
(Tom) (Tom)
</para> </para>
<para>
This was done for clarity in comparison to
<varname>local_preload_libraries</>.
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add new GUC variable <link Add new configuration parameter <link
linkend="guc-server-version-num"><varname>server_version_num</></link> linkend="guc-server-version-num"><varname>server_version_num</></link>
(Greg Sabino Mullane) (Greg Sabino Mullane)
</para> </para>
...@@ -2117,7 +2210,7 @@ links to the main documentation. ...@@ -2117,7 +2210,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add a <acronym>GUC</> variable <link Add a configuration parameter <link
linkend="guc-seq-page-cost"><varname>seq_page_cost</></link> linkend="guc-seq-page-cost"><varname>seq_page_cost</></link>
(Tom) (Tom)
</para> </para>
...@@ -2144,13 +2237,13 @@ links to the main documentation. ...@@ -2144,13 +2237,13 @@ links to the main documentation.
</para> </para>
<para> <para>
New <link linkend="xfunc-c-dynload">functions</link> New <link linkend="xfunc-c-dynload">functions</link>
<function>_PG_init()</> and <function>_PG_fini()</> are <function>_PG_init()</> and <function>_PG_fini()</> are
called if the library defines such symbols. Hence we no called if the library defines such symbols. Hence we no
longer need to specify an initialization function in longer need to specify an initialization function in
<varname>shared_preload_libraries</>; we can assume that <varname>shared_preload_libraries</>; we can assume that
the library used the <function>_PG_init()</> convention the library used the <function>_PG_init()</> convention
instead. instead.
</para> </para>
</listitem> </listitem>
...@@ -2163,23 +2256,11 @@ links to the main documentation. ...@@ -2163,23 +2256,11 @@ links to the main documentation.
</para> </para>
<para> <para>
The magic blocks prevent version mismatches between object The magic block prevents version mismatches between loadable object
files and servers. files and servers.
</para> </para>
</listitem> </listitem>
<listitem>
<para>
Add support for libraries that enhance server-side languages
(Korry Douglas)
</para>
<para>
Such libraries can be used for debugging or performance
measurement.
</para>
</listitem>
<listitem> <listitem>
<para> <para>
Add shared library support for AIX (Laurenz Albe) Add shared library support for AIX (Laurenz Albe)
...@@ -2231,7 +2312,7 @@ links to the main documentation. ...@@ -2231,7 +2312,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Ispell dictionaries now recognize <application>MySpell</> Ispell dictionaries now recognize <application>MySpell</>
format, used by <application>OpenOffice</>. format, used by <application>OpenOffice</>
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
...@@ -2246,8 +2327,8 @@ links to the main documentation. ...@@ -2246,8 +2327,8 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add <application>Pgadmin</> administration functions to Add adminpack module containing <application>Pgadmin</> administration
adminpack (Dave) functions (Dave)
</para> </para>
<para> <para>
...@@ -2259,18 +2340,18 @@ links to the main documentation. ...@@ -2259,18 +2340,18 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add sslinfo (Victor Wagner) Add sslinfo module (Victor Wagner)
</para> </para>
<para> <para>
Reports information about the current <acronym>SSL</> Reports information about the current connection's <acronym>SSL</>
certificate. certificate.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add pgrowlocks (Tatsuo) Add pgrowlocks module (Tatsuo)
</para> </para>
<para> <para>
...@@ -2290,7 +2371,7 @@ links to the main documentation. ...@@ -2290,7 +2371,7 @@ links to the main documentation.
</para> </para>
<para> <para>
This now supports <acronym>EAN13</>, <acronym>UPC</>, This new implementation supports <acronym>EAN13</>, <acronym>UPC</>,
<acronym>ISBN</> (books), <acronym>ISMN</> (music), and <acronym>ISBN</> (books), <acronym>ISMN</> (music), and
<acronym>ISSN</> (serials). <acronym>ISSN</> (serials).
</para> </para>
...@@ -2298,14 +2379,14 @@ links to the main documentation. ...@@ -2298,14 +2379,14 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Add index information to pgstattuple (ITAGAKI Takahiro, Add index information functions to pgstattuple (ITAGAKI Takahiro,
Satoshi Nagayasu) Satoshi Nagayasu)
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Add pg_freespacemap to display free space map information Add pg_freespacemap module to display free space map information
(Mark Kirkwood) (Mark Kirkwood)
</para> </para>
</listitem> </listitem>
...@@ -2318,7 +2399,7 @@ links to the main documentation. ...@@ -2318,7 +2399,7 @@ links to the main documentation.
<listitem> <listitem>
<para> <para>
Improvements to cube (Joshua Reich) Improvements to cube module (Joshua Reich)
</para> </para>
<para> <para>
...@@ -2340,11 +2421,20 @@ links to the main documentation. ...@@ -2340,11 +2421,20 @@ links to the main documentation.
New operators for array-subset comparisons (<literal>@&gt;</>, New operators for array-subset comparisons (<literal>@&gt;</>,
<literal>&lt;@</>, <literal>&amp;&amp;</>) (Tom) <literal>&lt;@</>, <literal>&amp;&amp;</>) (Tom)
</para> </para>
<para>
Various contrib packages already had these operators for their
datatypes, but the naming wasn't consistent. We have now added
consistently named array-subset comparison operators to the core code
and all the contrib packages that have such functionality.
(The old names remain available, but are deprecated.)
</para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
New uninstall scripts for many contrib packages (David) Add uninstall scripts for all contrib packages that have install
scripts (David, Josh Drake)
</para> </para>
</listitem> </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