diff options
author | Robert Haas <rhaas@postgresql.org> | 2011-03-24 16:57:12 -0400 |
---|---|---|
committer | Robert Haas <rhaas@postgresql.org> | 2011-03-24 16:58:01 -0400 |
commit | 7b630e7b8e4faec13af2ce934b8bb33d9a1c8e06 (patch) | |
tree | e5e7fe1d82dc9a62cf29622e7b832591ee3eabf5 | |
parent | 3bba9ce945a702ab116fcedb9c0b970ecd69c9dd (diff) | |
download | postgresql-7b630e7b8e4faec13af2ce934b8bb33d9a1c8e06.tar.gz postgresql-7b630e7b8e4faec13af2ce934b8bb33d9a1c8e06.zip |
Edits to 9.1 release notes.
Add some new items and some additional details to existing items, mostly
by cribbing from the 9.1alpha notes. Some additional clarifications and
corrections elsewhere, and a few typo fixes.
-rw-r--r-- | doc/src/sgml/release-9.1.sgml | 297 |
1 files changed, 231 insertions, 66 deletions
diff --git a/doc/src/sgml/release-9.1.sgml b/doc/src/sgml/release-9.1.sgml index 10f1e6ae691..1a1bac1e10d 100644 --- a/doc/src/sgml/release-9.1.sgml +++ b/doc/src/sgml/release-9.1.sgml @@ -73,7 +73,7 @@ <listitem> <para> - Disallow functional or attribute string data type casts for + Disallow function-style and attribute-style data type casts for composite types (Tom Lane) </para> @@ -293,14 +293,17 @@ <listitem> <para> - Support <literal>RIGHT</> and <literal>FULL OUTER JOIN</> in - hash joins (Tom Lane) + Allow <literal>FULL OUTER JOIN</literal> to be implemented as a + hash join, and allow either side of a <literal>LEFT OUTER JOIN</> + or <literal>RIGHT OUTER JOIN</> to be hashed (Tom Lane) </para> <para> - Previously hash joins could not be considered for outer joins; - this provides additional query optimization possibilities. - **What about <literal>LEFT</> joins? + Previously <literal>FULL OUTER JOIN</literal> could only be + implemented as a merge join, and <literal>LEFT OUTER JOIN</literal> + and <literal>RIGHT OUTER JOIN</literal> could has only the nullable + side of the join. These changes provide additional query optimization + possibilities. </para> </listitem> @@ -323,6 +326,13 @@ </para> </listitem> + <listitem> + <para> + Reduce the memory requirement for large ispell dictionaries + (Pavel Stehule, Tom Lane) + </para> + </listitem> + </itemizedlist> </sect4> @@ -585,14 +595,18 @@ <listitem> <para> - Add a <link - linkend="guc-synchronous-replication"><varname>synchronous_replication</></link> - option (Simon Riggs, Fujii Masao) + Allow synchronous replication (Simon Riggs, Fujii Masao) </para> <para> - This allows the primary to wait for the standby to receive - transaction information before acknowledging the commit. + One standby at a time can take the role of the synchronous standby, + as controlled by the + <link linkend="guc-synchronous-standby-names"><varname>synchronous_standby_names</varname></link> + setting. Synchronous replication can be enabled or disabled on a + per-transaction basis using the + <link linkend="guc-synchronous-replication"><varname>synchronous_replication</></link> + setting. This allows the primary to wait for a standby to write the + transaction information to disk before acknowledging the commit. </para> </listitem> @@ -600,8 +614,8 @@ <para> Add variable <link linkend="guc-hot-standby-feedback"><varname>hot_standby_feedback</></link> - to enable standbys to communicate their needed snapshots to - the primary (Simon Riggs) + to enable standbys to postpone cleanup of old row versions on the + primary (Simon Riggs) </para> <para> @@ -712,7 +726,8 @@ <para> These named restore points can be specified as recovery - targets in <filename>recovery.conf</>. + targets using the new <filename>recovery.conf</> setting + <link linkend="recovery-target-name"><varname>recovery_target_name</></link> </para> </listitem> @@ -786,12 +801,6 @@ clauses to be fed into <command>INSERT</>, <command>UPDATE</>, <command>DELETE </> statements (Marko Tiikkaja, Hitoshi Harada) </para> - - <para> - Specifically, let <command>SELECT</> query results be fed - into <command>INSERT</>, <command>UPDATE</>, <command>DELETE</> - statements. - </para> </listitem> <listitem> @@ -804,7 +813,7 @@ <para> Some other database system already allowed this behavior, and - because of the primary key, the result is unambiguous.. + because of the primary key, the result is unambiguous. </para> </listitem> @@ -822,6 +831,19 @@ </para> </listitem> + <listitem> + <para> + Fix ordinary queries with rules to use the same snapshot behavior + as <command>EXPLAIN ANALYZE</> (Marko Tiikkaja) + </para> + + <para> + Previously <command>EXPLAIN ANALYZE</> used a slightly different + snapshot for queries involving rules. The <command>EXPLAIN ANALYZE</> + behavior was judged to be more logical. + </para> + </listitem> + </itemizedlist> <sect4> @@ -912,6 +934,12 @@ Add support for more object types in <command>ALTER ... SET SCHEMA</> commands (Dimitri Fontaine) </para> + + <para> + This command is now supported for conversions, operators, operator + classes, operator families, text search configurations, and text search + dictionaries, text search parsers, and text search templates. + </para> </listitem> </itemizedlist> @@ -926,13 +954,13 @@ <listitem> <para> Add <link linkend="SQL-ALTERTABLE"><command>ALTER TABLE ... - ADD UNIQUE</></link>/<literal>PRIMARY KEY USING INDEX</> + ADD UNIQUE/PRIMARY KEY USING INDEX</command></link> (Gurjeet Singh) </para> <para> - This allows existing unique indexes to be used as primary - keys, including indexes that were created concurrently. + This allows a primary key or unique constraint to be added using an + existing unique index, including a concurrently created unique index. </para> </listitem> @@ -951,15 +979,15 @@ <listitem> <para> - Allow <link linkend="SQL-ALTERTABLE"><command>ALTER TABLE</></link> - ... <literal>SET DATA TYPE</> to avoid table rewrites in + Allow <link linkend="SQL-ALTERTABLE"><command>ALTER TABLE + ... SET DATA TYPE</command></link> to avoid table rewrites in appropriate cases (Noah Misch, Robert Haas) </para> <para> For example, converting a varchar column to text no longer - requires a rewrite of the table. **Length changes require - rewrite? + requires a rewrite of the table. However, increasing the length + constraint on a varchar column still requires a table rewrite. </para> </listitem> @@ -1008,13 +1036,13 @@ <listitem> <para> - Add a true <link linkend="xact-serializable"><literal>serializable</> - </link> isolation level (Kevin Grittner, Dan Ports) + Add a true <link linkend="xact-serializable"><literal>serializable</></link> isolation level (Kevin Grittner, Dan Ports) </para> <para> - Previously asking for serializable isolation produced - snapshot isolation, which had certain documented anomalies. + Previously asking for serializable isolation guaranteed only that + a single MVCC snapshot would be used for the entire transaction, which + allowed certain documented anomalies. The old snapshot isolation level is still accessible by requesting the <link linkend="xact-repeatable-read"><literal>REPEATABLE READ</></link> isolation level. @@ -1094,19 +1122,6 @@ </para> </listitem> - <listitem> - <para> - Fix <command>EXPLAIN ANALYZE</> - with rules to use the same snapshot behavior as ordinary - queries (Marko Tiikkaja) - </para> - - <para> - Previously <command>EXPLAIN ANALYZE</> used a slightly different - snapshot for queries involving rules. - </para> - </listitem> - </itemizedlist> </sect4> @@ -1146,6 +1161,22 @@ </sect4> <sect4> + <title><link linkend="SQL-CLUSTER"><command>CLUSTER</></link></title> + + <itemizedlist> + + <listitem> + <para> + Allow CLUSTER to sort the table rather than scanning the index + when it seems likely to be cheaper (Leonardo Francalanci) + </para> + </listitem> + + </itemizedlist> + + </sect4> + + <sect4> <title>Indexes</title> <itemizedlist> @@ -1175,6 +1206,18 @@ <listitem> <para> + Allow <link linkend="GIN"><acronym>GIN</> indexes</link> to + better recognize duplicate search entries (Tom Lane) + </para> + + <para> + This reduces the cost of index scans, especially in cases where + it avoids unnecessary full index scans. + </para> + </listitem> + + <listitem> + <para> Fix <link linkend="GiST"><acronym>GiST</> indexes</link> to be fully crash-safe (Heikki Linnakangas) </para> @@ -1215,6 +1258,22 @@ </para> </listitem> + <listitem> + <para> + Allow binary I/O on type <type>void</type> (Radoslaw Smogura) + </para> + </listitem> + + <listitem> + <para> + Improve hypotenuse calculations for geometric operators (Paul Matthews) + </para> + + <para> + This avoids unnecessary overflows, and may also be more accurate. + </para> + </listitem> + </itemizedlist> <sect4> @@ -1236,7 +1295,8 @@ </para> <para> - **Needs description. + This is analogous to the existing facility that allows casting a row + type to a supertable's row type. </para> </listitem> @@ -1258,7 +1318,7 @@ </para> <para> - This is used for xpath matching. + These are used for xpath matching. </para> </listitem> @@ -1275,6 +1335,8 @@ <para> These check whether the input is properly-formed <acronym>XML</>. + They supersede functionality that was previously available only using + <filename>contrib/xml2</filename>. </para> </listitem> @@ -1317,7 +1379,7 @@ </para> <para> - **Why were these added? + These improve compatibility with other database products. </para> </listitem> @@ -1362,8 +1424,7 @@ </para> <para> - This function is used to obtain comments on objects. **Alvaro, - why is this useful for pg_depend? + This function is used to obtain comments on objects. </para> </listitem> @@ -1471,22 +1532,51 @@ <sect3> <title>Server-Side Languages</title> - <itemizedlist> + <sect4> + <title><link linkend="plpgsql">PL/pgSQL</link> Server-Side Language</title> - <listitem> - <para> - Add <link linkend="plpgsql-foreach-array"><command>FOREACH IN - ARRAY</></link> to <link linkend="plpgsql">PL/pgSQL</link> to - allow array iteration (Pavel Stehule) - </para> + <itemizedlist> - <para> - This is more efficient than previous methods. - </para> - </listitem> + <listitem> + <para> + Add <link linkend="plpgsql-foreach-array"><command>FOREACH IN + ARRAY</></link> to <link linkend="plpgsql">PL/pgSQL</link> to + allow array iteration (Pavel Stehule) + </para> + + <para> + This is more efficient than previous methods. + </para> + </listitem> + + <listitem> + <para> + Add <link linkend="plpgsql-foreach-array"><command>FOREACH IN + ARRAY</></link> to <link linkend="plpgsql">PL/pgSQL</link> to + allow array iteration (Pavel Stehule) + </para> + + <para> + This is more efficient than previous methods. + </para> + </listitem> + + <listitem> + <para> + Allow <command>RAISE</command> without parameters to be caught in + the same places that could catch a <command>RAISE ERROR</command> + from the same location. + </para> + + <para> + The new behavior is more consistent. + </para> + </listitem> </itemizedlist> + </sect4> + <sect4> <title><link linkend="plperl">PL/Perl</link> Server-Side Language</title> @@ -1607,6 +1697,17 @@ <listitem> <para> + <function>plpy.Fatal</function> now raises <literal>FATAL</>, rather + than <literal>ERROR</literal> (Jan Urbanski) + </para> + + <para> + The old behavior was incorrect. + </para> + </listitem> + + <listitem> + <para> Overhaul of PL/Python (Jan Urbanski) </para> @@ -1703,6 +1804,13 @@ <listitem> <para> + Make <application>psql</application> distinguish between unique + indices and unique constraints (Josh Kupershmidt) + </para> + </listitem> + + <listitem> + <para> Additional tab completion of <application>psql</> variables (Pavel Stehule) </para> @@ -1858,6 +1966,21 @@ </sect4> + <sect4> + <title><link linkend="ecpg"><application>ECPG</></link></title> + + <itemizedlist> + + <listitem> + <para> + Allow ecpg to accept dynamic cursor names even in + <literal>WHERE CURRENT OF</literal> clauses + </para> + </listitem> + + </itemizedlist> + </sect4> + </sect3> <sect3> @@ -1867,8 +1990,8 @@ <listitem> <para> - Add <link linkend="extension">extensions</link> which allow - packaged additions to <productname>PostgreSQL</> (Dimitri + Add <link linkend="extension">extensions</link> which simplify + packaging of additions to <productname>PostgreSQL</> (Dimitri Fontaine, Tom Lane) </para> @@ -2087,12 +2210,12 @@ <listitem> <para> Add <link linkend="file-fdw"><filename>contrib/file_fdw</></link> - foreign-data wrapper for reading files via <command>COPY - </>(Shigeru Hanada) + foreign-data wrapper (Shigeru Hanada) </para> <para> - This adds foreign table support for flat-file. + Foreign tables using this foreign data wrapper will read flat files + in a matter very similar to <command>COPY</>. </para> </listitem> @@ -2146,6 +2269,36 @@ <listitem> <para> + Allow <link linkend="intarray"><filename>contrib/intarray</></link> + to work properly on multi-dimensional arrays (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + In + <link linkend="intarray"><filename>contrib/intarray</></link>, + avoid errors complaining about the presence nulls in cases where no + nulls are actually present (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + In + <link linkend="intarray"><filename>contrib/intarray</></link>, + fix behavior of containment operators with respect to empty arrays + (Tom Lane) + </para> + + <para> + Empty arrays are now correctly considered to be contained in any other + array. + </para> + </listitem> + + <listitem> + <para> In <link linkend="xml2"><filename>contrib/xml2</></link>, remove arbitrary limit on the number of parameter=value pairs that can be handled by <function>xslt_process()</> (Pavel Stehule) @@ -2156,6 +2309,18 @@ </para> </listitem> + <listitem> + <para> + In <link linkend="pageinspect"><filename>contrib/pageinspect</></link>, + fix heap_page_item to return infomasks as 32-bit values (Alvaro Herrera) + </para> + + <para> + This avoids returning negative values, which was confusing. The + underlying value is a 16-bit unsigned integer. + </para> + </listitem> + </itemizedlist> <sect4> |