Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
P
Postgres FD Implementation
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Abuhujair Javed
Postgres FD Implementation
Commits
cf90c54b
Commit
cf90c54b
authored
Sep 19, 2006
by
Bruce Momjian
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Reorder 8.2 release note items more logically.
parent
88057d0c
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
588 additions
and
561 deletions
+588
-561
doc/src/sgml/release.sgml
doc/src/sgml/release.sgml
+588
-561
No files found.
doc/src/sgml/release.sgml
View file @
cf90c54b
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.4
39 2006/09/19 00:57:07
momjian Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.4
40 2006/09/19 02:08:30
momjian Exp $ -->
<!--
<!--
Typical markup:
Typical markup:
...
@@ -37,15 +37,15 @@ For new features, add links to the documentation sections.
...
@@ -37,15 +37,15 @@ For new features, add links to the documentation sections.
<para>
<para>
This release adds many improvements to commands and database
This release adds many improvements to commands and database
facilities that were requested by users. Rather
than add a
facilities that were requested by users. Rather
add a few
few large new features, this release makes many features from
new features, this release makes many features from previous
previous releases easier to use. For example, it is now much
releases easier to use. For example, it is now much easier
easier to create standby point-in-time-recovery (PITR) servers.
to create standby point-in-time-recovery (PITR) servers. Many
Many performance bottlenecks have been eliminated, allowing
performance bottlenecks have been eliminated, allowing more
more
functionality to be enabled by default. Various additions
functionality to be enabled by default. Various additions
will make porting from other databases easier. The changes
will make porting from other databases easier. The changes
in this release continue the <productname>PostgreSQL</>
in this release continue the <productname>PostgreSQL</>
tradition of
not only being
the most advanced open source
tradition of
being not only
the most advanced open source
database, but also the easiest to use.
database, but also the easiest to use.
</para>
</para>
...
@@ -68,39 +68,41 @@ For new features, add links to the documentation sections.
...
@@ -68,39 +68,41 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Improve cost estimation for nestloop index scans (Tom)
Set <envar>escape_string_warning</> to <literal>on</> by
default (Bruce)
</para>
</para>
<para>
<para>
This may eliminate the need to set unrealistically small
This issues a warning if backslash escapes are used in
values of <envar>random_page_cost</>. If you have been
non-escape (non-<literal>E''</>) strings.
using a very small <envar>random_page_cost</>, please
recheck your test cases.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Deprecate use of <application>postmaster</> symlink (Peter)
Disallow aggregate functions in <command>UPDATE</> commands
(unless within a subquery) (Tom)
</para>
</para>
<para>
<para>
<application>postmaster</> and <application>postgres</>
The standard disallows this, and it leads to unpredictable
commands now act identically, with the behavior determined
results.
by switches. The <application>postmaster</> symlink is
kept for compatibility, but is not really needed.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Change <envar>log_duration</> to output even if the query
Change the row constructor syntax (<literal>ROW(...)</>)
is not output (Tom)
so that list elements <literal>foo.*</> will be expanded
to a list of their member fields, rather than creating a
nested rowtype field as formerly (Tom)
</para>
</para>
<para>
<para>
In prior releases, <envar>log_duration</> only printed if
The new behavior is substantially more useful since it
the query appeared earlier in the logs.
allows, for example, triggers to check for data changes
with <literal>IF row(new.*) IS DISTINCT FROM row(old.*)</>.
The old behavior is still available by omitting <literal>.*</>.
</para>
</para>
</listitem>
</listitem>
...
@@ -120,92 +122,89 @@ For new features, add links to the documentation sections.
...
@@ -120,92 +122,89 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Set <envar>escape_string_warning</> to <literal>on</> by
Have <command>SET CONSTRAINT</> affect only one constraint
default (Bruce
)
(Kris Jurka
)
</para>
</para>
<para>
<para>
This issues a warning if backslash escapes are used in
In previous releases, <command>SET CONSTRAINT</> modified
non-escape (non-<literal>E''</>) strings.
all constraints with a matching name. In this release,
the schema search path is used to modify only the first
matching constraint. A schema specification is also
supported.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Disallow aggregate functions in <command>UPDATE</> command
s
Remove rule permission for tables, for security reason
s
(
unless within a subquery) (
Tom)
(Tom)
</para>
</para>
<para>
<para>
The standard disallows this, and it leads to unpredictable
In this release, only a table's owner can create or modify
results.
rules for the table. For backwards compatibility,
<command>GRANT</>/<command>REVOKE RULE</> is still accepted,
but it does nothing.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Change the row constructor syntax (<literal>ROW(...)</>)
Array comparison improvements (Tom)
so that list elements <literal>foo.*</> will be expanded
to a list of their member fields, rather than creating a
nested rowtype field as formerly (Tom)
</para>
</para>
<para>
<para>
The new behavior is substantially more useful since it
Now array dimensions are also compared.
allows, for example, triggers to check for data changes
with <literal>IF row(new.*) IS DISTINCT FROM row(old.*)</>.
The old behavior is still available by omitting <literal>.*</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Have <command>SET CONSTRAINT</> affect only one constraint
Change array concatenation to match documented behavior
(
Kris Jurka
)
(
Tom
)
</para>
</para>
<para>
<para>
In previous releases, <command>SET CONSTRAINT</> modified
This changes the previous behavior where concatenation
all constraints with a matching name. In this release,
would adjust the lower array dimensions.
the schema search path is used to modify only the first
matching constraint. A schema specification is also
supported.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Remove rule permission for tables, for security reason
s
Make command-line options of postmaster and postgre
s
(Tom
)
identical (Peter
)
</para>
</para>
<para>
<para>
In this release, only a table's owner can create or modify
This allows the postmaster to pass arguments to each backend
rules for the table. For backwards compatibility,
without using <literal>-o</>.
<command>GRANT</>/<command>REVOKE RULE</> is still accepted,
but it does nothing.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Array comparison improvements (Tom
)
Deprecate use of <application>postmaster</> symlink (Peter
)
</para>
</para>
<para>
<para>
Now array dimensions are also compared.
<application>postmaster</> and <application>postgres</>
commands now act identically, with the behavior determined
by switches. The <application>postmaster</> symlink is
kept for compatibility, but is not really needed.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Change
array concatenation to match documented behavior
Change
<envar>log_duration</> to output even if the query
(Tom)
is not output
(Tom)
</para>
</para>
<para>
<para>
This changes the previous behavior where concatenation
In prior releases, <envar>log_duration</> only printed if
would adjust the lower array dimension
s.
the query appeared earlier in the log
s.
</para>
</para>
</listitem>
</listitem>
...
@@ -240,6 +239,19 @@ For new features, add links to the documentation sections.
...
@@ -240,6 +239,19 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Improve cost estimation for nestloop index scans (Tom)
</para>
<para>
This may eliminate the need to set unrealistically small
values of <envar>random_page_cost</>. If you have been
using a very small <envar>random_page_cost</>, please
recheck your test cases.
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Change <application>libpq</> <function>PQdsplen()</> to
Change <application>libpq</> <function>PQdsplen()</> to
...
@@ -262,23 +274,14 @@ For new features, add links to the documentation sections.
...
@@ -262,23 +274,14 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Remove <acronym>QNX</> and <acronym>BEOS</> ports (Bruce)
In /contrib/xml2, rename <function>xml_valid()</> to
</para>
<function>xml_is_well_formed()</> (Tom)
<para>
These ports no longer had active maintainers.
</para>
</listitem>
<listitem>
<para>
Make command-line options of postmaster and postgres
identical (Peter)
</para>
</para>
<para>
<para>
This allows the postmaster to pass arguments to each backend
<function>xml_valid()</> will remain for backward compability,
without using <literal>-o</>.
but its behavior will change to do schema checks in future
releases.
</para>
</para>
</listitem>
</listitem>
...
@@ -304,14 +307,11 @@ For new features, add links to the documentation sections.
...
@@ -304,14 +307,11 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
In /contrib/xml2, rename <function>xml_valid()</> to
Remove <acronym>QNX</> and <acronym>BEOS</> ports (Bruce)
<function>xml_is_well_formed()</> (Tom)
</para>
</para>
<para>
<para>
<function>xml_valid()</> will remain for backward compability,
These ports no longer had active maintainers.
but its behavior will change to do schema checks in future
releases.
</para>
</para>
</listitem>
</listitem>
...
@@ -472,7 +472,10 @@ For new features, add links to the documentation sections.
...
@@ -472,7 +472,10 @@ For new features, add links to the documentation sections.
Teramoto)
Teramoto)
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>Server Changes</title>
<title>Server Changes</title>
...
@@ -480,22 +483,55 @@ For new features, add links to the documentation sections.
...
@@ -480,22 +483,55 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Improve performance of statistics monitoring, especially
Allow a forced switch to a new xlog file (Simon Riggs, Tom)
<literal>stats_command_string</> (Tom, Bruce)
</para>
</para>
<para>
<para>
This release sets <envar>stats_command_string</> to
This is valuable for keeping <acronym>PITR</> standby
<literal>on</> by default, now that its overhead is minimal.
servers in sync with the master. xlog file switching also
This means <literal>pg_stat_activity</> now will show all
happens automatically during <function>pg_stop_backup()</>.
active queries by default.
This ensures that <acronym>PITR</> servers have all xlog
files needed for recovery.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add support for include directives in <filename>postgresql.conf</>
Add <acronym>WAL</> informational functions (Simon Riggs)
(Joachim Wieland)
</para>
<para>
Add functions for interrogating the current xlog insertion
point and determining <acronym>WAL</> filenames from the
hex <acronym>WAL</> locations displayed by
<function>pg_stop_backup()</> and friends.
</para>
</listitem>
<listitem>
<para>
Allow <acronym>WAL</> replay to be restored quicker in case
of a crash (Simon Riggs)
</para>
<para>
The server now does periodic checkpoints during <acronym>WAL</>
recovery, so if there is a crash, future <acronym>WAL</>
recovery is shortened. This also eliminates the need for
<acronym>PITR</> standby servers to replay the entire log
since the base backup if they crash.
</para>
</listitem>
<listitem>
<para>
Add <envar>archive_timeout</> to force xlog file switches
at a given interval (Simon Riggs)
</para>
<para>
This enforces a maximum delay for <acronym>PITR</> standby
servers.
</para>
</para>
</listitem>
</listitem>
...
@@ -512,14 +548,14 @@ For new features, add links to the documentation sections.
...
@@ -512,14 +548,14 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
A
llow <envar>full_page_writes</> to be turned <literal>off</>
A
dd <literal>GRANT CONNECT ON DATABASE</>, to be used in
a
gain (Tom
)
a
ddition to <filename>pg_hba.conf</> (Gevik Babakhani
)
</para>
</para>
<para>
<para>
This
flag can now be used even with <acronym>PITR</>. It
This
gives SQL-control over database access, and works in
is turned on automatically between <function>pg_start_backup()
</>
combination with the existing <filename>pg_hba.conf
</>
and <function>pg_stop_backup()</> cal
ls.
contro
ls.
</para>
</para>
</listitem>
</listitem>
...
@@ -547,14 +583,12 @@ For new features, add links to the documentation sections.
...
@@ -547,14 +583,12 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add <literal>GRANT CONNECT ON DATABASE</>, to be used in
Track tables needing vacuum with more accuracy (Alvaro)
addition to <filename>pg_hba.conf</> (Gevik Babakhani)
</para>
</para>
<para>
<para>
This gives SQL-control over database access, and works in
This reduces the overhead involved in preventing transaction
combination with the existing <filename>pg_hba.conf</>
ID wraparound.
controls.
</para>
</para>
</listitem>
</listitem>
...
@@ -572,20 +606,35 @@ For new features, add links to the documentation sections.
...
@@ -572,20 +606,35 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add <acronym>GUC</> <envar>update_process_title</> to
Improve performance of statistics monitoring, especially
control whether the <application>ps</> display is updated
<literal>stats_command_string</> (Tom, Bruce)
for every command, default to <literal>on</> (Bruce)
</para>
<para>
This release sets <envar>stats_command_string</> to
<literal>on</> by default, now that its overhead is minimal.
This means <literal>pg_stat_activity</> now will show all
active queries by default.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Track tables needing vacuum with more accuracy (Alvaro)
Add a <literal>waiting</> column to <literal>pg_stat_activity</>
(Tom)
</para>
</para>
<para>
<para>
This reduces the overhead involved in preventing transaction
This allows <literal>pg_stat_activity</> to show the same
ID wraparound.
information as the <literal>ps</> display.
</para>
</listitem>
<listitem>
<para>
Add <acronym>GUC</> <envar>update_process_title</> to
control whether the <application>ps</> display is updated
for every command, default to <literal>on</> (Bruce)
</para>
</para>
</listitem>
</listitem>
...
@@ -601,6 +650,13 @@ For new features, add links to the documentation sections.
...
@@ -601,6 +650,13 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Add support for include directives in <filename>postgresql.conf</>
(Joachim Wieland)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Improve logging of protocol-level prepare/bind/execute
Improve logging of protocol-level prepare/bind/execute
...
@@ -613,87 +669,95 @@ For new features, add links to the documentation sections.
...
@@ -613,87 +669,95 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Query Changes</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Allow a forced switch to a new xlog file (Simon Riggs, Tom)
Add <command>INSERT</>/<command>UPDATE</>/<command>DELETE</>
<literal>RETURNING</> (Jonah Harris, Tom)
</para>
</para>
<para>
<para>
This is valuable for keeping <acronym>PITR</> standby
This allows these commands to return values, such as the
servers in sync with the master. xlog file switching also
computed serial key for a new row. In the <command>UPDATE</>
happens automatically during <function>pg_stop_backup()</>.
case, values from the new state of the row are returned.
This ensures that <acronym>PITR</> servers have all xlog
files needed for recovery.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <acronym>WAL</> informational functions (Simon Riggs)
Add support for multi-row <literal>VALUES</> clauses as
part of <command>INSERT</> and <command>SELECT</> statements
(Joe, Tom)
</para>
</para>
<para>
<para>
Add functions for interrogating the current xlog insertion
This allows <command>INSERT</> to insert multiple rows of
point and determining <acronym>WAL</> filenames from the
constants, or queries to generate result sets using constants.
hex <acronym>WAL</> locations displayed by
For example, <literal>INSERT ... VALUES (...), (...),
<function>pg_stop_backup()</> and friends.
....</>, and <literal>SELECT * FROM (VALUES (...), (...),
....) AS alias(f1, ...)</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow <
acronym>WAL</> replay to be restored quicker in case
Allow <
command>UPDATE</> and <command>DELETE</> to use an
of a crash (Simon Riggs
)
alias for the target table (Atsushi Ogawa
)
</para>
</para>
<para>
<para>
The server now does periodic checkpoints during <acronym>WAL</>
This allows these statements to support self-joins more
recovery, so if there is a crash, future <acronym>WAL</>
conveniently. <command>UPDATE</> already supported as
recovery is shortened. This also eliminates the need for
<literal>FROM</> clause, but <command>DELETE</> did not.
<acronym>PITR</> standby servers to replay the entire log
since the base backup if they crash.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
A
dd <envar>archive_timeout</> to force xlog file switches
A
llow <command>UPDATE</> to set multiple columns with a
at a given interval (Simon Riggs
)
list of values (Susanne Ebrecht
)
</para>
</para>
<para>
<para>
This enforces a maximum delay for <acronym>PITR</> standby
This is basically as short-hand for assigning the columns
servers.
and values in pairs. The syntax is <literal>UPDATE tab
SET (col, ...) = (val, ...)</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add a <literal>waiting</> column to <literal>pg_stat_activity</>
Allow additional row value comparisons (Tom)
(Tom)
</para>
</para>
<para>
<para>
This allows <literal>pg_stat_activity</> to show the same
Add <, <=, >, >=.
information as the <literal>ps</> display.
</para>
</para>
</listitem>
</listitem>
</sect3>
<sect3>
<title>Query Changes</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Support portal parameters in <command>EXPLAIN</> and
Add <literal>CASCADE</> option to <command>TRUNCATE</>
<command>EXECUTE</> (Tom
)
(Joachim Wieland
)
</para>
</para>
<para>
<para>
This allows, for example, <literal>?</> parameters to work
This allows <command>TRUNCATE</> also to automatically
in these commands in <acronym>JDBC</>.
truncate all foreign-key referencing tables.
</para>
</listitem>
<listitem>
<para>
Support <literal>FOR UPDATE</> and <literal>FOR SHARE</>
in the same command (Tom)
</para>
</para>
</listitem>
</listitem>
...
@@ -712,199 +776,191 @@ For new features, add links to the documentation sections.
...
@@ -712,199 +776,191 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Allow additional row value comparisons (Tom)
Improve the length output used by
<literal>UNION</>/<literal>INTERSECT</>/<literal>EXCEPT</>
(Tom)
</para>
</para>
<para>
<para>
Add <, <=, >, >=.
When all columns are of the same defined length, that length
is used for output, rather than a generic length.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add system view <literal>pg_prepared_statements</> to show
Allow <literal>ILIKE</> to work for multi-byte encodings
prepared statements (Joachim Wieland)
(Tom)
</para>
<para>
Internally, <literal>ILIKE</> now calls <function>lower()</>
and then uses <literal>LIKE</>. Locale-specific regular
expression operations still do not work in these encodings.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add system view <literal>pg_cursors</> to show open cursors
Enable <envar>standard_conforming_strings</> to be turned
(Joachim Wieland
)
<literal>on</> (Kevin Grittner
)
</para>
</para>
<para>
<para>
Both this and <literal>pg_prepared_statements</> are very
This allow special backslash escaping in strings to be
useful for pooled connection setups.
turned off so <productname>PostgreSQL</> is more
standards-compliant. The default is <literal>off</>, but
future releases will default this to <literal>on</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
If <acronym>SQL</>-level <command>PREPARE</> parameters
Add system view <literal>pg_prepared_statements</> to show
are unknown, infer their types from the context of the
prepared statements (Joachim Wieland)
query (Neil)
</para>
<para>
Protocol-level <command>PREPARE</> already did this. ?
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
A
llow <command>UPDATE</> and <command>DELETE</> to use an
A
dd system view <literal>pg_cursors</> to show open cursors
alias for the target table (Atsushi Ogawa
)
(Joachim Wieland
)
</para>
</para>
<para>
<para>
This allows these statements to support self-joins more
Both this and <literal>pg_prepared_statements</> are very
conveniently. <command>UPDATE</> already supported as
useful for pooled connection setups.
<literal>FROM</> clause, but <command>DELETE</> did not.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <literal>CASCADE</> option to <command>TRUNCATE</>
Support portal parameters in <command>EXPLAIN</> and
(Joachim Wieland
)
<command>EXECUTE</> (Tom
)
</para>
</para>
<para>
<para>
This allows
<command>TRUNCATE</> also to automatically
This allows
, for example, <literal>?</> parameters to work
truncate all foreign-key referencing tables
.
in these commands in <acronym>JDBC</>
.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Enable <envar>standard_conforming_strings</> to be turned
If <acronym>SQL</>-level <command>PREPARE</> parameters
<literal>on</> (Kevin Grittner)
are unknown, infer their types from the context of the
query (Neil)
</para>
</para>
<para>
<para>
This allow special backslash escaping in strings to be
Protocol-level <command>PREPARE</> already did this. ?
turned off so <productname>PostgreSQL</> is more
standards-compliant. The default is <literal>off</>, but
future releases will default this to <literal>on</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Support <literal>FOR UPDATE</> and <literal>FOR SHARE</>
Protocol-level unnamed prepared statements are re-planned
in the same command
(Tom)
for each set of <literal>BIND</> values
(Tom)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
Change <literal>LIMIT</>/<literal>OFFSET</> to exceed
This improves performance because the exact parameter values
two billion</> (Dhanaraj M)
can be used in the plan.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add support for multi-row <literal>VALUES</> clauses as
Change <literal>LIMIT</>/<literal>OFFSET</> to exceed
part of <command>INSERT</> and <command>SELECT</> statements
two billion (Dhanaraj M)
(Joe, Tom)
</para>
<para>
This allows <command>INSERT</> to insert multiple rows of
constants, or queries to generate result sets using constants.
For example, <literal>INSERT ... VALUES (...), (...),
....</>, and <literal>SELECT * FROM (VALUES (...), (...),
....) AS alias(f1, ...)</>.
</para>
</para>
</listitem>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Object Manipulation Changes</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Improve the length output used by
Add <literal>TABLESPACE</> and <literal>ON COMMIT</> clauses
<literal>UNION</>/<literal>INTERSECT</>/<literal>EXCEPT</>
to <command>CREATE TABLE AS</> (Neil)
(Tom)
</para>
</para>
<para>
<para>
When all columns are of the same defined length, that length
This allows the tablespace to be specified for the new
is used for output, rather than a generic length
.
table
.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <
command>INSERT</>/<command>UPDATE</>/<command>DELETE</>
Add <
literal>ON COMMIT</> clauses to <command>CREATE TABLE
<literal>RETURNING</> (Jonah Harris, Tom
)
AS</> (Neil
)
</para>
</para>
<para>
<para>
This allows t
hese commands to return values, such as the
This allows t
emporary tables to be truncated or dropped on
computed serial key for a new row. In the <command>UPDATE</>
transaction commit. The default behavior is for the table
case, values from the new state of the row are returned
.
to remain until the session ends
.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
A
llow <command>UPDATE</> to set multiple columns with a
A
dd <literal>INCLUDING CONSTRAINTS</> to <command>CREATE
list of values (Susanne Ebrecht
)
TABLE LIKE</> (Greg Stark
)
</para>
</para>
<para>
<para>
This is basically as short-hand for assigning the columns
This allows the new table to receive matching constraints.
and values in pairs. The syntax is <literal>UPDATE tab
SET (col, ...) = (val, ...)</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow
<literal>ILIKE</> to work for multi-byte encodings
Allow
the creation of placeholder (shell) types (Martijn van
(Tom
)
Oosterhout
)
</para>
</para>
<para>
<para>
Internally, <literal>ILIKE</> now calls <function>lower()</>
Shell types create a type reference, without specifying
and then uses <literal>LIKE</>. Locale-specific regular
any of the aspects of the type. It is useful for creating
expression operations still do not work in these encodings.
types with input/output functions that reference the data
type. The syntax is <command>CREATE TYPE typname</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Protocol-level unnamed prepared statements are re-planned
Add new aggregate creation syntax (Tom)
for each set of <literal>BIND</> values (Tom)
</para>
</para>
<para>
<para>
This improves performance because the exact parameter values
The new syntax is <command>CREATE AGGREGATE</> aggname
can be used in the plan.
(input_type) (parameter_list). This more naturally supports
the new multi-parameter aggregate functionality. The
previous syntax is still supported.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Do not flatten subqueries that contain <literal>VOLATILE</>
Aggregate functions now support multiple input parameters
functions in their target lists (Jaime Casanova
)
(Sergey Koposov, Tom
)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
This prevents surprising behavior due to multiple evaluation
Add <command>CREATE</>/<command>ALTER ROLE PASSWORD NULL</>,
of a <literal>volatile</> function (such as <function>random()</>
which removes the role's password (Peter)
or <function>nextval()</>). It may cause performance
degradation in the presence of functions that are unnecessarily
marked as <literal>volatile</>.
</para>
</para>
</listitem>
</listitem>
</sect3>
<sect3>
<title>Object Manipulation Changes</title>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Add <command>DROP</> object <literal>IF EXISTS</> for many
Add <command>DROP</> object <literal>IF EXISTS</> for many
...
@@ -936,26 +992,6 @@ For new features, add links to the documentation sections.
...
@@ -936,26 +992,6 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Add <command>CREATE</>/<command>ALTER ROLE PASSWORD NULL</>,
which removes the role's password (Peter)
</para>
</listitem>
<listitem>
<para>
Properly enforce <literal>DOMAIN</> check constraints
everywhere (Neil, Tom)
</para>
<para>
For example, the result of a user-defined function that is
declared to return a domain type is now checked against
the constraints.
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <command>GRANT ON SEQUENCE</> syntax (Bruce)
Add <command>GRANT ON SEQUENCE</> syntax (Bruce)
...
@@ -985,101 +1021,33 @@ For new features, add links to the documentation sections.
...
@@ -985,101 +1021,33 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Allow comments on global objects to be stored globally
Add <literal>ALTER TABLE ... [NO] INHERIT</> (Greg Stark)
(Kris Jurka)
</para>
<para>
Previously, global object comments were stored in individual
databases, making them ineffective. This adds a new
<literal>pg_shdescription</> table.
</para>
</listitem>
<listitem>
<para>
Add <literal>ON COMMIT</> clauses to <command>CREATE TABLE
AS</> (Neil)
</para>
<para>
This allows temporary tables to be truncated or dropped on
transaction commit. The default behavior is for the table
to remain until the session ends.
</para>
</listitem>
<listitem>
<para>
Add <literal>TABLESPACE</> and <literal>ON COMMIT</> clauses
to <command>CREATE TABLE AS</> (Neil)
</para>
<para>
This allows the tablespace to be specified for the new
table.
</para>
</listitem>
<listitem>
<para>
Allow placeholder (shell) types to be created (Martijn van
Oosterhout)
</para>
<para>
Shell types create a type reference, without specifying
any of the aspects of the type. It is useful for creating
types with input/output functions that reference the data
type. The syntax is <command>CREATE TYPE typname</>.
</para>
</listitem>
<listitem>
<para>
Add new aggregate creation syntax (Tom)
</para>
<para>
The new syntax is <command>CREATE AGGREGATE</> aggname
(input_type) (parameter_list). This more naturally supports
the new multi-parameter aggregate functionality. The
previous syntax is still supported.
</para>
</listitem>
<listitem>
<para>
Aggregate functions now support multiple input parameters
(Sergey Koposov, Tom)
</para>
</listitem>
<listitem>
<para>
Add <literal>INCLUDING CONSTRAINTS</> to <command>CREATE
TABLE LIKE</> (Greg Stark)
</para>
</para>
<para>
<para>
This allows the new table to receive matching constraints.
This allow inheritance to be added and removed dynamically,
rather than just at table creation and destruction. This
is very valuable for table partitioning using constraint
exclusion.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <literal>ALTER TABLE ... [NO] INHERIT</> (Greg Stark)
Allow comments on global objects to be stored globally
(Kris Jurka)
</para>
</para>
<para>
<para>
This allow inheritance to be added and removed dynamically,
Previously, global object comments were stored in individual
rather than just at table creation and destruction. This
databases, making them ineffective. This adds a new
is very valuable for table partitioning using constraint
<literal>pg_shdescription</> table.
exclusion.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>Utility Command Changes</title>
<title>Utility Command Changes</title>
...
@@ -1087,20 +1055,26 @@ For new features, add links to the documentation sections.
...
@@ -1087,20 +1055,26 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Reduce progress messages displayed by initdb (Tom)
Add option to allow indexes to be created without blocking
concurrent writes to the table (Greg Stark)
</para>
<para>
The new syntax is <command>CREATE INDEX CONCURRENTLY</>.
The default behavior is still to block table modification
while a index is being created.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Have initdb detect the operating system locale and set the
Allow <command>COPY</> to dump a <command>SELECT</> query
default <envar>DateStyle</> accordingly (Peter
)
(Zoltan Boszormenyi, Karel Zak
)
</para>
</para>
<para>
<para>
This make it more likely that the installed
This allows <command>COPY</> to dump arbitrary <acronym>SQL</>
<filename>postgresql.conf</> <envar>DateStyle</> value will
queries. The syntax is <literal>COPY (SELECT ...) TO</>.
be correct.
</para>
</para>
</listitem>
</listitem>
...
@@ -1121,79 +1095,82 @@ For new features, add links to the documentation sections.
...
@@ -1121,79 +1095,82 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Avoid extra scan of tables without indexes during <command>VACUUM</>
Have initdb detect the operating system locale and set the
(Greg Stark)
default <envar>DateStyle</> accordingly (Peter)
</para>
</listitem>
<listitem>
<para>
Add option to allow indexes to be created without blocking
concurrent writes to the table (Greg Stark)
</para>
</para>
<para>
<para>
Th
e new syntax is <command>CREATE INDEX CONCURRENTLY</>.
Th
is make it more likely that the installed
The default behavior is still to block table modification
<filename>postgresql.conf</> <envar>DateStyle</> value will
while a index is being created
.
be correct
.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
A
llow <command>COPY</> to dump a <command>SELECT</> query
A
void extra scan of tables without indexes during <command>VACUUM</>
(
Zoltan Boszormenyi, Karel Za
k)
(
Greg Star
k)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
This allows <command>COPY</> to dump arbitrary <acronym>SQL</>
Reduce progress messages displayed by initdb (Tom)
queries. The syntax is <literal>COPY (SELECT ...) TO</>.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>Dat
a Type and Function
Changes</title>
<title>Dat
e/Time
Changes</title>
<itemizedlist>
<itemizedlist>
<listitem>
<listitem>
<para>
<para>
Allow arrays to contain <literal>NULL</> elements (Tom)
Allow full timezone names in <type>timestamp</> values
(Joachim Wieland)
</para>
<para>
For example, <literal>'2006-05-24 21:11
America/New_York'::timestamptz</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow <function>to_char(time)</> and <function>to_char(interval)</>
Create a configuration file of timezone abbreviations
to output <acronym>AM</>/<acronym>PM</> specifications
(Joachim Wieland)
(Bruce)
</para>
</para>
<para>
<para>
Intervals and times are treated as 24-hour periods, e.g.
The file name is controlled by GUC variable
<
literal>25 hours</> is <acronym>AM
</>.
<
envar>timezone_abbreviations
</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add
a server-side sleep function <function>pg_sleep()
</>
Add
<envar>pg_timezone_abbrevs</> and <envar>pg_timezone_names
</>
(Joachim Wieland
)
views to show supported timezones (Magnus Hagander
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add convenient arithmetic operations on <type>INET</>/<type>CIDR</>
Add <function>clock_timestamp()</>,
values (Stephen R. van den Berg)
<function>statement_timestamp()</>, and
<function>transaction_timestamp()</> (Bruce)
</para>
</para>
<para>
<para>
The new operators are <literal>&</> (and), <literal>|</>
<function>clock_timestamp()</> is the true current time,
(or), <literal>~</> (not), <literal>+</> <type>int8</>,
and <function>statement_timestamp()</> is the time the
<literal>-</> <type>int8</>, and <type>inet</> <literal>-</>
current command arrived at the server.
<type>inet</>.
<function>transaction_timestamp()</> is the same as
<function>now()</>.
</para>
</para>
</listitem>
</listitem>
...
@@ -1206,8 +1183,14 @@ For new features, add links to the documentation sections.
...
@@ -1206,8 +1183,14 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add all comparison operators for the <type>tid</> data type
Allow <function>to_char(time)</> and <function>to_char(interval)</>
(Mark Kirkwood, Greg Stark, Tom)
to output <acronym>AM</>/<acronym>PM</> specifications
(Bruce)
</para>
<para>
Intervals and times are treated as 24-hour periods, e.g.
<literal>25 hours</> is <acronym>AM</>.
</para>
</para>
</listitem>
</listitem>
...
@@ -1220,17 +1203,22 @@ For new features, add links to the documentation sections.
...
@@ -1220,17 +1203,22 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add new aggregate functions from SQL2003 (Neil)
Interval computation improvements (Michael Glaesemann,
Bruce)
</para>
</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<title>Other Data Type and Function Changes</title>
<itemizedlist>
<listitem>
<para>
<para>
The new functions are <function>var_pop()</>,
Allow arrays to contain <literal>NULL</> elements (Tom)
<function>var_samp()</>, <function>stddev_pop()</>, and
<function>stddev_samp()</>. <function>var_samp()</> and
<function>stddev_samp()</> are merely renamings of the
existing aggregates <function>variance()</> and
<function>stddev()</>. The latter names have been kept
for backward compatibility.
</para>
</para>
</listitem>
</listitem>
...
@@ -1247,70 +1235,66 @@ For new features, add links to the documentation sections.
...
@@ -1247,70 +1235,66 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Allow domains to be created using other domains (Tom)
Add convenient arithmetic operations on <type>INET</>/<type>CIDR</>
</para>
values (Stephen R. van den Berg)
</listitem>
<listitem>
<para>
Add <function>clock_timestamp()</>,
<function>statement_timestamp()</>, and
<function>transaction_timestamp()</> (Bruce)
</para>
</para>
<para>
<para>
<function>clock_timestamp()</> is the true current time,
The new operators are <literal>&</> (and), <literal>|</>
and <function>statement_timestamp()</> is the time the
(or), <literal>~</> (not), <literal>+</> <type>int8</>,
current command arrived at the server.
<literal>-</> <type>int8</>, and <type>inet</> <literal>-</>
<function>transaction_timestamp()</> is the same as
<type>inet</>.
<function>now()</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow full timezone names in <type>timestamp</> values
Add new aggregate functions from SQL2003 (Neil)
(Joachim Wieland)
</para>
</para>
<para>
<para>
For example, <literal>'2006-05-24 21:11
The new functions are <function>var_pop()</>,
America/New_York'::timestamptz</>.
<function>var_samp()</>, <function>stddev_pop()</>, and
<function>stddev_samp()</>. <function>var_samp()</> and
<function>stddev_samp()</> are merely renamings of the
existing aggregates <function>variance()</> and
<function>stddev()</>. The latter names have been kept
for backward compatibility.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Create a configuration file of timezone abbreviations
Add SQL2003-standard statistical aggregates (Sergey Koposov)
(Joachim Wieland)
</para>
</para>
<para>
<para>
The file name is controlled by GUC variable
New functions: <function>regr_intercept()</>,
<envar>timezone_abbreviations</>.
<function>regr_slope()</>, <function>regr_r2()</>,
<function>corr()</>, <function>covar_samp()</>,
<function>covar_pop()</>, <function>regr_avgx()</>,
<function>regr_avgy()</>, <function>regr_sxy()</>,
<function>regr_sxx()</>, <function>regr_syy()</>,
<function>regr_count()</>
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <envar>pg_timezone_abbrevs</> and <envar>pg_timezone_names</>
Allow domains to be created using other domains (Tom)
views to show supported timezones (Magnus Hagander)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add SQL2003-standard statistical aggregates (Sergey Koposov)
Properly enforce <literal>DOMAIN</> check constraints
everywhere (Neil, Tom)
</para>
</para>
<para>
<para>
New functions: <function>regr_intercept()</>,
For example, the result of a user-defined function that is
<function>regr_slope()</>, <function>regr_r2()</>,
declared to return a domain type is now checked against
<function>corr()</>, <function>covar_samp()</>,
the constraints.
<function>covar_pop()</>, <function>regr_avgx()</>,
<function>regr_avgy()</>, <function>regr_sxy()</>,
<function>regr_sxx()</>, <function>regr_syy()</>,
<function>regr_count()</>
</para>
</para>
</listitem>
</listitem>
...
@@ -1332,12 +1316,36 @@ For new features, add links to the documentation sections.
...
@@ -1332,12 +1316,36 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Interval computation improvements (Michael Glaesemann,
Add a server-side sleep function <function>pg_sleep()</>
Bruce)
(Joachim Wieland)
</para>
</listitem>
<listitem>
<para>
Add all comparison operators for the <type>tid</> (tuple id)
data type (Mark Kirkwood, Greg Stark, Tom)
</para>
</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>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>PL/PgSQL Server-Side Language Changes</title>
<title>PL/PgSQL Server-Side Language Changes</title>
...
@@ -1345,22 +1353,22 @@ For new features, add links to the documentation sections.
...
@@ -1345,22 +1353,22 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
A
llow <literal>FOR</> statements to return values to scalar
s
A
dd <literal>table_name</> and <literal>table_schema</> a
s
as well as records and row types (Pavel Stehule
)
trigger data (Andrew
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
A
dd a <literal>BY</> clause to the <literal>FOR</> loop,
A
llow <literal>FOR</> statements to return values to scalars
to control the iteration increment (Jaime Casanova
)
as well as records and row types (Pavel Stehule
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add
<literal>table_name</> and <literal>table_schema</> as
Add
a <literal>BY</> clause to the <literal>FOR</> loop,
t
rigger data (Andrew
)
t
o control the iteration increment (Jaime Casanova
)
</para>
</para>
</listitem>
</listitem>
...
@@ -1377,7 +1385,9 @@ For new features, add links to the documentation sections.
...
@@ -1377,7 +1385,9 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>PL/Perl Server-Side Language Changes</title>
<title>PL/Perl Server-Side Language Changes</title>
...
@@ -1385,24 +1395,18 @@ For new features, add links to the documentation sections.
...
@@ -1385,24 +1395,18 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Honor <envar>check_function_bodies</> (Tom)
Add <literal>table_name</> and <literal>table_schema</> as
trigger data (Adam Sjøgren)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
Add prepared queries (Dmitry Karasik)
<literal>relname</> is kept but now deprecated
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <literal>table_name</> and <literal>table_schema</> as
Add prepared queries (Dmitry Karasik)
trigger data (Adam Sjøgren)
</para>
<para>
<literal>relname</> is kept but now deprecated
</para>
</para>
</listitem>
</listitem>
...
@@ -1417,7 +1421,15 @@ For new features, add links to the documentation sections.
...
@@ -1417,7 +1421,15 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</sect3>
<listitem>
<para>
Honor <envar>check_function_bodies</> (Tom)
</para>
</listitem>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>PL/Python Server-Side Language Changes</title>
<title>PL/Python Server-Side Language Changes</title>
...
@@ -1425,45 +1437,47 @@ For new features, add links to the documentation sections.
...
@@ -1425,45 +1437,47 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Allow functions to return <literal>void</> (Neil)
Add <literal>table_name</> and <literal>table_schema</> as
trigger data (Andrew)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
A
dd named parameters to the <literal>args[]</> array (Sven
A
llow returning of <literal>composite types</> and
Suursoho)
<literal>result sets</> (Sven
Suursoho)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Return composite-types as dictionary (Sven Suursoho)
Return result-set as <literal>list</>, <literal>iterator</>,
or <literal>generator </>(Sven Suursoho)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Return result-set as <literal>list</>, <literal>iterator</>,
Return composite-types as dictionary (Sven Suursoho)
or <literal>generator </>(Sven Suursoho)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow returning of <literal>composite types</> and
Allow functions to return <literal>void</> (Neil)
<literal>result sets</> (Sven Suursoho)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add
<literal>table_name</> and <literal>table_schema</> as
Add
named parameters to the <literal>args[]</> array (Sven
trigger data (Andrew
)
Suursoho
)
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title><application>psql</> Changes</title>
<title><application>psql</> Changes</title>
...
@@ -1478,26 +1492,28 @@ For new features, add links to the documentation sections.
...
@@ -1478,26 +1492,28 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Allow
multi-line values to align in the proper column
Allow
<literal>\c</> to connect to a new host and port
(Martijn van Oosterhout
)
number (David, Volkan Yazıcı
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Save multi-line statements as a single entry, rather than
Add tablespace display to <literal>\l+</> (Philip Yarra)
one line at a time (Sergey E. Koposov)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
This makes up-arrow recall of queries easier.
Improve <literal>\df</> slash command to include the argument
names and modes (<literal>OUT</> or <literal>INOUT</>) of
the function (David Fetter)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow <literal>\c</> to connect to a new host and port
Support binary <command>COPY</> (Andreas Pflug)
number (David, Volkan Yazıcı)
</para>
</para>
</listitem>
</listitem>
...
@@ -1514,28 +1530,37 @@ For new features, add links to the documentation sections.
...
@@ -1514,28 +1530,37 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Improve highlighting of error location in query in more
Support retrieving <command>SELECT</> results in batches
cases (Tom)
using a cursor (Chris Mair)
</para>
<para>
This is accomplished using <command>\set FETCH_COUNT</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add tablespace display to <literal>\l+</> (Philip Yarra)
Allow multi-line values to align in the proper column
(Martijn van Oosterhout)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Support binary <command>COPY</> (Andreas Pflug)
Save multi-line statements as a single entry, rather than
one line at a time (Sergey E. Koposov)
</para>
<para>
This makes up-arrow recall of queries easier.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Improve <literal>\df</> slash command to include the argument
Improve highlighting of error location in query in more
names and modes (<literal>OUT</> or <literal>INOUT</>) of
cases (Tom)
the function (David Fetter)
</para>
</para>
</listitem>
</listitem>
...
@@ -1554,18 +1579,9 @@ For new features, add links to the documentation sections.
...
@@ -1554,18 +1579,9 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
</itemizedlist>
<para>
Support retrieving <command>SELECT</> results in batches
using a cursor (Chris Mair)
</para>
<para>
This is accomplished using <command>\set FETCH_COUNT</>.
</para>
</listitem>
</sect3>
</sect3>
<sect3>
<sect3>
<title><application>pg_dump</> Changes</title>
<title><application>pg_dump</> Changes</title>
...
@@ -1606,7 +1622,9 @@ For new features, add links to the documentation sections.
...
@@ -1606,7 +1622,9 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title><application>libpq</> Changes</title>
<title><application>libpq</> Changes</title>
...
@@ -1624,14 +1642,6 @@ For new features, add links to the documentation sections.
...
@@ -1624,14 +1642,6 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Allow the <filename>.pgpass</> hostname to match the default
socket directory, as well as a blank <literal>pghost</>
(Bruce)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add function <function>PQisthreadsafe()</> (Bruce)
Add function <function>PQisthreadsafe()</> (Bruce)
...
@@ -1643,6 +1653,15 @@ For new features, add links to the documentation sections.
...
@@ -1643,6 +1653,15 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Add <function>PQdescribePrepared()</>,
<function>PQdescribePortal()</>, and related functions
return information about previously prepared statements
and open cursors (Volkan Yazıcı)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow <acronym>LDAP</> lookups from <filename>pg_service.conf</>
Allow <acronym>LDAP</> lookups from <filename>pg_service.conf</>
...
@@ -1652,14 +1671,15 @@ For new features, add links to the documentation sections.
...
@@ -1652,14 +1671,15 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add <function>PQdescribePrepared()</>,
Allow the <filename>.pgpass</> hostname to match the default
<function>PQdescribePortal()</>, and related functions
socket directory, as well as a blank <literal>pghost</>
return information about previously prepared statements
(Bruce)
and open cursors (Volkan Yazıcı)
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title><application>ecpg</> Changes</title>
<title><application>ecpg</> Changes</title>
...
@@ -1690,7 +1710,9 @@ For new features, add links to the documentation sections.
...
@@ -1690,7 +1710,9 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title><application>Win32</> Port</title>
<title><application>Win32</> Port</title>
...
@@ -1698,19 +1720,15 @@ For new features, add links to the documentation sections.
...
@@ -1698,19 +1720,15 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Improve handling of intermittent file system and resource
Allow <acronym>MSVC</> to compile the <productname>PostgreSQL</>
failures (Qingqing Zhou
)
server (Magnus, Hiroshi Saito
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Stability fixes (Magnus)
Add <acronym>MSVC</> support for utility commands and
</para>
<application>pg_dump </>(Hiroshi Saito)
<para>
Particularly, prevent the postmaster from stopping if too
many connection requests arrive too rapidly.
</para>
</para>
</listitem>
</listitem>
...
@@ -1724,15 +1742,19 @@ For new features, add links to the documentation sections.
...
@@ -1724,15 +1742,19 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Allow <acronym>MSVC</> to compile the <productname>PostgreSQL</>
Improve handling of intermittent file system and resource
server (Magnus, Hiroshi Saito
)
failures (Qingqing Zhou
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <acronym>MSVC</> support for utility commands and
Stability fixes (Magnus)
<application>pg_dump </>(Hiroshi Saito)
</para>
<para>
Particularly, prevent the postmaster from stopping if too
many connection requests arrive too rapidly.
</para>
</para>
</listitem>
</listitem>
...
@@ -1746,12 +1768,21 @@ For new features, add links to the documentation sections.
...
@@ -1746,12 +1768,21 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>Source Code Changes</title>
<title>Source Code Changes</title>
<itemizedlist>
<itemizedlist>
<listitem>
<para>
Add <acronym>GIN</> (Generalized Inverted iNdex) index
access method (Teodor) ?
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Remove R-tree indexing (Tom)
Remove R-tree indexing (Tom)
...
@@ -1769,14 +1800,6 @@ For new features, add links to the documentation sections.
...
@@ -1769,14 +1800,6 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
New macro <literal>PG_VERSION_NUM</> for use by third-party
applications wanting to test the backend version in C using
> and < comparisons (Bruce)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add a configure flag to allow libedit to be preferred over
Add a configure flag to allow libedit to be preferred over
...
@@ -1810,6 +1833,20 @@ For new features, add links to the documentation sections.
...
@@ -1810,6 +1833,20 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Add <application>DTrace</> support (Robert Lor)
</para>
</listitem>
<listitem>
<para>
Add <literal>PG_VERSION_NUM</> for use by third-party
applications wanting to test the backend version in C using >
and < comparisons (Bruce)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <literal>XLOG_BLCKSZ</> as independent from <literal>BLCKSZ</>
Add <literal>XLOG_BLCKSZ</> as independent from <literal>BLCKSZ</>
...
@@ -1826,27 +1863,29 @@ For new features, add links to the documentation sections.
...
@@ -1826,27 +1863,29 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add <acronym>GIN</> (Generalized Inverted iNdex) index
Emit warnings for unknown <application>configure</> options
access method (Teodor
)
(Martijn van Oosterhout
)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Emit warnings for unknown <application>configure</> options
Rename existing <acronym>GUC</> variable
(Martijn van Oosterhout)
<envar>preload_libraries</> to <envar>shared_preload_libraries</>
(Tom)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add
<literal>PG_MODULE_MAGIC</> header block to all shared
Add
new GUC variable <envar>server_version_num</> (Greg Sabino
object files (Martijn van Oosterhout
)
Mullane
)
</para>
</para>
<para>
<para>
The magic blocks prevent version mismatches between object
This is like server_version, but is an integer, e.g.
files and servers.
<literal>80200</>. It allows easy applications version
checks.
</para>
</para>
</listitem>
</listitem>
...
@@ -1864,12 +1903,6 @@ For new features, add links to the documentation sections.
...
@@ -1864,12 +1903,6 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
<listitem>
<para>
Add <application>DTrace</> support (Robert Lor)
</para>
</listitem>
<listitem>
<listitem>
<para>
<para>
Allow loadable modules to allocate shared memory and
Allow loadable modules to allocate shared memory and
...
@@ -1894,34 +1927,25 @@ For new features, add links to the documentation sections.
...
@@ -1894,34 +1927,25 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add support for libraries that enhance server-side languages
Add <literal>PG_MODULE_MAGIC</> header block to all shared
(Korry Douglas)
object files (Martijn van Oosterhout)
</para>
<para>
Such libraries can be used for debugging or performance
measurement.
</para>
</para>
</listitem>
<listitem>
<para>
<para>
Rename existing <acronym>GUC</> variable
The magic blocks prevent version mismatches between object
<envar>preload_libraries</> to <envar>shared_preload_libraries</>
files and servers.
(Tom)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add
new variable <envar>server_version_num</> (Greg Sabino
Add
support for libraries that enhance server-side languages
Mullane
)
(Korry Douglas
)
</para>
</para>
<para>
<para>
This is like server_version, but is an integer, e.g.
Such libraries can be used for debugging or performance
<literal>80200</>. It allows easy applications version
measurement.
checks.
</para>
</para>
</listitem>
</listitem>
...
@@ -1931,7 +1955,9 @@ For new features, add links to the documentation sections.
...
@@ -1931,7 +1955,9 @@ For new features, add links to the documentation sections.
</para>
</para>
</listitem>
</listitem>
</sect3>
</itemizedlist>
</sect3>
<sect3>
<sect3>
<title>Contrib Changes</title>
<title>Contrib Changes</title>
...
@@ -1982,109 +2008,110 @@ For new features, add links to the documentation sections.
...
@@ -1982,109 +2008,110 @@ For new features, add links to the documentation sections.
<listitem>
<listitem>
<para>
<para>
Add
pg_freespacemap to display free space map information
Add
<application>Pgadmin</> administration functions to
(Mark Kirkwood
)
adminpack (Dave
)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
New uninstall scripts (David)
These functions provide additional file system access
routines not present in the default <productname>PostgreSQL</>
server.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add
pgrowlocks (Tatsuo
)
Add
sslinfo (Victor Wagner
)
</para>
</para>
<para>
<para>
This shows row locking information for a specified table.
Reports information about the current <acronym>SSL</>
certificate.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add <application>Pgadmin</> administration functions to
Add pgrowlocks (Tatsuo)
adminpack (Dave)
</para>
</para>
<para>
<para>
These functions provide additional file system access
This shows row locking information for a specified table.
routines not present in the default <productname>PostgreSQL</>
server.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add index information to pgstattuple (ITAGAKI Takahiro,
Add hstore module (Oleg, Teodor)
Satoshi Nagayasu)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
pgcrypto now has all planned functionality (Marko Kreen)
Add isn module, replacing isbn_issn (Jeremy Kronuz)
</para>
<para>
This now supports <acronym>EAN13</>, <acronym>UPC</>,
<acronym>ISBN</> (books), <acronym>ISMN</> (music), and
<acronym>ISSN</> (serials).
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Update cube (Joshua Reich)
Add index information to pgstattuple (ITAGAKI Takahiro,
Satoshi Nagayasu)
</para>
</para>
</listitem>
<listitem>
<para>
<para>
New functions are <function>cube(float[])</>,
Add pg_freespacemap to display free space map information
<function>cube(float[], float[])</>, and
(Mark Kirkwood)
<function>cube_subset(cube, int4[])</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Added async query capability to dblink (Kai Londenberg,
pgcrypto now has all planned functionality (Marko Kreen)
Joe Conway)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add sslinfo (Victor Wagner
)
Update cube (Joshua Reich
)
</para>
</para>
<para>
<para>
Reports information about the current <acronym>SSL</>
New functions are <function>cube(float[])</>,
certificate.
<function>cube(float[], float[])</>, and
<function>cube_subset(cube, int4[])</>.
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add hstore module (Oleg, Teodor)
Add async query capability to dblink (Kai Londenberg,
Joe Conway)
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
Add isn module, replacing isbn_issn (Jeremy Kronuz)
New operators for array-subset comparisons (<literal>@></>,
</para>
<literal><@</>, <literal>&&</>) (Tom)
<para>
This now supports <acronym>EAN13</>, <acronym>UPC</>,
<acronym>ISBN</> (books), <acronym>ISMN</> (music), and
<acronym>ISSN</> (serials).
</para>
</para>
</listitem>
</listitem>
<listitem>
<listitem>
<para>
<para>
New operators for array-subset comparisons (<literal>@></>,
New uninstall scripts (David)
<literal><@</>, <literal>&&</>) (Tom)
</para>
</para>
</listitem>
</listitem>
</itemizedlist>
</itemizedlist>
</sect3>
</sect3>
</sect2>
</sect2>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment