postgres.git / summary / log / commit / refs

commit    e9eb4f401333209139af1acee2cd4251b05e0397
Author:   Peter Eisentraut <peter_e@gmx.net>
Date:     Thu Oct 28 14:42:58 2010 +0000
First released in: 9.1.0

    Release notes for 9.1alpha2


doc/src/sgml/release-9.1.sgml | 267 ++++++++++++++++++++++++++++++------------ 1 file changed, 194 insertions(+), 73 deletions(-) diff --git a/doc/src/sgml/release-9.1.sgml b/doc/src/sgml/release-9.1.sgml index 5a51fc54d3f..9b7a8c849f7 100644 --- a/doc/src/sgml/release-9.1.sgml +++ b/doc/src/sgml/release-9.1.sgml @@ -1,6 +1,6 @@ <!-- doc/src/sgml/release-9.1.sgml --> -<!-- This is up-to-date with commits through 2010-09-01 --> +<!-- This is up-to-date with commits through 2010-10-26 --> <sect1 id="release-9-1-alpha"> <title>Release 9.1alpha1</title> @@ -72,8 +72,49 @@ <listitem> <para> - <emphasis>Recognize functional dependency on primary - keys</emphasis> + <emphasis>Add ALTER TYPE ... ADD/DROP/ALTER/RENAME ATTRIBUTE</emphasis> + </para> + </listitem> + + <listitem> + <para> + <emphasis>Support triggers on views</emphasis> + </para> + + <para> + This adds the SQL-standard concept of an INSTEAD OF trigger, + which is fired instead of performing a physical + insert/update/delete. The trigger function is passed the + entire old and/or new rows of the view, and must figure out + what to do to the underlying tables to implement the update. + So this feature can be used to implement updatable views + using trigger programming style rather than rule hacking. + </para> + </listitem> + + <listitem> + <para> + <emphasis>Allow WITH clauses to be attached to INSERT, UPDATE, DELETE + statements</emphasis> + </para> + + <para> + This is not the hoped-for facility of using + INSERT/UPDATE/DELETE inside a WITH, but rather the other way + around. + </para> + </listitem> + + <listitem> + <para> + <emphasis>Allow new values to be added to an existing enum type</emphasis> + </para> + </listitem> + + <listitem> + <para> + Recognize functional dependency on primary + keys </para> <para> This allows a table's other columns to be referenced without listing @@ -84,7 +125,7 @@ <listitem> <para> - <emphasis>Add CREATE TABLE IF NOT EXISTS</emphasis> + Add CREATE TABLE IF NOT EXISTS </para> </listitem> @@ -96,22 +137,61 @@ <listitem> <para> - <emphasis>Reduce lock levels of CREATE TRIGGER and some ALTER - TABLE, CREATE RULE actions</emphasis> + <emphasis>Support MergeAppend plans, to allow sorted output + from append relations</emphasis> + </para> + + <para> + This eliminates the former need to sort the output of an + Append scan when an ordered scan of an inheritance tree is + wanted. This should be particularly useful for fast-start + cases such as queries with LIMIT. + </para> + </listitem> + + <listitem> + <para> + <emphasis>Reduce the memory requirement for large ispell dictionaries</emphasis> + </para> + </listitem> + + <listitem> + <para> + <emphasis>Teach CLUSTER to use seqscan-and-sort when it's faster than + indexscan</emphasis> </para> </listitem> <listitem> <para> - <emphasis>Add some knowledge about prefix matches to - tsmatchsel()</emphasis> + <emphasis>Improve GIN indexscan cost estimation</emphasis> </para> </listitem> <listitem> <para> - <emphasis>Replace the naive HYPOT() macro with a - standards-conformant hypotenuse function</emphasis> + <emphasis>Performance improvements in pg_upgrade for uses with many tables</emphasis> + </para> + </listitem> + + <listitem> + <para> + Reduce lock levels of CREATE TRIGGER and some ALTER + TABLE, CREATE RULE actions + </para> + </listitem> + + <listitem> + <para> + Add some knowledge about prefix matches to + tsmatchsel() + </para> + </listitem> + + <listitem> + <para> + Replace the naive HYPOT() macro with a + standards-conformant hypotenuse function </para> </listitem> @@ -123,9 +203,9 @@ <listitem> <para> - <emphasis>Change the default value of + Change the default value of <literal>standard_conforming_strings</> to - <literal>on</></emphasis> + <literal>on</> </para> <warning> <para> @@ -137,7 +217,7 @@ <listitem> <para> - <emphasis>Add <literal>log_file_mode</> parameter</emphasis> + Add <literal>log_file_mode</> parameter </para> <para> This allows control of the file permissions set on log files created @@ -147,7 +227,7 @@ <listitem> <para> - <emphasis>Add <literal>restart_after_crash</> parameter</emphasis> + Add <literal>restart_after_crash</> parameter </para> <para> Normally, we automatically restart after a backend crash, but in @@ -165,29 +245,44 @@ <listitem> <para> - <emphasis>Make EXPLAIN show the function call expression of a - FunctionScan plan node, but only in VERBOSE mode</emphasis> + <emphasis>Allow pg_ctl to register the service in either AUTO or DEMAND start + type</emphasis> + </para> + </listitem> + + <listitem> + <para> + <emphasis>Support host names and host key + word <literal>all</literal> + in <filename>pg_hba.conf</filename></emphasis> + </para> + </listitem> + + <listitem> + <para> + Make EXPLAIN show the function call expression of a + FunctionScan plan node, but only in VERBOSE mode </para> </listitem> <listitem> <para> - <emphasis>Make EXPLAIN print PARAM_EXEC Params as - the referenced expressions, rather than just $N</emphasis> + Make EXPLAIN print PARAM_EXEC Params as + the referenced expressions, rather than just $N </para> </listitem> <listitem> <para> - <emphasis>Add vacuum and analyze counters to pg_stat_*_tables - views</emphasis> + Add vacuum and analyze counters to pg_stat_*_tables + views </para> </listitem> <listitem> <para> - <emphasis>Add stats functions and views to provide access to a - transaction's own statistics counts</emphasis> + Add stats functions and views to provide access to a + transaction's own statistics counts </para> </listitem> @@ -199,8 +294,19 @@ <listitem> <para> - <emphasis>Add server authentication over Unix-domain - sockets</emphasis> + <emphasis>Add SECURITY LABEL command</emphasis> + </para> + <para> + This is intended as infrastructure to support integration + with label-based mandatory access control systems such as + SE-Linux. + </para> + </listitem> + + <listitem> + <para> + Add server authentication over Unix-domain + sockets </para> <para> This adds a libpq connection parameter <literal>requirepeer</> that @@ -217,27 +323,36 @@ <listitem> <para> - <emphasis>Add string functions: concat(), concat_ws(), left(), - right(), and reverse()</emphasis> + <emphasis>Accept <literal>public</literal> as a pseudo-role + name in <literal>has_table_privilege()</literal> and friends + to see if a particular privilege has been granted to + <literal>PUBLIC</literal></emphasis> </para> </listitem> <listitem> <para> - <emphasis>Add three-parameter forms of array_to_string and - string_to_array</emphasis> + Add string functions: concat(), concat_ws(), left(), + right(), and reverse() </para> </listitem> <listitem> <para> - <emphasis>Add XMLEXISTS function</emphasis> + Add three-parameter forms of array_to_string and + string_to_array </para> </listitem> <listitem> <para> - <emphasis>Add xpath_exists() function</emphasis> + Add XMLEXISTS function + </para> + </listitem> + + <listitem> + <para> + Add xpath_exists() function </para> <para> This is equivalent to XMLEXISTS except that it offers support for @@ -247,9 +362,9 @@ <listitem> <para> - <emphasis>Add xml_is_well_formed, xml_is_well_formed_document, + Add xml_is_well_formed, xml_is_well_formed_document, xml_is_well_formed_content functions to the core XML - code</emphasis> + code </para> <para> These supersede a version previously offered by contrib/xml2. @@ -264,15 +379,15 @@ <listitem> <para> - <emphasis>Allow numeric to use a more compact, 2-byte header in - many cases</emphasis> + Allow numeric to use a more compact, 2-byte header in + many cases </para> </listitem> <listitem> <para> - <emphasis>Add support for dividing money by money (yielding a - float8 result) and for casting between money and numeric</emphasis> + Add support for dividing money by money (yielding a + float8 result) and for casting between money and numeric </para> </listitem> @@ -284,8 +399,8 @@ <listitem> <para> - <emphasis>Add options to force quoting of all - identifiers</emphasis> + Add options to force quoting of all + identifiers </para> <para> This includes a quote_all_identifiers parameter which affects the @@ -303,16 +418,16 @@ <listitem> <para> - <emphasis>Add \conninfo command to psql, to show current connection - info</emphasis> + Add \conninfo command to psql, to show current connection + info </para> </listitem> <listitem> <para> - <emphasis>Extend psql's \e and \ef commands so that a line number + Extend psql's \e and \ef commands so that a line number can be specified, and the editor's cursor will be initially placed - on that line</emphasis> + on that line </para> <para> To avoid assumptions about what switch the user's editor takes for @@ -323,16 +438,16 @@ <listitem> <para> - <emphasis>Add a \sf (show function) command to psql, for those + Add a \sf (show function) command to psql, for those times when you need to look at a function but don't wish to fire up - an editor</emphasis> + an editor </para> </listitem> <listitem> <para> - <emphasis>Make psql distinguish between unique indices and unique - constraints in \d printout</emphasis> + Make psql distinguish between unique indices and unique + constraints in \d printout </para> </listitem> @@ -346,9 +461,9 @@ <listitem> <para> - <emphasis>Modify the handling of RAISE without parameters so that + Modify the handling of RAISE without parameters so that the error it throws can be caught in the same places that could - catch an ordinary RAISE ERROR in the same location</emphasis> + catch an ordinary RAISE ERROR in the same location </para> <para> The previous coding insisted on throwing the error from the block @@ -359,7 +474,7 @@ <listitem> <para> - <emphasis>Remove ancient PL/pgSQL line numbering hack</emphasis> + Remove ancient PL/pgSQL line numbering hack </para> <para> PL/pgSQL used to count the second line of the function body as @@ -381,37 +496,43 @@ <listitem> <para> - <emphasis>Add the ability to compute per-statement latencies (ie, - average execution times) to pgbench</emphasis> + <emphasis>Updates to contrib/isn ISBN tables</emphasis> + </para> + </listitem> + + <listitem> + <para> + Add the ability to compute per-statement latencies (ie, + average execution times) to pgbench </para> </listitem> <listitem> <para> - <emphasis>Teach levenshtein() about multi-byte - characters</emphasis> + Teach levenshtein() about multi-byte + characters </para> </listitem> <listitem> <para> - <emphasis>Add btree_gist support for searching on <quote>not - equals</quote></emphasis> + Add btree_gist support for searching on <quote>not + equals</quote> </para> </listitem> <listitem> <para> - <emphasis>Add ssl_cipher() and ssl_version() functions to - contrib/sslinfo</emphasis> + Add ssl_cipher() and ssl_version() functions to + contrib/sslinfo </para> </listitem> <listitem> <para> - <emphasis>Remove the arbitrary (and undocumented) limit on the + Remove the arbitrary (and undocumented) limit on the number of parameter=value pairs that can be handled by - xslt_process()</emphasis> + xslt_process() </para> </listitem> @@ -423,8 +544,8 @@ <listitem> <para> - <emphasis>Include the backend ID in the relpath of temporary - relations</emphasis> + Include the backend ID in the relpath of temporary + relations </para> <para> This allows us to reliably remove all leftover temporary relation @@ -436,45 +557,45 @@ <listitem> <para> - <emphasis>Rewrite COMMENT ON <replaceable>object</> code for better - modularity, and add necessary locking</emphasis> + Rewrite COMMENT ON <replaceable>object</> code for better + modularity, and add necessary locking </para> </listitem> <listitem> <para> - <emphasis>Add a hook in ExecCheckRTPerms() for eventual use by - external security-checking modules</emphasis> + Add a hook in ExecCheckRTPerms() for eventual use by + external security-checking modules </para> </listitem> <listitem> <para> - <emphasis>Standardize names and calling conventions of - get_whatever_oid functions</emphasis> + Standardize names and calling conventions of + get_whatever_oid functions </para> </listitem> <listitem> <para> - <emphasis>Make NestLoop plan nodes pass outer-relation variables + Make NestLoop plan nodes pass outer-relation variables into their inner relation using the general PARAM_EXEC executor parameter mechanism, rather than the ad-hoc kluge of passing the - outer tuple down through ExecReScan</emphasis> + outer tuple down through ExecReScan </para> </listitem> <listitem> <para> - <emphasis>Make details of the Numeric representation private to - numeric.c</emphasis> + Make details of the Numeric representation private to + numeric.c </para> </listitem> <listitem> <para> - <emphasis>Suppress some compiler warnings from - <literal>clang</></emphasis> + Suppress some compiler warnings from + <literal>clang</> </para> </listitem> [parent: 18d6437885d2]