Commit c9aa8a62 authored by Bruce Momjian's avatar Bruce Momjian

More new subsections in release notes.

parent 5f6f72b0
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.619 2009/03/30 22:01:15 momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.620 2009/03/31 01:26:13 momjian Exp $ -->
<!--
Typical markup:
......@@ -354,7 +354,7 @@ do it for earlier branch release files.
<title>Temporal Functions and Operators</title>
<itemizedlist>
<listitem>
<para>
Have <function>to_char()</>'s localized month/day names depend
......@@ -362,7 +362,7 @@ do it for earlier branch release files.
Taveira de Oliveira)
</para>
</listitem>
<listitem>
<para>
Cause <function>to_date()</> and <function>to_timestamp()</>
......@@ -370,14 +370,14 @@ do it for earlier branch release files.
Jurd)
</para>
</listitem>
<listitem>
<para>
Provide consistent rounding for fractional seconds (Ron Mayer)
bjm: combine with another item?
</para>
</listitem>
<listitem>
<para>
Fix <function>to_timestamp()</> to not require upper/lower case
......@@ -385,13 +385,13 @@ do it for earlier branch release files.
(<literal>BC</>/<literal>AD</>) format designations (Brendan
Jurd)
</para>
<para>
For example, input value <literal>ad</> now matches the format
string <literal>AD</>.
</para>
</listitem>
<listitem>
<para>
Require the existence of periods in <function>to_timestamp()</>
......@@ -399,22 +399,22 @@ do it for earlier branch release files.
(<literal>BC</>/<literal>AD</>) format designations to match
(Brendan Jurd)
</para>
<para>
For example, input value <literal>AD</> now does not match
format string <literal>A.D.</>.
</para>
</listitem>
<listitem>
<para>
<varname>DateStyle</> no longer controls <type>INTERVAL</>
output (use new variable <varname>IntervalStyle</>)
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
......@@ -571,7 +571,7 @@ do it for earlier branch release files.
<title>Settings</title>
<itemizedlist>
<listitem>
<para>
Convert many <filename>postgresql.conf</> settings to enumerated
......@@ -579,7 +579,7 @@ do it for earlier branch release files.
values (Magnus)
</para>
</listitem>
<listitem>
<para>
Add <varname>cursor_tuple_fraction</> parameter to control the
......@@ -587,57 +587,57 @@ do it for earlier branch release files.
user (Robert Hell)
</para>
</listitem>
<listitem>
<para>
Allow underscores in <filename>postgresql.conf</> custom variable
classes (Tom)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Authentication</title>
<itemizedlist>
<listitem>
<para>
Report appropriate error message for combination of <literal>MD5</>
authentication and <varname>db_user_namespace</> enabled (Bruce)
</para>
</listitem>
<listitem>
<para>
Support regular expressions in <filename>pg_ident.conf</>
(Magnus)
</para>
</listitem>
<listitem>
<para>
Allow <productname>Kerberos</>/<acronym>GSSAPI</> parameters
to be changed without restarting the postmaster (Magnus)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4 id="release-8-4-pg-hba-conf">
<title><filename>pg_hba.conf</></title>
<itemizedlist>
<listitem>
<para>
Parse <filename>pg_hba.conf</> in the postmaster so errors are
reported on reload (Magnus)
</para>
<para>
Previously errors in the file wouldn't be detected until clients
tried to connect, which could leave the system with a broken
......@@ -651,223 +651,223 @@ do it for earlier branch release files.
if no usermap is specified (Magnus)
</para>
</listitem>
<listitem>
<para>
Change all authentication options to be <literal>name=value</>
settings (Magnus)
</para>
</listitem>
<listitem>
<para>
Allow usermap parameter for all external authentication methods
(Magnus)
</para>
<para>
Previously this was only supported for <literal>ident</>
authentication.
</para>
</listitem>
<listitem>
<para>
Allow <literal>ident</> authentication over Unix-domain sockets
on <productname>Solaris</> (Garick Hamlin)
</para>
</listitem>
<listitem>
<para>
Add <literal>clientcert</> option to control requesting of a
client certificate (Magnus)
</para>
<para>
Previously this was controlled by the presence of a root
certificate file in the server's data directory.
</para>
</listitem>
<listitem>
<para>
Add <literal>cert</> authentication method to allow user
authentication via <acronym>SSL</> certificates (Magnus)
</para>
<para>
Previously <acronym>SSL</> certificates could only verify that
the client had access to a certificate, not authenticate a
user.
</para>
</listitem>
<listitem>
<para>
Allow <literal>krb5</>, <literal>gssapi</> and <literal>sspi</>
realm and <literal>krb5</> host settings to be specified in
<filename>pg_hba.conf</> (Magnus)
</para>
<para>
These override the settings in <filename>postgresql.conf</>.
</para>
</listitem>
<listitem>
<para>
Add <literal>krb5</>, <literal>gssapi</>, and <literal>sspi</>
<varname>include_realm</> parameter (Magnus)
</para>
<para>
This allows identical usernames from different realms to be
authenticated as different database users using usermaps.
</para>
</listitem>
<listitem>
<para>
Show all parsing errors instead of aborting after the first
one (Selena Deckelmann)
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect4>
<title>Continuous Archiving</title>
<itemizedlist>
<sect3>
<title>Continuous Archiving</title>
<itemizedlist>
<listitem>
<para>
Have <function>pg_stop_backup()</> wait for modified <acronym>WAL</>
files to be archived (Simon)
</para>
<listitem>
<para>
Have <function>pg_stop_backup()</> wait for modified <acronym>WAL</>
files to be archived (Simon)
</para>
<para>
This guarantees that the backup is valid at the time
<function>pg_stop_backup()</> completes.
</para>
</listitem>
<para>
This guarantees that the backup is valid at the time
<function>pg_stop_backup()</> completes.
</para>
</listitem>
<listitem>
<para>
Prevent normal shutdown if a continuous archiving base backup
is in progress (Laurenz Albe)
</para>
</listitem>
<listitem>
<para>
Prevent normal shutdown if a continuous archiving base backup
is in progress (Laurenz Albe)
</para>
</listitem>
<listitem>
<para>
Cancel a continuous archiving base backup if a fast shutdown
is requested (Laurenz Albe)
</para>
</listitem>
<listitem>
<para>
Cancel a continuous archiving base backup if a fast shutdown
is requested (Laurenz Albe)
</para>
</listitem>
<listitem>
<para>
Allow <filename>recovery.conf</> boolean variables to take the
same range of string values as <filename>postgresql.conf</>
(Bruce)
</para>
</listitem>
<listitem>
<para>
Allow <filename>recovery.conf</> boolean variables to take the
same range of string values as <filename>postgresql.conf</>
(Bruce)
</para>
</listitem>
</itemizedlist>
</itemizedlist>
</sect4>
</sect3>
<sect4>
<title>Monitoring</title>
<itemizedlist>
<sect3>
<title>Monitoring</title>
<itemizedlist>
<listitem>
<para>
Add <function>pg_conf_load_time()</> to report when
the Postgres configuration files were last loaded (George
Gensure)
</para>
</listitem>
<listitem>
<para>
Add <function>pg_conf_load_time()</> to report when
the Postgres configuration files were last loaded (George
Gensure)
</para>
</listitem>
<listitem>
<para>
Add <function>pg_terminate_backend()</> to safely terminate a
backend (the <literal>SIGTERM</> signal works also) (Tom, Bruce)
</para>
</listitem>
<listitem>
<para>
Add <function>pg_terminate_backend()</> to safely terminate a
backend (the <literal>SIGTERM</> signal works also) (Tom, Bruce)
</para>
</listitem>
<listitem>
<para>
Add ability to track user-defined functions call counts and
runtimes via parameter <varname>track_functions</> (Martin
Pihlak)
</para>
<listitem>
<para>
Add ability to track user-defined functions call counts and
runtimes via parameter <varname>track_functions</> (Martin
Pihlak)
</para>
<para>
Function statistics appear in a new system table,
<literal>pg_stat_user_functions</>. However, inlined
<acronym>SQL</> functions are not tracked.
</para>
</listitem>
<para>
Function statistics appear in a new system table,
<literal>pg_stat_user_functions</>. However, inlined
<acronym>SQL</> functions are not tracked.
</para>
</listitem>
<listitem>
<para>
Allow specification of the maximum <literal>pg_stat_activity</>
query string size via <varname>track_activity_query_size</>
parameter (Thomas Lee)
</para>
</listitem>
<listitem>
<para>
Allow specification of the maximum <literal>pg_stat_activity</>
query string size via <varname>track_activity_query_size</>
parameter (Thomas Lee)
</para>
</listitem>
<listitem>
<para>
Improve syslog performance by increasing the maximum line length
(Tom)
</para>
</listitem>
<listitem>
<para>
Improve syslog performance by increasing the maximum line length
(Tom)
</para>
</listitem>
<listitem>
<para>
Add read-only <filename>postgresql.conf</> variables <varname>segment_size</>,
<varname>wal_block_size</>, and <varname>wal_segment_size</> (Bernd Helmle)
</para>
</listitem>
<listitem>
<para>
Add read-only <filename>postgresql.conf</> variables <varname>segment_size</>,
<varname>wal_block_size</>, and <varname>wal_segment_size</> (Bernd Helmle)
</para>
</listitem>
<listitem>
<para>
When reporting a deadlock, report all session queries involved
in the deadlock to the server log (Itagaki Takahiro)
</para>
</listitem>
<listitem>
<para>
When reporting a deadlock, report all session queries involved
in the deadlock to the server log (Itagaki Takahiro)
</para>
</listitem>
<listitem>
<para>
New <function>pg_stat_get_activity(pid)</> function to return
information about a specific process id (Magnus)
</para>
</listitem>
<listitem>
<para>
New <function>pg_stat_get_activity(pid)</> function to return
information about a specific process id (Magnus)
</para>
</listitem>
<listitem>
<para>
Move the server statistics file into the subdirectory
<filename>pg_stat_tmp</> and allow its location to be specified
via <varname>stats_temp_directory</> (Magnus)
</para>
<listitem>
<para>
Move the server statistics file into the subdirectory
<filename>pg_stat_tmp</> and allow its location to be specified
via <varname>stats_temp_directory</> (Magnus)
</para>
<para>
This allows the statistics file to be placed in a
<acronym>RAM</>-resident directory to reduce I/O requirements.
On startup/shutdown, the file is copied to the top-level
<literal>$PGDATA</> directory so it is preserved between
restarts.
</para>
</listitem>
<para>
This allows the statistics file to be placed in a
<acronym>RAM</>-resident directory to reduce I/O requirements.
On startup/shutdown, the file is copied to the top-level
<literal>$PGDATA</> directory so it is preserved between
restarts.
</para>
</listitem>
</itemizedlist>
</itemizedlist>
</sect4>
</sect3>
......@@ -983,111 +983,111 @@ do it for earlier branch release files.
<sect4>
<title><command>TRUNCATE</></title>
<itemizedlist>
<listitem>
<para>
Support statement-level <literal>ON TRUNCATE</> triggers (Simon)
</para>
</listitem>
<listitem>
<para>
Add <command>TRUNCATE TABLE</> ...
<literal>RESTART</>/<literal>CONTINUE IDENTITY</> clauses
(Zoltan Boszormenyi)
</para>
<para>
The start value of a sequence can be changed by <command>ALTER
SEQUENCE START WITH</>.
</para>
</listitem>
<listitem>
<para>
Allow <command>TRUNCATE tab1, tab1</> to succeed (Bruce)
</para>
</listitem>
<listitem>
<para>
Add a separate <command>TRUNCATE</> permission (Robert Haas)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><command>EXPLAIN</></title>
<itemizedlist>
<listitem>
<para>
Have <command>EXPLAIN VERBOSE</> show the output columns of a
query (Tom)
</para>
<para>
Previously <command>EXPLAIN VERBOSE</> output an internal
representation of the query plan. (That behavior is now
available via <varname>debug_print_plan</>.)
</para>
</listitem>
<listitem>
<para>
Have <command>EXPLAIN</> honor <varname>debug_print_plan</> (Tom)
</para>
</listitem>
<listitem>
<para>
Allow <command>EXPLAIN</> on <command>CREATE TABLE AS</> (Peter)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><literal>LIMIT</>/<literal>OFFSET</></title>
<itemizedlist>
<listitem>
<para>
Allow <literal>LIMIT</> and <literal>OFFSET</> to use subselects
as arguments (Tom)
</para>
</listitem>
<listitem>
<para>
Document that <literal>LIMIT NULL</> and <literal>OFFSET NULL</>
have no effect (Tom)
</para>
</listitem>
<listitem>
<para>
Add <acronym>SQL</>-standards syntax for
<literal>LIMIT</>/<literal>OFFSET</> capabilities (Peter)
</para>
<para>
<literal>OFFSET num {ROW|ROWS} FETCH {FIRST|NEXT} [num] {ROW|ROWS}
ONLY</>.
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect3>
<title>Object Manipulation</title>
<itemizedlist>
......@@ -1155,13 +1155,13 @@ do it for earlier branch release files.
<sect4>
<title><command>ALTER</></title>
<itemizedlist>
<listitem>
<para>
Add <command>ALTER TYPE RENAME</> (Petr Jelinek)
</para>
</listitem>
<listitem>
<para>
Add <command>ALTER SEQUENCE ... RESTART</> (no parameter) to
......@@ -1169,20 +1169,20 @@ do it for earlier branch release files.
bjm: compatibility problem?
</para>
</listitem>
<listitem>
<para>
Modify the <command>ALTER TABLE</> syntax to allow all reasonable
combinations for tables, indexes, sequences, and views (Tom)
</para>
</listitem>
<listitem>
<para>
New syntax supported (these formerly required <command>ALTER
TABLE</>)
</para>
<para>
<itemizedlist>
<listitem>
......@@ -1207,41 +1207,41 @@ do it for earlier branch release files.
</listitem>
</itemizedlist>
</para>
</listitem>
<listitem>
<para>
Add support for the syntax <command>ALTER TABLE ... ALTER COLUMN
... SET DATA TYPE</> (Peter)
</para>
<para>
This is <acronym>SQL</>-standard syntax for functionality that
was already supported.
</para>
</listitem>
<listitem>
<para>
Have <command>ALTER TABLE SET WITHOUT OIDS</> rewrite the table
to remove <type>OID</> values (Tom)
</para>
<para>
Also, add <command>ALTER TABLE SET WITH OIDS</> to rewrite the
table to add <type>OID</>s.
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Database Manipulation</title>
<itemizedlist>
<listitem>
<para>
Improve reporting of
......@@ -1250,19 +1250,19 @@ do it for earlier branch release files.
(Tom)
</para>
</listitem>
<listitem>
<para>
Make <varname>LC_COLLATE</> and <varname>LC_CTYPE</> database-level
settings (Radek Strnad, Heikki)
</para>
<para>
This makes collation similar to encoding, which was always
configurable per database.
</para>
</listitem>
<listitem>
<para>
Improve checks that the database encoding, collation
......@@ -1270,18 +1270,18 @@ do it for earlier branch release files.
(<varname>LC_CTYPE</>) match (Heikki)
</para>
</listitem>
<listitem>
<para>
Add <command>ALTER DATABASE SET TABLESPACE</> to move a database
to a new tablespace (Guillaume Lelarge, Bernd Helmle)
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect3>
......@@ -1290,98 +1290,98 @@ do it for earlier branch release files.
<sect4>
<title>Indexes</title>
<itemizedlist>
<listitem>
<para>
Dramatically improve the speed of building and accessing hash
indexes (Tom Raney, Shreya Bhargava, Kenneth Marshall)
</para>
<para>
This allows hash indexes to be sometimes faster than btree
indexes. However, hash indexes are still not crash-safe.
</para>
</listitem>
<listitem>
<para>
Have hash indexes store only the hashed value, not the full
indexed columns (Xiao Meng)
</para>
<para>
This greatly reduces the size of hash indexes for long indexed
values, and improves performance.
</para>
</listitem>
<listitem>
<para>
Special xxx_pattern_ops <literal>LIKE</> indexes can now be
used for simple equality comparisons (Tom)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Full Text Indexes</title>
<itemizedlist>
<listitem>
<para>
Remove the requirement to use <literal>@@@</> when doing
<acronym>GIN</> weighted lookups on full text indexes (Tom)
</para>
<para>
The normal <literal>@@</> text search operator can be used
instead.
</para>
</listitem>
<listitem>
<para>
Add an optimizer selectivity function for <literal>@@</> text
search operations (Jan Urbanski)
</para>
</listitem>
<listitem>
<para>
Add partial match support for <acronym>GIN</> indexes (Teodor
Sigaev, Oleg Bartunov)
</para>
</listitem>
<listitem>
<para>
Allow prefix matching in full text searches (Teodor Sigaev,
Oleg Bartunov)
</para>
</listitem>
<listitem>
<para>
Support multi-column <acronym>GIN</> indexes (Teodor Sigaev)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><command>VACUUM</></title>
<itemizedlist>
<listitem>
<para>
Allow relation forks to track free space (Heikki)
</para>
<para>
This allows the recording of all free space discovered by vacuum
in <filename>*.fsm</> files, rather than having to limit
......@@ -1390,30 +1390,30 @@ do it for earlier branch release files.
settings have been removed.
</para>
</listitem>
<listitem>
<para>
New visibility map file to track pages that do not require
vacuum (Heikki)
</para>
<para>
This allows <command>VACUUM</> to avoid sequentially scanning
a table when only a portion of the table needs vacuuming.
</para>
</listitem>
<listitem>
<para>
Track explicit transaction snapshots (Alvaro)
</para>
<para>
This improves space reuse by vacuum in the presence of long-running
transactions.
</para>
</listitem>
<listitem>
<para>
Add <varname>vacuum_freeze_table_age</> parameter to control
......@@ -1421,53 +1421,53 @@ do it for earlier branch release files.
do a full table scan to set frozen xids (Heikki)
</para>
</listitem>
<listitem>
<para>
Add ability to specify autovacuum and <acronym>TOAST</> parameters
in <command>CREATE TABLE</> (Alvaro, Euler Taveira de Oliveira)
</para>
<para>
Autovacuum options used to be stored in a system table.
</para>
</listitem>
<listitem>
<para>
Add <literal>--freeze</> option to <application>vacuumdb</>
(Bruce)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Other Utility Operations</title>
<itemizedlist>
<listitem>
<para>
Add verbose option to the <command>CLUSTER</> command and
<application>clusterdb</> (Jim Cox)
</para>
</listitem>
<listitem>
<para>
Decrease memory requirements for recording pending trigger
events (Tom)
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect3>
<title>Data Types</title>
<itemizedlist>
......@@ -1515,64 +1515,64 @@ do it for earlier branch release files.
<sect4>
<title>Temporal Data Types</title>
<itemizedlist>
<listitem>
<para>
Reject year <literal>0 BC</> and years <literal>000</> and
<literal>0000</> (Tom)
</para>
<para>
Previously these were interpreted as <literal>1 BC</>; years
<literal>0</> and <literal>00</> are assumed to be the year
2000.
</para>
</listitem>
<listitem>
<para>
Include <acronym>SGT</> (Singapore time) as a valid time zone
abbreviation (Tom)
</para>
</listitem>
<listitem>
<para>
Support the <acronym>IS0 8601</> <type>interval</> syntax (Tom,
Kevin Grittner)
</para>
<para>
For example, <literal>INTERVAL 'P1Y2M3DT4H5M6.7S'</> is now
supported.
</para>
</listitem>
<listitem>
<para>
Allow <type>INTERVAL</> precision to be specified after the
last field, for <acronym>SQL</>-standards compliance (Tom)
</para>
<para>
Formerly the precision had to be specified after the keyword
<type>INTERVAL</> (this syntax is still supported). Data type
definitions will now be output using the new format.
</para>
</listitem>
<listitem>
<para>
Support <literal>infinite</> dates (Tom)
</para>
</listitem>
<listitem>
<para>
Add <varname>IntervalStyle</> parameter
which controls how <type>INTERVAL</> values are output (Ron Mayer)
</para>
<para>
Valid value are: <literal>postgres</>, <literal>postgres_verbose</>,
<literal>sql_standard</>, <literal>iso_8601</>. This also
......@@ -1580,61 +1580,61 @@ do it for earlier branch release files.
some fields have positive/negative designations.
</para>
</listitem>
<listitem>
<para>
Make <type>INTERVAL</> seconds rounding more consistent across
output formats (Ron Mayer)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Arrays</title>
<itemizedlist>
<listitem>
<para>
Have cast on <type>ARRAY</> apply to all elements, not just
the array result (Brendan Jurd)
</para>
<para>
This allows <literal>NULL</> <type>ARRAY</> entries as long as
they are properly cast.
</para>
</listitem>
<listitem>
<para>
Make <acronym>SQL</>-syntax <type>ARRAY</> dimensions optional
to match the <acronym>SQL</> standard (Peter)
</para>
</listitem>
<listitem>
<para>
Add <function>array_ndims()</> to return the number
of dimensions of an array (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Add <function>array_length()</> to return the length
of an array for the specified dimensions (Jim Nasby, Robert
Haas, Peter Eisentraut)
</para>
<para>
Also add identically-functioning <acronym>SQL</>-standard
function <function>cardinality()</>.
</para>
</listitem>
<listitem>
<para>
Add new aggregate function <function>array_agg()</>, which
......@@ -1642,74 +1642,74 @@ do it for earlier branch release files.
Jeff Davis, Peter)
</para>
</listitem>
<listitem>
<para>
Add <function>unnest()</>, which converts an array to
individual row values (Tom)
</para>
<para>
This is the opposite of <function>array_agg()</>.
</para>
</listitem>
<listitem>
<para>
Add <function>array_fill()</> to create arrays initialized with
a value (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Add <function>generate_subscripts()</> to generate array
subscripts (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Generate proper error if a <type>SERIAL</> array is specified
(Tom)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Wide-Value Storage (<acronym>TOAST</>)</title>
<itemizedlist>
<listitem>
<para>
Consider <acronym>TOAST</> compression on values as short as
32 bytes (previously 256 bytes) (Tom)
</para>
</listitem>
<listitem>
<para>
Require 25% of space savings before using <acronym>TOAST</>
compression (previously 20%) (Tom)
</para>
</listitem>
<listitem>
<para>
Be more aggressive in storing <literal>EXTERNAL</> and
<literal>EXTENDED</> column values in <acronym>TOAST</>(Tom)
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect3>
<title>Functions</title>
<itemizedlist>
......@@ -1770,79 +1770,79 @@ do it for earlier branch release files.
<sect4>
<title>Object Information Functions</title>
<itemizedlist>
<listitem>
<para>
Implement <function>current_query()</> for use by functions
that need to know the currently running query (Tomas Doran)
</para>
</listitem>
<listitem>
<para>
Add <function>pg_get_keywords()</> to return predefined
parser keywords (Dave Page)
</para>
</listitem>
<listitem>
<para>
Add <function>pg_get_functiondef()</> to see a functions
definition (Abhijit Menon-Sen)
</para>
</listitem>
<listitem>
<para>
Modify <function>pg_relation_size()</> to handle free space
map (<filename>*.fsm</>) files (Heikki)
</para>
</listitem>
<listitem>
<para>
Modify <function>pg_relation_size()</> to use <literal>regclass</>
(Heikki)
</para>
<para>
<function>pg_relation_size(data_type_name)</> no longer works.
</para>
</listitem>
<listitem>
<para>
Add <literal>boot_val</> and <literal>reset_val</> columns to
<literal>pg_settings</> output (Greg Smith)
</para>
</listitem>
<listitem>
<para>
Add support for <varname>CURRENT_CATALOG</>,
<varname>CURRENT_SCHEMA</>, <varname>SET CATALOG</>, <varname>SET
SCHEMA</> (Peter)
</para>
<para>
These are <acronym>SQL</>-standard capabilities.
</para>
</listitem>
<listitem>
<para>
Add <function>pg_typeof()</> which returns the data type
of any value (Brendan Jurd)
</para>
</listitem>
<listitem>
<para>
Have <function>version()</> return information about whether
the server is a 32 or 64-bit binary (Bruce)
</para>
</listitem>
<listitem>
<para>
Fix the behavior of information schema columns
......@@ -1850,13 +1850,13 @@ do it for earlier branch release files.
be consistent (Peter)
</para>
</listitem>
<listitem>
<para>
Convert remaining builtin set-returning functions to use
<literal>OUT</> parameters (Jaime Casanova)
</para>
<para>
This makes it possible to call these functions without specifying
a column list: <function>pg_show_all_settings()</>,
......@@ -1864,7 +1864,7 @@ do it for earlier branch release files.
<function>pg_prepared_statement()</>, <function>pg_cursor()</>
</para>
</listitem>
<listitem>
<para>
Have <function>pg_*_is_visible()</> and
......@@ -1872,7 +1872,7 @@ do it for earlier branch release files.
for invalid oids, rather than generate an error (Tom)
</para>
</listitem>
<listitem>
<para>
Add <function>has_column_privilege()</> and
......@@ -1880,87 +1880,87 @@ do it for earlier branch release files.
Frost, Tom)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Function Creation</title>
<itemizedlist>
<listitem>
<para>
Support variadic functions (functions with a variable number
of arguments) (Pavel Stehule)
</para>
<para>
Only trailing arguments can be optional, and they all must be
of the same data type.
</para>
</listitem>
<listitem>
<para>
Allow <literal>DEFAULT</> values for function arguments (Pavel
Stehule)
</para>
</listitem>
<listitem>
<para>
Add <command>CREATE FUNCTION ... RETURNS TABLE</> clause (Pavel
Stehule)
</para>
</listitem>
<listitem>
<para>
Allow <acronym>SQL</>-language functions to return the output
of an <command>INSERT</>/<command>UPDATE</>/<command>DELETE</>
<literal>RETURNING</> clause (Tom)
</para>
<para>
Formerly only <command>SELECT</> was supported.
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>PL/PgSQL Server-Side Language</title>
<itemizedlist>
<listitem>
<para>
Support <literal>EXECUTE USING</> (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Allow looping over an open cursor using a <literal>FOR</>
loop (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Support <literal>RETURN QUERY EXECUTE</> (Pavel
Stehule)
</para>
</listitem>
<listitem>
<para>
Improve the <literal>RAISE</> command: (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
<itemizedlist>
......@@ -1988,41 +1988,41 @@ do it for earlier branch release files.
</itemizedlist>
</para>
</listitem>
<listitem>
<para>
Allow specification of <varname>SQLSTATE</> numeric codes
in <literal>EXCEPTION</> lists (Pavel Stehule)
</para>
<para>
This is useful for handling custom <varname>SQLSTATE</> codes.
</para>
</listitem>
<listitem>
<para>
Support the <literal>CASE</> statement (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Add <literal>FOUND</> and <command>GET DIAGNOSTICS</> support
for the <literal>RETURN QUERY</> statement (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Add message translation support (Alvaro)
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect3>
......@@ -2031,21 +2031,21 @@ do it for earlier branch release files.
<sect4>
<title><link linkend="APP-PSQL"><application>psql</></link></title>
<itemizedlist>
<listitem>
<para>
Remove startup banner; now just suggest <literal>help</>
(Joshua Drake)
</para>
</listitem>
<listitem>
<para>
Have <literal>help</> show common backslash commands (Greg
Sabino Mullane)
</para>
</listitem>
<listitem>
<para>
Add <literal>\pset format wrapped</> mode to wrap output to the
......@@ -2053,95 +2053,95 @@ do it for earlier branch release files.
is set (Bryce Nesbitt)
</para>
</listitem>
<listitem>
<para>
Use the pager for wide output (Bruce)
</para>
</listitem>
<listitem>
<para>
Require a space between a backslash command and the first
argument (Bernd Helmle)
</para>
</listitem>
<listitem>
<para>
Display access control rights on multiple lines (Brendan
Jurd, Andreas Scherbaum)
</para>
</listitem>
<listitem>
<para>
Improve tab completion support for schema qualified and
quoted identifiers (Greg Sabino Mullane)
</para>
</listitem>
<listitem>
<para>
Allow the normal range of boolean values in <command>\pset</>,
rather than just <literal>on</> and <literal>off</> (Bruce)
</para>
</listitem>
<listitem>
<para>
Add optional <literal>on</>/<literal>off</> arguments for
<command>\timing</> (David Fetter)
</para>
</listitem>
<listitem>
<para>
Have <command>\l</> show access privileges (Andrew Gilligan)
</para>
</listitem>
<listitem>
<para>
Have <command>\l+</> show database sizes, if permissions
allow (Andrew Gilligan)
</para>
</listitem>
<listitem>
<para>
Add the <command>\ef</> command to edit function definitions
(Abhijit Menon-Sen)
</para>
<para>
<command>\ef</> without a function name creates an empty
function template for editing.
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><link linkend="APP-PSQL"><application>psql</></link> \d*</title>
<itemizedlist>
<listitem>
<para>
Have <command>\d</> show cases where this table is referenced
as a foreign-key constraint (Kenneth D'Souza)
</para>
</listitem>
<listitem>
<para>
Have <command>\d</> show the value of sequence columns
(Euler Taveira de Oliveira)
</para>
</listitem>
<listitem>
<para>
Add column storage type and other relation options to the
......@@ -2149,64 +2149,64 @@ do it for earlier branch release files.
Oliveira)
</para>
</listitem>
<listitem>
<para>
Show relation size in <command>\d+</> output (Dickson S.
Guedes)
</para>
</listitem>
<listitem>
<para>
Have all <command>\d*</> commands show system objects only
if <literal>S</> is specified (Greg Sabino Mullane)
</para>
<para>
<command>\dt</> already behaved this way. bjm: accuate?
</para>
</listitem>
<listitem>
<para>
Make <command>\d</> and <command>\dt</> consistent in
their display of system tables (Bruce)
</para>
<para>
Previously, <literal>\d pg_class</> would show <literal>pg_class</>
while <literal>\dt pg_class</> would not.
</para>
</listitem>
<listitem>
<para>
Show enumerated values in <command>\dT+</> (David Fetter)
</para>
</listitem>
<listitem>
<para>
Allow <command>\dC</> to accept wildcard patterns (Tom)
</para>
</listitem>
<listitem>
<para>
Allow <command>\d*</> commands to work with versions of
<productname>PostgreSQL</> back to 7.4 (Guillaume Lelarge)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><link linkend="APP-PGDUMP"><application>pg_dump</></link></title>
<itemizedlist>
<listitem>
<para>
Add a <literal>--no-tablespaces</> option to
......@@ -2215,53 +2215,53 @@ do it for earlier branch release files.
tablespace layouts (Gavin Roy)
</para>
</listitem>
<listitem>
<para>
Remove <literal>-i</>/<literal>--ignore-version</> option from
<application>pg_dump</> and <application>pg_dumpall</> (Tom)
</para>
<para>
Use of this option does not throw an error, but it has no
effect. This option was removed because the version checks
are considered necessary.
</para>
</listitem>
<listitem>
<para>
Disable <varname>statement_timeout</> during dump and restore
(Joshua Drake)
</para>
</listitem>
<listitem>
<para>
Add <application>pg_dump</>/<application>pg_dumpall</> option
<literal>--lock-wait-timeout</> (David Gould)
</para>
<para>
This allows dumps to fail if unable to acquire a shared lock
within the specified amount of time.
</para>
</listitem>
<listitem>
<para>
Reorder <application>pg_dump</> <literal>--data-only</> output
to dump primary-key tables referenced by foreign keys before
the foreign-key referencing tables (Tom)
</para>
<para>
This allows data loads when foreign keys are already present.
If circular references make this impossible, a <literal>NOTICE</>
is issued.
</para>
</listitem>
<listitem>
<para>
Allow <application>pg_dump</>, <application>pg_dumpall</>, and
......@@ -2269,41 +2269,41 @@ do it for earlier branch release files.
Lszl)
</para>
</listitem>
<listitem>
<para>
Allow <application>pg_restore</> of a custom format archive to
use multiple concurrent connections to do the restore (Andrew)
</para>
<para>
The number of concurrent connections is controlled by the option
<literal>--jobs</>.
</para>
</listitem>
<listitem>
<para>
Add new <application>pg_dump</> <literal>--binary-upgrade</>
option for use by binary upgrade utilities (Bruce)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Other Client Applications</title>
<itemizedlist>
<listitem>
<para>
Fix <literal>pg_ctl restart</> to preserve command-line arguments
(Bruce)
</para>
</listitem>
<listitem>
<para>
Add <literal>-w</>/<literal>--no-password</> option that
......@@ -2311,21 +2311,21 @@ do it for earlier branch release files.
<literal>-W</>/<literal>--password</> option (Peter)
</para>
</listitem>
<listitem>
<para>
Remove <literal>-q</> (quiet) option for create* and drop*
utility commands (Peter)
</para>
<para>
These options have had no effect since <productname>PostgreSQL</>
8.3.
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
......@@ -2336,65 +2336,65 @@ do it for earlier branch release files.
<sect4>
<title><link linkend="libpq"><application>libpq</></link></title>
<itemizedlist>
<listitem>
<para>
Allow the <type>OID</> to be specified when importing large
objects using <function>lo_import_with_oid()</> (Tatsuo)
</para>
</listitem>
<listitem>
<para>
Add events support (Andrew Chernow, Merlin Moncure)
</para>
<para>
This adds the ability to register callbacks to handle private
data for connection and result creation and destruction.
</para>
</listitem>
<listitem>
<para>
Improve error handling to allow the return of multiple
error messages as multi-line error reports (Magnus)
</para>
</listitem>
<listitem>
<para>
Have <function>PQexecParams()</> return
<varname>PGRES_EMPTY_QUERY</> for an empty query (Tom)
</para>
<para>
It previously returned <varname>PGRES_COMMAND_OK</>.
</para>
</listitem>
<listitem>
<para>
Document how to avoid the overhead of <function>WSACleanup()</>
on Windows (Andrew Chernow)
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><link linkend="libpq"><application>libpq</></link>
<acronym>SSL</> (Secure Sockets Layer)</title>
<itemizedlist>
<listitem>
<para>
Fix certificate validation for <acronym>SSL</> connections
(Magnus)
</para>
<para>
<application>libpq</> now verifies both the certificate and
the name of the server by default when making <acronym>SSL</>
......@@ -2404,97 +2404,97 @@ do it for earlier branch release files.
and certificate verification if required.
</para>
</listitem>
<listitem>
<para>
Allow the file locations for client certificates to be specified
(Mark Woodward, Alvaro, Magnus)
</para>
</listitem>
<listitem>
<para>
Add connection parameter <literal>sslverify</> to control
the verification of the server's certificate
(Magnus)
</para>
<para>
The default is full verification.
</para>
</listitem>
<listitem>
<para>
Properly unregister <application>OpenSSL</> callbacks when
libpq is done with all connection (Bruce, Magnus, Russell Smith)
</para>
<para>
This is required for applications that unload the libpq library
so no invalid <application>OpenSSL</> callbacks remain.
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title><link linkend="ecpg"><application>ecpg</></link></title>
<itemizedlist>
<listitem>
<para>
Add localization support for messages (Euler Taveira de
Oliveira)
</para>
</listitem>
<listitem>
<para>
ecpg parser is now automatically generated from the server
parser (Michael)
</para>
<para>
Previously a separate ecpg parser was maintained.
</para>
</listitem>
</itemizedlist>
</sect4>
<sect4>
<title>Server Programming Interface (<acronym>SPI</>)</title>
<itemizedlist>
<listitem>
<para>
Add support for single-use plans with out-of-line
parameters (Tom)
</para>
</listitem>
<listitem>
<para>
Add new <varname>SPI_OK_REWRITTEN</> return code to
<function>SPI_execute()</> (Heikki)
</para>
<para>
This is used when a command is rewritten to another type of
command.
</para>
</listitem>
</itemizedlist>
</sect4>
</sect3>
<sect3>
<title>Build Options</title>
<itemizedlist>
......
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