1
0
mirror of https://github.com/postgres/postgres.git synced 2025-05-05 09:19:17 +03:00

Clarifications for 9.0 release notes

Josh Berkus
This commit is contained in:
Bruce Momjian 2010-08-24 14:46:29 +00:00
parent c107c35df3
commit f5878cd38f

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/release-9.0.sgml,v 2.50 2010/08/23 02:43:25 tgl Exp $ -->
<!-- $PostgreSQL: pgsql/doc/src/sgml/release-9.0.sgml,v 2.51 2010/08/24 14:46:29 momjian Exp $ -->
<sect1 id="release-9-0">
<title>Release 9.0</title>
@ -43,12 +43,21 @@
<listitem>
<para>
Easier database object permissions management. <link
linkend="SQL-GRANT"><command>GRANT</>/<command>REVOKE IN
SCHEMA</></link> supports mass permissions changes on existing objects,
while <link linkend="SQL-ALTERDEFAULTPRIVILEGES"><command>ALTER DEFAULT
PRIVILEGES</></link> allows control of privileges for objects created in
the future. Large objects (BLOBs) now support privilege management as
well.
linkend="SQL-GRANT"><command>GRANT</>/<command>REVOKE
IN SCHEMA</></link> supports mass permissions changes, and
the <link linkend="SQL-ALTERDEFAULTPRIVILEGES"><command>ALTER
DEFAULT PRIVILEGES</></link> command controls privileges
of all newly-created objects. Large object permissions now
support <command>GRANT</>/<command>REVOKE</> as well.
</para>
</listitem>
<listitem>
<para>
Add support for compiling on <link
linkend="install-win32-full">64-bit
<productname>Windows</></link> and running in 64-bit
mode.
</para>
</listitem>
@ -56,34 +65,28 @@
<para>
Broadly enhanced stored procedure support.
The <link linkend="SQL-DO"><command>DO</></link> statement permits
execution of <quote>anonymous</> code blocks, without having to
define a function first. Functions can now be called using named
parameters. PL/pgSQL is now installed by default, and PL/Perl and
PL/Python have been enhanced in several ways, including support for
Python3.
ad-hoc or anonymous code blocks. Functions can now be called using named
parameters. <link linkend="plpgsql">PL/pgSQL</link> is now installed by default,
and <link linkend="plperl">PL/Perl</link> and <link linkend="plpython">PL/Python</link>
have been enhanced in several ways, including support for Python3.
</para>
</listitem>
<listitem>
<para>
Full support for <link linkend="install-win32">64-bit
<productname>Windows</></link>.
More advanced reporting queries with additional <link
linkend="functions-window">window functions</link>
(<literal>PRECEDING</> and <literal>FOLLOWING</>) and the ability
to <link linkend="syntax-aggregates"><literal>ORDER BY</></link>
inside aggregate functions.
</para>
</listitem>
<listitem>
<para>
More advanced reporting queries, including additional windowing options
(<literal>PRECEDING</> and <literal>FOLLOWING</>) and the ability to
control the order in which values are fed to aggregate functions.
</para>
</listitem>
<listitem>
<para>
New trigger features, including
SQL-standard-compliant <link
linkend="SQL-CREATETRIGGER">per-column triggers</link> and
Triggers now support two new features,
SQL-compliant <link
linkend="SQL-CREATETRIGGER">per-column triggers</link>, and
conditional trigger execution.
</para>
</listitem>
@ -98,46 +101,26 @@
<listitem>
<para>
<link linkend="ddl-constraints-exclusion">Exclusion constraints</link>.
These provide a generalized version of unique constraints, allowing
enforcement of complex conditions.
</para>
</listitem>
<listitem>
<para>
New and enhanced security features, including RADIUS authentication,
LDAP authentication improvements, and a new contrib module
<link linkend="passwordcheck"><filename>passwordcheck</></link>
New and enhanced security features, including <link linkend="client-authentication">RADIUS authentication</link>,
LDAP authentication improvements, and the new <link linkend="passwordcheck">passwordcheck</link> optional module
for testing password strength.
</para>
</listitem>
<listitem>
<para>
New high-performance implementation of the
<link linkend="SQL-LISTEN"><command>LISTEN</></link>/<link
linkend="SQL-NOTIFY"><command>NOTIFY</></link> feature.
Pending events are now stored in a memory-based queue rather than
a table. Also, a <quote>payload</> string can be sent with each
event, rather than transmitting just an event name as before.
The <link linkend="SQL-LISTEN"><command>LISTEN</></link>/<link
linkend="SQL-NOTIFY"><command>NOTIFY</></link>
feature has been overhauled to make it into
a high-performance event queuing system. It now stores
events in a memory-based queue, and it now allows delivery
of a string payload to listeners with each event.
</para>
</listitem>
<listitem>
<para>
New implementation of
<link linkend="SQL-VACUUM"><command>VACUUM FULL</></link>.
This command now rewrites the entire table and indexes, rather than
moving individual rows to compact space. It is substantially faster
in most cases, and no longer results in index bloat.
</para>
</listitem>
<listitem>
<para>
New contrib module
<link linkend="pgupgrade"><filename>pg_upgrade</></link>
Add <link linkend="pgupgrade"><filename>/contrib/pg_upgrade</></link>
to support in-place upgrades from 8.3 or 8.4 to 9.0.
</para>
</listitem>
@ -145,24 +128,41 @@
<listitem>
<para>
Multiple performance enhancements for specific types of queries,
including elimination of unnecessary joins. This helps optimize some
automatically-generated queries, such as those produced by
object-relational mappers (ORMs).
including join elimination, which optimizes automatically generated
queries, such as those produced by object-relational mappers (ORMs).
</para>
</listitem>
<listitem>
<para>
<link linkend="SQL-EXPLAIN "><command>EXPLAIN</></link> enhancements.
The output is now available in JSON, XML, or YAML format, and includes
<link linkend="ddl-constraints-exclusion">Exclusion constraints</link>
let database designers define uniqueness based on complex
criteria, including for non-scalar data such as time periods,
ranges and arrays.
</para>
</listitem>
<listitem>
<para>
As part of our decade-long effort to eliminate the pain of VACUUM,
<link linkend="vacuum-for-space-recovery"><command>VACUUM FULL</></link>
is now substantially faster by rewriting the entire table and
indexes, rather than moving around single rows to compact space.
</para>
</listitem>
<listitem>
<para>
<link linkend="using-explain"><command>EXPLAIN</command></link>
plans are now available in JSON, XML and YAML format, and include
buffer utilization and other data not previously available.
</para>
</listitem>
<listitem>
<para>
<link linkend="hstore"><filename>hstore</></link> improvements,
including new functions and greater data capacity.
The <link linkend="hstore">HStore optional module</link> has been improved with new functions and greater
data capacity to make it a high-performance key-value store.
</para>
</listitem>
@ -1653,7 +1653,8 @@
<listitem>
<para>
Allow aggregate functions to use <literal>ORDER BY</> (Andrew
Allow aggregate functions to use <link
linkend="syntax-aggregates"><literal>ORDER BY</></> (Andrew
Gierth)
</para>