-<!-- $PostgreSQL: pgsql/doc/src/sgml/release-9.0.sgml,v 2.5 2010/03/20 16:31:09 momjian Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release-9.0.sgml,v 2.6 2010/03/21 00:43:40 momjian Exp $ -->
<sect1 id="release-9-0">
<listitem>
<para>
- Fix <literal>SIMILAR TO</> to match the SQL standard-specified behavior
- by processing <literal>?</> and <literal>{}</> the same way they are
- processed in regular expressions (Tom)
+ Fix <link linkend="functions-similarto-regexp"><literal>SIMILAR
+ TO</></link> to match the SQL standard-specified behavior
+ by processing <literal>?</> and <literal>{}</> the same way
+ they are processed in regular expressions (Tom)
</para>
</listitem>
</para>
<para>
- This behavior can be changed via the server variable
- <varname>plpgsql.variable_conflict</>, or by the per-function option
- <literal>#variable_conflict</>. The former behavior was to bind to
- variable names over column names.
+ This behavior can be changed via the server variable <link
+ linkend="plpgsql-var-subst"><varname>plpgsql.variable_conflict</></link>,
+ or by the per-function option <literal>#variable_conflict</>.
+ The former behavior was to bind to variable names over
+ column names.
</para>
</listitem>
</para>
<para>
- Instead, use <literal>ALIAS</>, which can now alias any variable,
- not just dollar sign variables, e.g. <literal>$1</>.
+ Instead, use <link
+ linkend="plpgsql-declaration-parameters"><literal>ALIAS</></link>,
+ which can now alias any variable, not just dollar sign
+ variables, e.g. <literal>$1</>.
</para>
</listitem>
<para>
This feature is called Hot Standby. There are new
- <filename>postgresql.conf</> and <filename>recovery.conf</> settings
- to enable this feature, as well as extensive documentation.
+ <filename>postgresql.conf</> and <filename>recovery.conf</>
+ settings to enable this feature, as well as extensive
+ <link linkend="hot-standby">documentation</link>.
</para>
</listitem>
<listitem>
<para>
Allow continuous archive (<acronym>WAL</>) files to be streamed to a
- standby system (Fujii Masao, Heikki)
+ standby system (Fujii Masao, Heikki)
</para>
<para>
Previously <acronym>WAL</> files could be sent to standby systems only
as 16 megabytes files; this allows master changes to be sent to the
slave with very little delay. There are new <filename>postgresql.conf</>
- and <filename>recovery.conf</> settings to enable this feature, as
- well as extensive documentation.
+ and <filename>recovery.conf</> settings to enable this
+ feature, as well as extensive <link
+ linkend="streaming-replication">documentation</link>.
</para>
</listitem>
<listitem>
<para>
- Add <function>pg_last_xlog_receive_location()</> and
- <function>pg_last_xlog_replay_location()</>, which can be used to
- monitor standby server <acronym>WAL</> activity (Fujii Masao,
- Heikki)
+ Add <link
+ linkend="functions-recovery-info-table"><function>pg_last_xlog_receive_location()</></link>
+ and <function>pg_last_xlog_replay_location()</>, which
+ can be used to monitor standby server <acronym>WAL</>
+ activity (Fujii Masao, Heikki)
</para>
</listitem>
</para>
<para>
- While the Genetic Query Optimizer (GEQO) still selects random plans,
- it now selects the same random plans for identical queries. You
- can modify <varname>geqo_seed</> to randomize the starting value
- of the random plan generator.
+ While the Genetic Query Optimizer (GEQO) still selects
+ random plans, it now selects the same random plans for
+ identical queries. You can modify <xref
+ linkend="guc-geqo-seed"> to
+ randomize the starting value of the random plan generator.
</para>
</listitem>
<listitem>
<para>
Improve optimizer statistics for greater/less-than comparisons
- (Tom)
+ (Tom)
</para>
<para>
<listitem>
<para>
- Add support for <acronym>RADIUS</> (Remote Authentication Dial In
- User Service) authentication (Magnus)
+ Add support for <link
+ linkend="auth-radius"><acronym>RADIUS</></link> (Remote
+ Authentication Dial In User Service) authentication
+ (Magnus)
</para>
</listitem>
<listitem>
<para>
- Allow <acronym>LDAP</> (Lightweight Directory Access Protocol)
- authentication to operate in "search/bind" mode (Robert Fleming,
- Magnus)
+ Allow <link linkend="auth-ldap"><acronym>LDAP</></link>
+ (Lightweight Directory Access Protocol) authentication
+ to operate in "search/bind" mode (Robert Fleming, Magnus)
</para>
<para>
<listitem>
<para>
- Add <literal>samehost</> and <literal>samenet</> designations to
+ Add <link
+ linkend="auth-pg-hba-conf"><literal>samehost</></link>
+ and <literal>samenet</> designations to
<filename>pg_hba.conf</> (Stef Walter)
</para>
<listitem>
<para>
- Add the ability for clients to set an application name, which is
- displayed in <structname>pg_stat_activity</> (Dave Page)
+ Add the ability for clients to set an <link
+ linkend="libpq-connect-application-name">application
+ name</link>, which is displayed in
+ <structname>pg_stat_activity</> (Dave Page)
</para>
</listitem>
<listitem>
<para>
- Add an SQL state option (<literal>%e</>) to <varname>log_line_prefix</>
+ Add an SQL state option (<literal>%e</>) to <link
+ linkend="guc-log-line-prefix"><varname>log_line_prefix</></link>
(Guillaume Smet)
</para>
</listitem>
<listitem>
<para>
- Add <function>pg_stat_reset_shared('bgwriter')</> to reset the
- cluster-wide shared statistics of the bgwriter (Greg Smith)
+ Add <link
+ linkend="monitoring-stats-funcs-table"><function>pg_stat_reset_shared('bgwriter')</></link>
+ to reset the cluster-wide shared statistics of the
+ bgwriter (Greg Smith)
</para>
</listitem>
<listitem>
<para>
- Add <function>pg_stat_reset_single_table_counters()</> and
- <function>pg_stat_reset_single_function_counters()</> to allow the
- reseting of statistics counters for individual tables and indexes
- (Magnus)
+ Add <link
+ linkend="monitoring-stats-funcs-table"><function>pg_stat_reset_single_table_counters()</></link>
+ and <function>pg_stat_reset_single_function_counters()</>
+ to allow the reseting of statistics counters for individual
+ tables and indexes (Magnus)
</para>
</listitem>
<listitem>
<para>
- Allow setting of configuration variables based on database/role
+ Allow setting of configuration variables based on <link
+ linkend="sql-alterrole-title">database/role</link>
combinations (Alvaro)
</para>
<listitem>
<para>
- Add boolean variable <varname>bonjour</>, which controls whether
- a Bonjour-enabled binary advertises itself via <productname>Bonjour</>
- (Tom)
+ Add boolean variable <link
+ linkend="guc-bonjour"><varname>bonjour</></link>, which
+ controls whether a Bonjour-enabled binary advertises
+ itself via <productname>Bonjour</> (Tom)
</para>
<para>
<listitem>
<para>
- Increase the supported frame options in window functions (Hitoshi
+ Increase the supported frame options in <link
+ linkend="SQL-WINDOW">window functions</link> (Hitoshi
Harada)
</para>
</para>
</listitem>
+ <listitem>
+ <para>
+ Have <command>SELECT</> and <command>CREATE TABLE AS</> return
+ row counts to the client
+ (Boszormenyi Zoltan)
+ </para>
+
+ <para>
+ <application>psql</> does not display these counts.
+ </para>
+ </listitem>
</itemizedlist>
<listitem>
<para>
- Add Unicode surrogate pair (dual 16-bit) support to <literal>U&</>
+ Add Unicode surrogate pair (dual 16-bit) support to
+ <link
+ linkend="sql-syntax-strings-uescape"><literal>U&</></link>
strings and identifiers (Peter)
</para>
</listitem>
<listitem>
<para>
- Allow Unicode escapes in <literal>E'...'</> strings (Marko Kreen)
+ Allow Unicode escapes in <link
+ linkend="sql-syntax-strings-escape"><literal>E'...'</></link>
+ strings (Marko Kreen)
</para>
</listitem>
-
</itemizedlist>
</sect4>
<listitem>
<para>
- Add <command>ALTER DEFAULT PRIVILEGES</> command to control privileges of
- all newly-created objects (Petr Jelinek)
+ Add <link linkend="SQL-ALTERDEFAULTPRIVILEGES"><command>ALTER
+ DEFAULT PRIVILEGES</></link> command to control privileges
+ of all newly-created objects (Petr Jelinek)
</para>
<para>
</sect4>
<sect4>
- <title><command>CREATE TABLE</></title>
+ <title><link linkend="SQL-CREATETABLE"><command>CREATE TABLE</></link></title>
<itemizedlist>
<listitem>
</para>
</listitem>
- <listitem>
- <para>
- Have <command>SELECT</> and <command>CREATE TABLE AS</> return
- row counts to the client
- (Boszormenyi Zoltan)
- </para>
-
- <para>
- <application>psql</> does not display these counts.
- </para>
- </listitem>
-
</itemizedlist>
</sect4>
<listitem>
<para>
- Add the ability to make mass permission changes per schema using
- the new <command>GRANT</>/<command>REVOKE IN SCHEMA</> clause
- (Petr Jelinek)
+ Add the ability to make mass permission changes per
+ schema using the new <link
+ linkend="SQL-GRANT"><command>GRANT</></link>/<command>REVOKE
+ IN SCHEMA</> clause (Petr Jelinek)
</para>
</listitem>
<listitem>
<para>
- Allow <command>NOTIFY</> to pass an optional string to listeners
- (Joachim Wieland)
+ Allow <link linkend="SQL-NOTIFY"><command>NOTIFY</></link>
+ to pass an optional string to listeners (Joachim Wieland)
</para>
</listitem>
</itemizedlist>
<sect4>
- <title><command>COPY</></title>
+ <title><link linkend="SQL-COPY"><command>COPY</></link></title>
<itemizedlist>
<listitem>
</sect4>
<sect4>
- <title><command>EXPLAIN</></title>
+ <title><link linkend="SQL-EXPLAIN"><command>EXPLAIN</></link></title>
<itemizedlist>
<listitem>
</sect4>
<sect4>
- <title><command>VACUUM</></title>
+ <title><link linkend="SQL-VACUUM"><command>VACUUM</></link></title>
<itemizedlist>
<listitem>
<listitem>
<para>
Allow an index to be auto-named by not supplying an index name to
- <command>CREATE INDEX</> (Tom)
+ <link linkend="SQL-CREATEINDEX"><command>CREATE INDEX</></link> (Tom)
</para>
</listitem>
<listitem>
<para>
- Allow <command>REINDEX</> on system indexes (Tom)
+ Allow <link linkend="SQL-REINDEX"><command>REINDEX</></link>
+ on system indexes (Tom)
</para>
<para>
<listitem>
<para>
- Allow hex values to be specified in <type>bytea</> strings (Peter)
+ Allow hex values to be specified in <link
+ linkend="datatype-binary"><type>bytea</></link> strings
+ (Peter)
</para>
<para>
- The variable <varname>bytea_output</> controls if hex (default)
+ The variable <xref linkend="guc-bytea-output"> controls if hex (default)
or octal escapes are used for <type>bytea</> output. (SWITCH
DEFAULT FOR BETA? PETER) Libpq's <function>PQescapeByteaConn()</>
now uses the hex format for <productname>PostgreSQL</> 9.0 servers.
<listitem>
<para>
- Allow <varname>extra_float_digits</> to be increased to <literal>3</>
+ Allow <xref linkend="guc-extra-float-digits"> to be increased to <literal>3</>
(Tom)
</para>
<listitem>
<para>
- Allow case-insensitive regular expression matching with <acronym>UTF-8</>
- server encodings.
+ Allow case-insensitive <link
+ linkend="functions-posix-regexp">regular expression</link>
+ matching with <acronym>UTF-8</> server encodings.
</para>
<para>
<listitem>
<para>
- Add support for <function>to_char()</> scientific notation output
- (<literal>'EEEE'</>) (Pavel Stehule, Brendan Jurd)
+ Add support for <link
+ linkend="functions-formatting"><function>to_char()</></link>
+ scientific notation output (<link
+ linkend="functions-formatting-numeric-table"><literal>'EEEE'</></link>)
+ (Pavel Stehule, Brendan Jurd)
</para>
</listitem>
<listitem>
<para>
- Have <function>to_char()</> honor <literal>'FM'</> (fill mode) in
- <literal>'Y'</>, <literal>'YY'</>, and <literal>'YYY'</> specifications
- (Bruce)
+ Have <function>to_char()</> honor <link
+ linkend="functions-formatting-datetimemod-table"><literal>'FM'</></link>
+ (fill mode) in <literal>'Y'</>, <literal>'YY'</>, and
+ <literal>'YYY'</> specifications (Bruce)
</para>
<para>
<listitem>
<para>
- Add the <function>string_agg()</> aggregate function which aggregates
- values into a single string (Pavel Stehule)
+ Add the <link
+ linkend="functions-aggregate-table"><function>string_agg()</></link>
+ aggregate function which aggregates values into a single
+ string (Pavel Stehule)
</para>
<para>
<listitem>
<para>
- Add <function>get_bit()</> and <function>set_bit()</> functions
- for <type>bit</> strings, mirroring those for <type>bytea</>
- (Leonardo F)
+ Add <link
+ linkend="functions-binarystring-other"><function>get_bit()</></link>
+ and <function>set_bit()</> functions for <type>bit</>
+ strings, mirroring those for <type>bytea</> (Leonardo
+ F)
</para>
</listitem>
<listitem>
<para>
- Implement <function>OVERLAY()</> (replace) for <type>bit</> strings
- and <type>bytea</> (Leonardo F)
+ Implement <link
+ linkend="functions-string-sql"><function>OVERLAY()</></link>
+ (replace) for <type>bit</> strings and <type>bytea</>
+ (Leonardo F)
</para>
</listitem>
<listitem>
<para>
- Add <function>pg_table_size()</> and <function>pg_indexes_size()</>
- to provide a more user-friendly interface to the
- <function>pg_relation_size()</> function (Bernd Helmle)
+ Add <link
+ linkend="functions-admin-dbsize"><function>pg_table_size()</></link>
+ and <function>pg_indexes_size()</> to provide a more
+ user-friendly interface to the <function>pg_relation_size()</>
+ function (Bernd Helmle)
</para>
</listitem>
<listitem>
<para>
- Add <function>has_sequence_privilege()</> for sequence permission
- checking (Abhijit Menon-Sen)
+ Add <link
+ linkend="functions-info-access-table"><function>has_sequence_privilege()</></link>
+ for sequence permission checking (Abhijit Menon-Sen)
</para>
</listitem>
<listitem>
<para>
Have information schema properly display date type octet lengths
- (Peter)
+ (Peter)
</para>
<para>
<listitem>
<para>
- Implement anonymous functions using the <command>DO</> statement
- (Petr Jelinek, Joshua Tolley, Hannu Valtonen)
+ Implement anonymous functions using the <link
+ linkend="SQL-DO"><command>DO</></link> statement (Petr
+ Jelinek, Joshua Tolley, Hannu Valtonen)
</para>
<para>
<listitem>
<para>
- Allow SQL-compliant per-column triggers (Itagaki Takahiro)
+ Allow SQL-compliant <link
+ linkend="SQL-CREATETRIGGER">per-column triggers</link>
+ (Itagaki Takahiro)
</para>
<para>
<listitem>
<para>
- Add <literal>WHERE</> clause to <command>CREATE TRIGGER</> to
- allow control over whether a trigger is fired (Takahiro Itagaki)
+ Add <literal>WHERE</> clause to <link
+ linkend="SQL-CREATETRIGGER"><command>CREATE TRIGGER</></link>
+ to allow control over whether a trigger is fired (Takahiro
+ Itagaki)
</para>
<para>
<listitem>
<para>
- Add the <literal>OR REPLACE</> clause to <command>CREATE
- LANGUAGE</> (Tom)
+ Add the <literal>OR REPLACE</> clause to <link
+ linkend="SQL-CREATELANGUAGE"><command>CREATE LANGUAGE</></link>
+ (Tom)
</para>
<para>
</itemizedlist>
<sect4>
- <title>PL/PgSQL Server-Side Language</title>
+ <title><link linkend="plpgsql">PL/PgSQL</link> Server-Side
+ Language</title>
<itemizedlist>
</sect4>
<sect4>
- <title>PL/pgSQL Cursors</title>
+ <title><link linkend="plpgsql-cursors">PL/pgSQL Cursors</link></title>
<itemizedlist>
<listitem>
</sect4>
<sect4>
- <title>PL/Perl Server-Side Language</title>
+ <title><link linkend="plperl">PL/Perl</link> Server-Side Language</title>
<itemizedlist>
<listitem>
<listitem>
<para>
- Add server variable <varname>plperl.on_init</> to specify a PL/Perl
+ Add server variable <xref linkend="guc-plperl-on-init"> to specify a PL/Perl
Perl initialization function (Tim Bunce)
</para>
<para>
- <varname>plperl.on_plperl_init</> and <varname>plperl.on_plperlu_init</>
+ <xref linkend="guc-plperl-on-plperl-init"> and <varname>plperl.on_plperlu_init</>
are also available for trusted/untrusted-specific initialization.
</para>
</listitem>
</sect4>
<sect4>
- <title>PL/Python Server-Side Language</title>
+ <title><link linkend="plpython">PL/Python</link> Server-Side Language</title>
<itemizedlist>
<listitem>
</para>
<para>
- The new server-side language is called <literal>plpython3u</>.
+ The new server-side language is called <link
+ linkend="plpython-python23"><literal>plpython3u</></link>.
</para>
</listitem>
<listitem>
<para>
- Add <command>vacuumdb</> <option>--analyze-only</> option to only
- analyze (Bruce)
+ Add <link linkend="APP-VACUUMDB"><command>vacuumdb</></link>
+ <option>--analyze-only</> option to only analyze (Bruce)
</para>
</listitem>
</itemizedlist>
<sect4>
- <title><application>psql</></title>
+ <title><link linkend="APP-PSQL"><application>psql</></link></title>
<itemizedlist>
<listitem>
<para>
- Properly escape <application>psql</> variables and identifiers
- (Pavel Stehule, Robert Haas)
+ Properly escape <application>psql</> <link
+ linkend="APP-PSQL-variables">variables</link> and
+ identifiers (Pavel Stehule, Robert Haas)
</para>
<para>
</sect5>
<sect5>
- <title><application>psql</> <command>\d</> Commands</title>
+ <title><application>psql</> <link
+ linkend="APP-PSQL-meta-commands"><command>\d</></link>
+ Commands</title>
<itemizedlist>
<listitem>
</sect4>
<sect4>
- <title><application>pg_dump</></title>
+ <title><link linkend="APP-PGDUMP"><application>pg_dump</></link></title>
<itemizedlist>
<listitem>
<para>
- Have <application>pg_dump</>/<application>pg_restore</> <option>--clean</>
+ Have <application>pg_dump</>/<application>pg_restore</>
+ <link linkend="pg-dump-options"><option>--clean</></link>
also remove large objects (Itagaki Takahiro)
</para>
</listitem>
<listitem>
<para>
- Have <application>pg_dump</> <option>--verbose</> output the
- <application>pg_dump</> and server versions in text output mode (Jim
- Cox, Tom)
+ Have <application>pg_dump</> <link
+ linkend="pg-dump-options"><option>--verbose</></link>
+ output the <application>pg_dump</> and server versions
+ in text output mode (Jim Cox, Tom)
</para>
<para>
</sect4>
<sect4>
- <title><application>pg_ctl</></title>
+ <title><link
+ linkend="app-pg-ctl"><application>pg_ctl</></link></title>
<itemizedlist>
<listitem>
<title><application>Development Tools</></title>
<sect4>
- <title><application>libpq</></title>
+ <title><link linkend="libpq"><application>libpq</></link></title>
<itemizedlist>
<listitem>
<para>
Add new <application>libpq</> functions
- <function>PQconnectdbParams()</> and <function>PQconnectStartParams()</>
- (Guillaume Lelarge)
+ <link
+ linkend="libpq-connect"><function>PQconnectdbParams()</></link>
+ and <function>PQconnectStartParams()</> (Guillaume
+ Lelarge)
</para>
<para>
<listitem>
<para>
- Add <application>libpq</> functions <function>PQescapeLiteral()</> and
- <function>PQescapeIdentifier()</> (Robert Haas)
+ Add <application>libpq</> functions <link
+ linkend="libpq-exec-escape-string"><function>PQescapeLiteral()</></link>
+ and <function>PQescapeIdentifier()</> (Robert Haas)
</para>
<para>
<listitem>
<para>
- Add checking for a per-user service file (<filename>.pg_service.conf</>),
- which is checked before the site-wide service file (Peter)
+ Add checking for a per-user service file (<link
+ linkend="libpq-pgservice"><filename>.pg_service.conf</></link>),
+ which is checked before the site-wide service file
+ (Peter)
</para>
<para>
<listitem>
<para>
- Issue a warning if the <filename>.pgpass</>-retrieved password fails
- (Bruce)
+ Issue a warning if the <link
+ linkend="libpq-pgpass"><filename>.pgpass</></link>-retrieved
+ password fails (Bruce)
</para>
</listitem>
</sect4>
<sect4>
- <title><application>ecpg</></title>
+ <title><link linkend="ecpg"><application>ecpg</></link></title>
<itemizedlist>
<listitem>
<para>
- Add <acronym>SQLDA</> (SQL Descriptor Area) support to <application>ecpg</>
+ Add <link linkend="ecpg-descriptors"><acronym>SQLDA</></link>
+ (SQL Descriptor Area) support to <application>ecpg</>
(Boszormenyi Zoltan)
</para>
</listitem>
<listitem>
<para>
- Add the <command>DESCRIBE</> [<literal>OUTPUT</>] statement to
- <application>ecpg</> (Boszormenyi Zoltan)
+ Add the <link linkend="ecpg-descriptors"><command>DESCRIBE</>
+ [<literal>OUTPUT</>]</link> statement to <application>ecpg</>
+ (Boszormenyi Zoltan)
</para>
</listitem>
<listitem>
<para>
- Add an <application>ecpg</> function to return the current transaction
- status (Bernd Helmle)
+ Add an <application>ecpg</> <link
+ linkend="ecpg-library">function</link> to return the
+ current transaction status (Bernd Helmle)
</para>
</listitem>
</para>
<para>
- Thread-safe builds can be disabled with <application>configure</>
+ Thread-safe builds can be disabled with <link
+ linkend="configure"><application>configure</></link>
<option>--disable-thread-safety</>.
</para>
</listitem>
</para>
<para>
- Now that <filename>/proc/self/oom_adj</> allows disabling of the
- <productname>Linux</> out-of-memory (<acronym>OOM</>) killer for the
- postmaster and its children, the new compile-time option
- <literal>-DLINUX_OOM_ADJ=0</> allows the killer to be enabled for
- <application>postmaster</> children. <application>pg_config</> shows if
- this flag was used during compilation.
+ Now that <filename>/proc/self/oom_adj</> allows disabling
+ of the <productname>Linux</> out-of-memory (<acronym>OOM</>)
+ killer for the postmaster and its children, the new
+ compile-time option <link
+ linkend="linux-memory-overcommit"><literal>-DLINUX_OOM_ADJ=0</></link>
+ allows the killer to be enabled for <application>postmaster</>
+ children. <application>pg_config</> shows if this flag
+ was used during compilation.
</para>
</listitem>
<listitem>
<para>
- New <filename>Makefile</> targets <literal>world</>,
- <literal>install-world</>, and <literal>installcheck-world</> (Andrew)
+ New <filename>Makefile</> targets <link
+ linkend="build"><literal>world</></link>,
+ <literal>install-world</>, and <literal>installcheck-world</>
+ (Andrew)
</para>
<para>
<listitem>
<para>
- Add data and documentation location control to <acronym>PGXS</>
- Makefiles (Mark Cave-Ayland)
+ Add data and documentation location control to <link
+ linkend="xfunc-c-pgxs"><acronym>PGXS</></link> Makefiles
+ (Mark Cave-Ayland)
</para>
</listitem>
<listitem>
<para>
- Add support for compiling on 64-bit <productname>Windows</> and running
- in 64-bit mode (Tsutomu Yamada, Magnus)
+ Add support for compiling on <link
+ linkend="install-win32-full">64-bit
+ <productname>Windows</></link> and running in 64-bit
+ mode (Tsutomu Yamada, Magnus)
</para>
<para>
<listitem>
<para>
- Allow server builds using <productname>Visual Studio 2008</> (Magnus)
+ Allow server builds using <link
+ linkend="install-win32-full"><productname>Visual Studio
+ 2008</></link> (Magnus)
</para>
</listitem>
</para>
</listitem>
+ <listitem>
+ <para>
+ Add a new <literal>ERRCODE_INVALID_PASSWORD</> <literal>SQLSTATE</> error
+ code (Bruce)
+ </para>
+ </listitem>
+
<listitem>
<para>
Properly remove the few remaining personal source code copyright
</para>
</listitem>
- <listitem>
- <para>
- Add a new <literal>ERRCODE_INVALID_PASSWORD</> <literal>SQLSTATE</> error
- code (Bruce)
- </para>
- </listitem>
-
</itemizedlist>
<sect4>
<listitem>
<para>
- Add <function>AggCheckCallContext()</> for use in detecting if a
- <productname>C</> function is being called as an aggregate (Hitoshi
- Harada)
+ Add <link
+ linkend="xaggr"><function>AggCheckCallContext()</></link>
+ for use in detecting if a <productname>C</> function is
+ being called as an aggregate (Hitoshi Harada)
</para>
</listitem>
<listitem>
<para>
- Add support for preservation of all <structname>relfilenodes</>, for
- use during binary upgrades (Bruce)
+ Add support for preservation of all <link
+ linkend="catalog-pg-class"><structname>relfilenodes</></link>,
+ for use during binary upgrades (Bruce)
</para>
</listitem>
<listitem>
<para>
- Add multi-threaded option (<option>-j</>) to
- <filename>/contrib/pgbench</> (Itagaki Takahiro)
+ Add multi-threaded option (<option>-j</>) to <link
+ linkend="pgbench"><filename>/contrib/pgbench</></link>
+ (Itagaki Takahiro)
</para>
<para>
<listitem>
<para>
- New features for <filename>/contrib/dict_xsyn</> (Sergey Karpov)
+ New features for <link
+ linkend="dict-xsyn"><filename>/contrib/dict_xsyn</></link>
+ (Sergey Karpov)
</para>
<para>
<listitem>
<para>
- Add full text dictionary <filename>/contrib/unaccent</> (Teodor)
+ Add full text dictionary <link
+ linkend="unaccent"><filename>/contrib/unaccent</></link>
+ (Teodor)
</para>
<para>
<listitem>
<para>
- Add <function>dblink_get_notify()</> to <filename>/contrib/dblink</>
- (Marcus Kempe)
+ Add <link
+ linkend="CONTRIB-DBLINK-GET-NOTIFY"><function>dblink_get_notify()</></link>
+ to <filename>/contrib/dblink</> (Marcus Kempe)
</para>
<para>
<listitem>
<para>
- Greatly increase <filename>/contrib/hstore</>'s length limit and add
- btree and hash abilities so <literal>GROUP BY</> and
- <literal>DISTINCT</> operations are possible (Andrew Gierth)
+ Greatly increase <link
+ linkend="hstore"><filename>/contrib/hstore</></link>'s
+ length limit and add btree and hash abilities so <literal>GROUP
+ BY</> and <literal>DISTINCT</> operations are possible
+ (Andrew Gierth)
</para>
<para>
<listitem>
<para>
- Add <filename>/contrib/passwordcheck</> which can check the strength of
- assigned passwords (Laurenz Albe)
+ Add <link
+ linkend="passwordcheck"><filename>/contrib/passwordcheck</></link>
+ which can check the strength of assigned passwords (Laurenz
+ Albe)
</para>
<para>
<listitem>
<para>
- Add query text to <filename>/contrib/auto_explain</> output (Andrew)
+ Add query text to <link
+ linkend="auto-explain"><filename>/contrib/auto_explain</></link>
+ output (Andrew)
</para>
</listitem>
<listitem>
<para>
- Add buffer access counters to <filename>/contrib/pg_stat_statements</>
+ Add buffer access counters to <link
+ linkend="pgstatstatements"><filename>/contrib/pg_stat_statements</></link>
(Itagaki Takahiro)
</para>
</listitem>
<listitem>
<para>
- Update <filename>/contrib/start-scripts/linux</> to use
- <filename>/proc/self/oom_adj</> to disable the <productname>Linux</>
- out-of-memory (<acronym>OOM</>) killer (Alex Hunsaker, Tom)
+ Update <link
+ linkend="server-start"><filename>/contrib/start-scripts/linux</></link>
+ to use <filename>/proc/self/oom_adj</> to disable the
+ <link linkend="linux-memory-overcommit"><productname>Linux</>
+ out-of-memory</link> (<acronym>OOM</>) killer (Alex
+ Hunsaker, Tom)
</para>
</listitem>