8.5alpha3 release notes up to Fri Dec 18 21:37:38 2009 +0000
This commit is contained in:
parent
b35b16e696
commit
2692274dd9
@ -1,7 +1,7 @@
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.5.sgml,v 1.9 2009/12/11 01:33:35 adunstan Exp $ -->
|
||||
<!-- $PostgreSQL: pgsql/doc/src/sgml/release-8.5.sgml,v 1.10 2009/12/18 22:11:09 petere Exp $ -->
|
||||
|
||||
<sect1 id="release-8-5">
|
||||
<title>Release 8.5alpha2</title>
|
||||
<title>Release 8.5alpha3</title>
|
||||
<sect2>
|
||||
<title>Overview</title>
|
||||
<para>
|
||||
@ -69,45 +69,105 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add SQL-compliant triggers on columns, which fire only if
|
||||
certain columns are named in the UPDATE's SET list.</>
|
||||
<emphasis>Remove previously deprecated configuration
|
||||
parameter add_missing_from. The system now always behaves as
|
||||
though add_missing_from were off.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add CREATE LIKE INCLUDING COMMENTS and STORAGE, and INCLUDING
|
||||
<emphasis>Performance and behavioral improvements in UPDATE,
|
||||
DELETE, and SELECT FOR UPDATE/SHARE queries with
|
||||
joins. Various corner-cases could result in duplicated output
|
||||
rows. Set-returning functions are now prohibited in the
|
||||
target list of SELECT FOR UPDATE/SHARE. FOR UPDATE does not
|
||||
propagate into a WITH query anymore.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Fixed for SELECT FOR UPDATE/SHARE in conjuction with LIMIT.
|
||||
Previously, it could return fewer rows than the limit specified.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add a WHEN clause to CREATE TRIGGER, allowing a boolean expression
|
||||
to be checked to determine whether the trigger should be fired.</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>For BEFORE triggers this is mostly a matter of spec compliance; but
|
||||
for AFTER triggers it can provide a noticeable performance
|
||||
improvement, since queuing of a deferred trigger event and
|
||||
re-fetching of the row(s) at end of statement can be
|
||||
short-circuited if the trigger does not need to be fired.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add exclusion constraints, which generalize the concept of
|
||||
uniqueness to support any indexable commutative operator, not just
|
||||
equality. Two rows violate the exclusion constraint if
|
||||
"row1.col OP row2.col" is TRUE for each of the columns in
|
||||
the constraint.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Support ORDER BY within aggregate function calls, at long last
|
||||
providing a non-kluge method for controlling the order in which
|
||||
values are fed to an aggregate function. At the same time eliminate
|
||||
the old implementation restriction that DISTINCT was only supported
|
||||
for single-argument aggregates.</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>Behavioral change: formerly, agg(DISTINCT x) dropped null values of
|
||||
x unconditionally. Now, it does so only if the agg transition
|
||||
function is strict; otherwise nulls are treated as DISTINCT
|
||||
normally would, i.e., you get one copy.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Add SQL-compliant triggers on columns, which fire only if
|
||||
certain columns are named in the UPDATE's SET list.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Add CREATE LIKE INCLUDING COMMENTS and STORAGE, and INCLUDING
|
||||
ALL shortcut to allow users to make an exact copy of a table including
|
||||
all options and features.</>
|
||||
all options and features.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Define a new, more extensible syntax for COPY options
|
||||
in order to support additional COPY options in the future.</>
|
||||
Define a new, more extensible syntax for COPY options
|
||||
in order to support additional COPY options in the future.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Modify the definition of window-function PARTITION
|
||||
Modify the definition of window-function PARTITION
|
||||
BY and ORDER BY clauses so that their elements are always
|
||||
taken as simple expressions over the query's input
|
||||
columns. This fixes a bug.</>
|
||||
columns. This fixes a bug.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Fix bug with nested WITH RECURSIVE statements.</>
|
||||
Fix bug with nested WITH RECURSIVE statements.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add surrogate pair support for U& string and identifier
|
||||
syntax.</>
|
||||
Add surrogate pair support for U& string and identifier
|
||||
syntax.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add Unicode escapes in E'...' strings.</>
|
||||
Add Unicode escapes in E'...' strings.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -154,24 +214,34 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Make TRUNCATE do truncate-in-place when processing
|
||||
<emphasis>Allow rewriting ALTER TABLE to skip WAL logging.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Speed up information schema privilege views.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Make TRUNCATE do truncate-in-place when processing
|
||||
a relation that was created or previously truncated in the
|
||||
current (sub)transaction.</>
|
||||
current (sub)transaction.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Implement "join removal" for cases where the inner side
|
||||
Implement "join removal" for cases where the inner side
|
||||
of a left join is unique and is not referenced above the join. This should
|
||||
speed up many ORM-generated and reporting tool queries.</emphasis>
|
||||
speed up many ORM-generated and reporting tool queries.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Remove the use of the flat files pg_auth and
|
||||
Remove the use of the flat files pg_auth and
|
||||
pg_database in order to improve performance. (Warning: pgbouncer
|
||||
and possibly other tools currently suggest referring to the pg_auth
|
||||
file for its user database. Such schemes will no longer work.)</emphasis>
|
||||
file for its user database. Such schemes will no longer work.)
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -235,35 +305,79 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add a Boolean server configuration parameter
|
||||
<emphasis>Provide a parenthesized-options syntax for VACUUM, analogous to
|
||||
that recently adopted for EXPLAIN. This will allow additional
|
||||
options to be implemented in future without having to make them
|
||||
fully-reserved keywords. The old syntax remains available for
|
||||
existing options, however.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add support for an application_name parameter, which is displayed
|
||||
in pg_stat_activity and recorded in log entries.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Fix longstanding problems in VACUUM caused by untimely
|
||||
interruptions.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Error when a specified connection service is not found in
|
||||
pg_service.conf, instead of ignoring it.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add YAML to list of EXPLAIN formats.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add an EXPLAIN (BUFFERS) option to show buffer-usage statistics.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add a hook to let loadable modules get control at ProcessUtility
|
||||
execution, and use it to extend contrib/pg_stat_statements to track
|
||||
utility commands.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Add a Boolean server configuration parameter
|
||||
"bonjour" to control whether a Bonjour-enabled
|
||||
build actually attempts to advertise itself via Bonjour.</>
|
||||
build actually attempts to advertise itself via Bonjour.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>When reloading postgresql.conf, log what parameters actually
|
||||
changed.</>
|
||||
When reloading postgresql.conf, log what parameters actually
|
||||
changed.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Make it possibly to specify server configuration parameters
|
||||
Make it possibly to specify server configuration parameters
|
||||
per user-database combination. Add a \drds command to psql to
|
||||
display the settings.</>
|
||||
display the settings.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Allow the collection of statistics on sequences.</>
|
||||
Allow the collection of statistics on sequences.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Increase the maximum value of extra_float_digits to
|
||||
Increase the maximum value of extra_float_digits to
|
||||
3, and have pg_dump use that value when the backend is new
|
||||
enough to allow it, because it is possible to need 3 extra
|
||||
digits for float4 values (but not for float8 values).</>
|
||||
digits for float4 values (but not for float8 values).
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -287,22 +401,55 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add ALTER DEFAULT PRIVILEGES command, which allows
|
||||
<emphasis>When querying a table with child tables, do not check permissions
|
||||
on the child tables, only on the parent table. The old behavior was
|
||||
found to be useless and confusing in virtually all cases, and also
|
||||
contrary to the SQL standard.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add a hook to CREATE/ALTER ROLE to allow an external module to
|
||||
check the strength of database passwords, and create a sample
|
||||
implementation of such a hook as a new contrib module
|
||||
"passwordcheck".</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add large object access control.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Allow LDAP authentication to operate in search+bind
|
||||
mode, meaning it does a search for the user in the directory
|
||||
first, and then binds with the DN found for this user. This
|
||||
allows for LDAP logins in scenarios where the DN of the user
|
||||
cannot be determined simply by prefix and suffix, such as the
|
||||
case where different users are located in different
|
||||
containers. The old way of authentication can be
|
||||
significantly faster, so it's kept as an option.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Add ALTER DEFAULT PRIVILEGES command, which allows
|
||||
users to adjust the privileges that will be applied to
|
||||
subsequently-created objects.</>
|
||||
subsequently-created objects.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add GRANT/REVOKE ON ALL TABLES/SEQUENCES/FUNCTIONS IN SCHEMA.
|
||||
This makes it easier to manage permissions on database objects.</emphasis>
|
||||
Add GRANT/REVOKE ON ALL TABLES/SEQUENCES/FUNCTIONS IN SCHEMA.
|
||||
This makes it easier to manage permissions on database objects.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Support "samehost" and "samenet" specifications
|
||||
Support "samehost" and "samenet" specifications
|
||||
in pg_hba.conf. This allows users with dynamic server addresses to run
|
||||
PostgreSQL without frequently modifying pg_hba.conf</emphasis>
|
||||
PostgreSQL without frequently modifying pg_hba.conf.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -318,8 +465,23 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Support POSIX-compatible interpretation of ? as well as {m,n}
|
||||
and related constructs in SIMILAR TO, per SQL:2008.</>
|
||||
<emphasis>Remove configuration parameter regex_flavor. It is now always
|
||||
"advanced".</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Teach the regular expression functions to do case-insensitive
|
||||
matching and locale-dependent character classification properly
|
||||
when the database encoding is UTF8. This previously only worked
|
||||
correct for single-byte encodings and is still broken for other
|
||||
multibyte encodings.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Support POSIX-compatible interpretation of ? as well as {m,n}
|
||||
and related constructs in SIMILAR TO, per SQL:2008.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -349,13 +511,27 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Fix encoding handling in binary input function of xml type.</>
|
||||
<emphasis>When doing "ARRAY[...]::domain", where domain is a domain
|
||||
over an array type, we need to check domain constraints. Regression
|
||||
introduced in 8.4.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Tighten binary receive functions so that they reject values
|
||||
that the text input functions don't accept either.</>
|
||||
<emphasis>Fix integer-to-bit-string conversions to handle the first
|
||||
fractional byte correctly when the output bit width is wider than
|
||||
the given integer by something other than a multiple of 8 bits.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Fix encoding handling in binary input function of xml type.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Tighten binary receive functions so that they reject values
|
||||
that the text input functions don't accept either.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -379,8 +555,19 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>It is now reasonably safe to use pg_ctl to start
|
||||
the postmaster from a boot-time script.</emphasis>
|
||||
<emphasis>initdb now selects the encoding SQL_ASCII when the locale specifies
|
||||
US-ASCII. This case previously failed.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add init[db] option to pg_ctl.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
It is now reasonably safe to use pg_ctl to start
|
||||
the postmaster from a boot-time script.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -401,16 +588,42 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Implement significantly saner behavior when two or
|
||||
more psql sessions overlap in their use of the history file.</>
|
||||
<emphasis>In psql, show view definition only with \d+, not with \d.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add "pset linestyle ascii/unicode" option to psql,
|
||||
<emphasis>In psql, ignore UTF-8-encoded Unicode byte-order mark at the
|
||||
beginning of a file if the client encoding is UTF-8.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Improve psql's tabular display of wrapped-around data by inserting
|
||||
markers in the formerly-always-blank columns just to left and right
|
||||
of the data. "pset linestyle old-ascii" is added to make
|
||||
the previous behavior available if anyone really wants it.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Simplify psql's new linestyle behavior to default to
|
||||
linestyle=ascii all the time, rather than hoping we can tell
|
||||
whether the terminal supports UTF-8 characters.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Implement significantly saner behavior when two or
|
||||
more psql sessions overlap in their use of the history file.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Add "pset linestyle ascii/unicode" option to psql,
|
||||
allowing our traditional ASCII-art style of table output to
|
||||
be upgraded to use Unicode box drawing characters if
|
||||
desired.</>
|
||||
desired.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -430,56 +643,114 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add DO statement to support execution of procedural language
|
||||
code without having to create a function for it.</>
|
||||
<emphasis>PL/pgSQL is installed by default.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Support use of function argument names to identify which
|
||||
<emphasis>Remove PL/pgSQL's RENAME declaration, which has
|
||||
bizarre and mostly nonfunctional behavior, and is so little
|
||||
used that no one has been interested in fixing it. To ensure
|
||||
that possible uses are covered, remove the ALIAS declaration's
|
||||
arbitrary restriction that only $n identifiers can be
|
||||
aliased.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>The PL/pgSQL parser and scanner were reworked to behave much more
|
||||
sanely:</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>A variable reference will only be recognized where it can validly
|
||||
go, ie, a place where a column value or parameter would be legal,
|
||||
instead of the former behavior that would replace any textual match
|
||||
including table names and column aliases (leading to syntax errors
|
||||
later on). PL/pgSQL variable names that match fully-reserved words
|
||||
will now need to be quoted. An the other hand, a number of
|
||||
PL/pgSQL-specific words were de-reserved.</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>The variable resolution behavior is by default not backward
|
||||
compatible, but can be configured; see documentation.</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>Error reporting is much nicer and accurate.</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>The argument of WHERE CURRENT OF can be a PL/pgSQL cursor variable.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add support for anonymous code blocks (DO blocks) to PL/Perl.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Support arrays as parameters and return values of PL/Python
|
||||
functions.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Python 3 support in PL/Python; behaves more or less unchanged
|
||||
compared to Python 2, but the new language variant is called
|
||||
plpython3u.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Add DO statement to support execution of procedural language
|
||||
code without having to create a function for it.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Support use of function argument names to identify which
|
||||
actual arguments match which function parameters. The syntax
|
||||
uses AS, for example funcname(value AS arg1, anothervalue AS
|
||||
arg2).</>
|
||||
arg2).
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Fix/improve bytea and boolean support in PL/Python. Data type
|
||||
Fix/improve bytea and boolean support in PL/Python. Data type
|
||||
conversion into and out of PL/Python previously went through
|
||||
an intermediate string representation, which caused various
|
||||
discrepancies especially with bytea and boolean data. This is
|
||||
now fixed by converting the values directly.</>
|
||||
now fixed by converting the values directly.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>PL/Python now accepts Unicode objects where it previously
|
||||
PL/Python now accepts Unicode objects where it previously
|
||||
only accepted string objects (for example, as return
|
||||
value). Unicode objects are converted to the PostgreSQL
|
||||
server encoding as necessary.</>
|
||||
server encoding as necessary.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Improve error context reporting in PL/Perl, for
|
||||
easier debugging.</>
|
||||
Improve error context reporting in PL/Perl, for
|
||||
easier debugging.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>PL/pgSQL IN parameters now accept value assignments.</>
|
||||
PL/pgSQL IN parameters now accept value assignments.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Convert a Perl array to a PostgreSQL array when returned by
|
||||
set-returning functions as well as non-SRFs.</>
|
||||
Convert a Perl array to a PostgreSQL array when returned by
|
||||
set-returning functions as well as non-SRFs.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Allow cursor commands MOVE FORWARD n, MOVE BACKWARD n,
|
||||
MOVE FORWARD ALL, MOVE BACKWARD ALL in PL/pgSQL.</>
|
||||
Allow cursor commands MOVE FORWARD n, MOVE BACKWARD n,
|
||||
MOVE FORWARD ALL, MOVE BACKWARD ALL in PL/pgSQL.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -506,9 +777,18 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Multiple improvements in contrib/hstore, including
|
||||
<emphasis>Add \shell and \setshell meta commands to pgbench.</emphasis>
|
||||
</para>
|
||||
<para>
|
||||
<emphasis>\shell command runs an external shell command. \setshell also does
|
||||
the same and sets the result to a variable.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Multiple improvements in contrib/hstore, including
|
||||
raising limits on keys and values, conversions to and from
|
||||
records and arrays, and support for GROUP BY and DISTINCT.</emphasis>
|
||||
records and arrays, and support for GROUP BY and DISTINCT.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -540,20 +820,32 @@
|
||||
<sect3>
|
||||
<title>Development</title>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Refactor ECPG grammar so that it uses the core grammar's
|
||||
unreserved_keyword list, minus a few specific words that have to be
|
||||
treated specially. This de-reserves a number of works in ECPG.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Added dynamic cursor names to ECPG.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Add ECPG function that returns the current transaction status.</>
|
||||
Add ECPG function that returns the current transaction status.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Make ECPG more robust against applications freeing strings.</>
|
||||
Make ECPG more robust against applications freeing strings.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Make libpq reject non-numeric and out-of-range port numbers with a
|
||||
suitable error message.</emphasis>
|
||||
Make libpq reject non-numeric and out-of-range port numbers with a
|
||||
suitable error message.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -580,28 +872,28 @@
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Change the WIN32 API version to be 5.01 (Windows XP), to
|
||||
bring in the proper IPv6 headers in newer SDKs.</>
|
||||
<emphasis>Disable triggering failover with a signal in pg_standby on Windows.
|
||||
It never really worked before anyway.</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Write to the Windows eventlog in UTF-16, converting the
|
||||
message encoding as necessary.</>
|
||||
Change the WIN32 API version to be 5.01 (Windows XP), to
|
||||
bring in the proper IPv6 headers in newer SDKs.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Replace use of the long-deprecated Bonjour API
|
||||
Write to the Windows eventlog in UTF-16, converting the
|
||||
message encoding as necessary.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Replace use of the long-deprecated Bonjour API
|
||||
DNSServiceRegistrationCreate with the not-so-deprecated
|
||||
DNSServiceRegister. The new code will fail on Mac OS X
|
||||
releases before 10.3.</>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Install a hopefully-temporary workaround for Mac OS X Snow Leopard
|
||||
readdir() bug.</>
|
||||
releases before 10.3.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
@ -621,28 +913,34 @@
|
||||
</itemizedlist>
|
||||
</sect3>
|
||||
<sect3>
|
||||
<title>Source code, build options</title>
|
||||
<title>Source Code, Build Options</title>
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Fix inclusions of readline/editline header files so that we
|
||||
<emphasis>configure --enable-thread-safety is now the default (but can still
|
||||
be turned off).</emphasis>
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Fix inclusions of readline/editline header files so that we
|
||||
only attempt to #include the version of history.h that is in
|
||||
the same directory as the readline.h we are using. This
|
||||
avoids problems in some scenarios where both readline and
|
||||
editline are installed.</>
|
||||
editline are installed.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Derived files that are shipped in the distribution used to be
|
||||
Derived files that are shipped in the distribution used to be
|
||||
built in the source directory even for out-of-tree
|
||||
builds. They are now also built in the build tree. This
|
||||
should be more convenient for certain developers' workflows.</>
|
||||
should be more convenient for certain developers' workflows.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
<emphasis>Translations were updated.</>
|
||||
Translations were updated.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
|
Loading…
Reference in New Issue
Block a user