summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2007-02-02 00:10:33 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2007-02-02 00:10:33 +0000
commit40cf433eb6e98f64cc508fabdb3a745062e22786 (patch)
treef3aa1a006d3b03798089e4195b34f534c1a349d4
parent23326cd18bbb9f9a237f65a4d54c66869c99aef2 (diff)
downloadpostgresql-40cf433eb6e98f64cc508fabdb3a745062e22786.tar.gz
Update release notes for security-related releases in all active branches.
Security: CVE-2007-0555, CVE-2007-0556
-rw-r--r--doc/src/sgml/release.sgml1461
1 files changed, 957 insertions, 504 deletions
diff --git a/doc/src/sgml/release.sgml b/doc/src/sgml/release.sgml
index 6fa9bc6676..1774fe73c9 100644
--- a/doc/src/sgml/release.sgml
+++ b/doc/src/sgml/release.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.488.2.4 2007/02/01 19:18:14 neilc Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/release.sgml,v 1.488.2.5 2007/02/02 00:10:33 tgl Exp $ -->
<!--
Typical markup:
@@ -27,13 +27,167 @@ wrap long lines
For new features, add links to the documentation sections. Use </link>
so that perl can remove it so HISTORY.html can be created with no
-links to the main documentation.
+links to the main documentation. This was added only in 8.2, so don't
+do it for earlier branch release files.
-->
<appendix id="release">
<title>Release Notes</title>
+ <sect1 id="release-8-2-2">
+ <title>Release 8.2.2</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.2.1, including
+ a security fix.
+ </para>
+
+ <sect2>
+ <title>Migration to version 8.2.2</title>
+
+ <para>
+ A dump/restore is not required for those running 8.2.X.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Remove security vulnerabilities that allowed connected users
+ to read backend memory (Tom)
+ </para>
+ <para>
+ The vulnerabilities involve suppressing the normal check that a SQL
+ function returns the data type it's declared to, and changing the
+ data type of a table column (CVE-2007-0555, CVE-2007-0556). These
+ errors can easily be exploited to cause a backend crash, and in
+ principle might be used to read database content that the user
+ should not be able to access.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix not-so-rare-anymore bug wherein btree index page splits could fail
+ due to choosing an infeasible split point (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix Borland C compile scripts (L Bayuk)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Properly handle <function>to_char('CC')</> for years ending in
+ <literal>00</> (Tom)
+ </para>
+ <para>
+ Year 2000 is in the twentieth century, not the twenty-first.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ <filename>/contrib/tsearch2</> localization improvements (Tatsuo, Teodor)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix incorrect permission check in
+ <literal>information_schema.key_column_usage</> view (Tom)
+ </para>
+ <para>
+ The symptom is <quote>relation with OID nnnnn does not exist</> errors.
+ To get this fix without using <command>initdb</>, use <command>CREATE OR
+ REPLACE VIEW</> to install the corrected definition found in
+ <filename>share/information_schema.sql</>. Note you will need to do
+ this in each database.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <command>VACUUM</> performance for databases with many tables (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix for rare Assert() crash triggered by <literal>UNION</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix potentially incorrect results from index searches using
+ <literal>ROW</> inequality conditions (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Tighten security of multi-byte character processing for UTF8 sequences
+ over three bytes long (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix bogus <quote>permission denied</> failures occurring on Windows
+ due to attempts to fsync already-deleted files (Magnus, Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix bug that could cause the statistics collector
+ to hang on Windows (Magnus)
+ </para>
+
+ <para>
+ This would in turn lead to autovacuum not working.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix possible crashes when an already-in-use PL/pgSQL function is
+ updated (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve PL/pgSQL handling of domain types (Sergiy Vyshnevetskiy, Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix possible errors in processing PL/pgSQL exception blocks (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-2-1">
<title>Release 8.2.1</title>
@@ -166,7 +320,7 @@ links to the main documentation.
</sect2>
</sect1>
-
+
<sect1 id="release-8-2">
<title>Release 8.2</title>
@@ -503,7 +657,7 @@ links to the main documentation.
</para>
<para>
- This may eliminate the need to set unrealistically small
+ This might eliminate the need to set unrealistically small
values of <link
linkend="guc-random-page-cost"><varname>random_page_cost</></link>.
If you have been using a very small <varname>random_page_cost</>,
@@ -998,7 +1152,7 @@ links to the main documentation.
<para>
On platforms where it is expensive to update the <application>ps</>
- display, it may be worthwhile to turn this off and rely solely on
+ display, it might be worthwhile to turn this off and rely solely on
<structname>pg_stat_activity</> for status information.
</para>
</listitem>
@@ -1279,7 +1433,7 @@ links to the main documentation.
<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
+ or <function>nextval()</>). It might cause performance
degradation in the presence of functions that are unnecessarily
marked as <literal>volatile</>.
</para>
@@ -2726,6 +2880,106 @@ links to the main documentation.
</sect2>
</sect1>
+ <sect1 id="release-8-1-7">
+ <title>Release 8.1.7</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.1.6, including
+ a security fix.
+ </para>
+
+ <sect2>
+ <title>Migration to version 8.1.7</title>
+
+ <para>
+ A dump/restore is not required for those running 8.1.X.
+ However, if you are upgrading from a version earlier than 8.1.2,
+ see the release notes for 8.1.2.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Remove security vulnerabilities that allowed connected users
+ to read backend memory (Tom)
+ </para>
+ <para>
+ The vulnerabilities involve suppressing the normal check that a SQL
+ function returns the data type it's declared to, and changing the
+ data type of a table column (CVE-2007-0555, CVE-2007-0556). These
+ errors can easily be exploited to cause a backend crash, and in
+ principle might be used to read database content that the user
+ should not be able to access.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix rare bug wherein btree index page splits could fail
+ due to choosing an infeasible split point (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Improve <command>VACUUM</> performance for databases with many tables (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix autovacuum to avoid leaving non-permanent transaction IDs in
+ non-connectable databases (Alvaro)
+ </para>
+
+ <para>
+ This bug affects the 8.1 branch only.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix for rare Assert() crash triggered by <literal>UNION</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Tighten security of multi-byte character processing for UTF8 sequences
+ over three bytes long (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix bogus <quote>permission denied</> failures occurring on Windows
+ due to attempts to fsync already-deleted files (Magnus, Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix possible crashes when an already-in-use PL/pgSQL function is
+ updated (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-8-1-6">
<title>Release 8.1.6</title>
@@ -2875,7 +3129,7 @@ links to the main documentation.
</sect2>
</sect1>
-
+
<sect1 id="release-8-1-5">
<title>Release 8.1.5</title>
@@ -2950,7 +3204,7 @@ compilers (Hiroshi Saito)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-1-4">
<title>Release 8.1.4</title>
@@ -2975,7 +3229,7 @@ compilers (Hiroshi Saito)</para></listitem>
<para>
Full security against the SQL-injection attacks described in
- CVE-2006-2313 and CVE-2006-2314 may require changes in application
+ CVE-2006-2313 and CVE-2006-2314 might require changes in application
code. If you have applications that embed untrustworthy strings
into SQL commands, you should examine them as soon as possible to
ensure that they are using recommended escaping techniques. In
@@ -3007,7 +3261,7 @@ literals. By default, <literal>\'</> is rejected only when
GB18030, or UHC), which is the scenario in which SQL injection is possible.
A new configuration parameter <varname>backslash_quote</> is available to
adjust this behavior when needed. Note that full security against
-CVE-2006-2314 may require client-side changes; the purpose of
+CVE-2006-2314 might require client-side changes; the purpose of
<varname>backslash_quote</> is in part to make it obvious that insecure
clients are insecure.
</para></listitem>
@@ -3102,7 +3356,7 @@ documented (Tom)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-1-3">
<title>Release 8.1.3</title>
@@ -3121,7 +3375,7 @@ documented (Tom)</para></listitem>
<para>
A dump/restore is not required for those running 8.1.X.
- However, if you are upgrading from a version earlier than 8.1.2,
+ However, if you are upgrading from a version earlier than 8.1.2,
see the release notes for 8.1.2.
</para>
</sect2>
@@ -3170,7 +3424,7 @@ constraints in the proper order (Nakano Yoshihisa)</para></listitem>
references to custom operators or operator classes (Tom)</para></listitem>
<listitem><para>Allow <application>pg_restore</> to continue properly after a
-<command>COPY</> failure; formerly it tried to treat the remaining
+<command>COPY</> failure; formerly it tried to treat the remaining
<command>COPY</> data as SQL commands (Stephen Frost)</para></listitem>
<listitem><para>Fix <application>pg_ctl</> <literal>unregister</> crash
@@ -3222,7 +3476,7 @@ creation (Tom)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-1-2">
<title>Release 8.1.2</title>
@@ -3274,7 +3528,7 @@ to ensure that <application>plperl</> won't change the locale later</para>
<para>This fixes a problem that occurred if the <application>postmaster</> was
started with environment variables specifying a different locale than what
<application>initdb</> had been told. Under these conditions, any use of
-<application>plperl</> was likely to lead to corrupt indexes. You may need
+<application>plperl</> was likely to lead to corrupt indexes. You might need
<command>REINDEX</> to fix existing indexes on
textual columns if this has happened to you.</para></listitem>
@@ -3323,7 +3577,7 @@ what's actually returned by the query (Joe)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-1-1">
<title>Release 8.1.1</title>
@@ -3390,7 +3644,7 @@ on Windows depending on which version of <filename>libintl</> was used.
(<function>to_char(interval)</> should probably use
<literal>HH24</>.) (Bruce)</para></listitem>
-<listitem><para>AIX, HPUX, and MSVC compile fixes (Tom, Hiroshi
+<listitem><para>AIX, HPUX, and MSVC compile fixes (Tom, Hiroshi
Saito)</para></listitem>
<listitem><para>Optimizer improvements (Tom)</para></listitem>
@@ -3413,7 +3667,7 @@ DISTINCT query</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-1">
<title>Release 8.1</title>
@@ -3424,7 +3678,7 @@ DISTINCT query</para></listitem>
<sect2>
<title>Overview</title>
-
+
<para>
Major changes in this release:
</para>
@@ -3479,7 +3733,7 @@ DISTINCT query</para></listitem>
<term>
Add two-phase commit (Heikki Linnakangas, Alvaro, Tom)
</term>
-
+
<listitem>
<para>
Two-phase commit allows transactions to be "prepared" on several
@@ -3496,7 +3750,7 @@ DISTINCT query</para></listitem>
<varlistentry>
<term>
- Create a new role system that replaces users and groups
+ Create a new role system that replaces users and groups
(Stephen Frost)
</term>
@@ -3509,7 +3763,7 @@ DISTINCT query</para></listitem>
</para>
<itemizedlist>
-
+
<listitem>
<para>
Have login capability (optionally)
@@ -3541,8 +3795,8 @@ DISTINCT query</para></listitem>
<command>SET ROLE</> to switch to other roles she is a member of.
This feature is a generalization of the SQL standard's concept of
roles.
- This change also replaces <structname>pg_shadow</> and
- <structname>pg_group</> by new role-capable catalogs
+ This change also replaces <structname>pg_shadow</> and
+ <structname>pg_group</> by new role-capable catalogs
<structname>pg_authid</> and <structname>pg_auth_members</>. The old
tables are redefined as read-only views on the new role tables.
</para>
@@ -3554,14 +3808,14 @@ DISTINCT query</para></listitem>
Automatically use indexes for <function>MIN()</> and
<function>MAX()</> (Tom)
</term>
-
+
<listitem>
<para>
In previous releases, the only way to use an index for
<function>MIN()</> or <function>MAX()</> was to rewrite the
query as <command>SELECT col FROM tab ORDER BY col LIMIT 1</>.
Index usage now happens automatically.
- </para>
+ </para>
</listitem>
</varlistentry>
@@ -3639,15 +3893,15 @@ DISTINCT query</para></listitem>
</variablelist>
</sect2>
-
+
<sect2>
<title>Migration to version 8.1</title>
-
+
<para>
A dump/restore using <application>pg_dump</application> is required
for those wishing to migrate data from any previous release.
</para>
-
+
<para>
The 8.0 release announced that the <function>to_char()</> function
for intervals would be removed in 8.1. However, since no better API
@@ -3672,7 +3926,7 @@ DISTINCT query</para></listitem>
</para>
<para>
- It may be necessary to set <varname>add_missing_from</> to true
+ It might be necessary to set <varname>add_missing_from</> to true
in order to load an existing dump file, if the dump contains any
views or rules created using the implicit-<literal>FROM</> syntax.
This should be a one-time annoyance, because
@@ -3741,7 +3995,7 @@ DISTINCT query</para></listitem>
treat backslashes literally in ordinary strings?
</para>
</listitem>
-
+
<listitem>
<para>
<varname>escape_string_warning</> &mdash; warn about backslashes in
@@ -3894,7 +4148,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<listitem>
<para>
- <command>CREATE LANGUAGE</> may ignore the provided arguments
+ <command>CREATE LANGUAGE</> can ignore the provided arguments
in favor of information from <structname>pg_pltemplate</>
(Tom)
</para>
@@ -3939,16 +4193,16 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect2>
-
+
<sect2>
<title>Additional Changes</title>
-
+
<para>
Below you will find a detailed account of the additional changes
between <productname>PostgreSQL</productname> 8.1 and the
previous major release.
</para>
-
+
<sect3>
<title>Performance Improvements</title>
<itemizedlist>
@@ -4094,7 +4348,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
objects after the OID counter has wrapped around (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Add warning about the need to increase
@@ -4228,15 +4482,15 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Query Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
- Add temporary views (Koju Iijima, Neil)
+ Add temporary views (Koju Iijima, Neil)
</para>
</listitem>
@@ -4303,12 +4557,12 @@ psql -t -f fixseq.sql db1 | psql -e db1
</listitem>
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Object Manipulation Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Track dependencies of shared objects (Alvaro)
@@ -4326,7 +4580,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<listitem>
<para>
- Allow limited <command>ALTER OWNER</> commands to be performed
+ Allow limited <command>ALTER OWNER</> commands to be performed
by the object owner (Stephen Frost)
</para>
<para>
@@ -4348,7 +4602,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
This allows objects to be moved to different schemas.
</para>
</listitem>
-
+
<listitem>
<para>
Add <command>ALTER TABLE ENABLE/DISABLE TRIGGER</command> to
@@ -4358,12 +4612,12 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Utility Command Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Allow <command>TRUNCATE</> to truncate multiple tables in a
@@ -4474,12 +4728,12 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Data Type and Function Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add <function>MAX()</> and <function>MIN()</> aggregates for
@@ -4672,7 +4926,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
</para>
<para>
<itemizedlist>
-
+
<listitem>
<para>
<function>pg_tablespace_size()</>
@@ -4702,7 +4956,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<function>pg_size_pretty()</>
</para>
</listitem>
-
+
</itemizedlist>
</para>
<para>
@@ -4718,7 +4972,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
</para>
<para>
<itemizedlist>
-
+
<listitem>
<para>
<function>pg_stat_file()</>
@@ -4740,7 +4994,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>pg_reload_conf()</> to force reloading of the
@@ -4763,12 +5017,12 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Encoding and Locale Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Rename some encodings to be more consistent and to follow
@@ -4776,7 +5030,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
</para>
<para>
<itemizedlist>
-
+
<listitem>
<para>
<literal>UNICODE</> is now <literal>UTF8</>
@@ -4839,19 +5093,19 @@ psql -t -f fixseq.sql db1 | psql -e db1
Allow the UTF8 encoding to work on Windows (Magnus)
</para>
<para>
- This is done by mapping UTF8 to the Windows-native UTF16
+ This is done by mapping UTF8 to the Windows-native UTF16
implementation.
</para>
</listitem>
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>General Server-Side Language Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Fix <command>ALTER LANGUAGE RENAME</> (Sergey Yatskevich)
@@ -4906,11 +5160,11 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
+
<sect3>
<title>PL/PgSQL Server-Side Language Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Overhaul the memory management of PL/PgSQL functions (Neil)
@@ -4998,8 +5252,8 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>PL/Perl Server-Side Language Changes</title>
<itemizedlist>
@@ -5074,7 +5328,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<sect3>
<title><application>psql</> Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add <command>\set ON_ERROR_ROLLBACK</> to allow statements in
@@ -5178,15 +5432,15 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title><application>pg_dump</> Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
- Add <option>-n</> / <option>--schema</> switch to
+ Add <option>-n</> / <option>--schema</> switch to
<application>pg_restore</> (Richard van den Berg)
</para>
<para>
@@ -5196,7 +5450,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<listitem>
<para>
- Allow <application>pg_dump</> to dump large objects even in
+ Allow <application>pg_dump</> to dump large objects even in
text mode (Tom)
</para>
<para>
@@ -5207,7 +5461,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<listitem>
<para>
- Allow <application>pg_dump</> to dump a consistent snapshot of
+ Allow <application>pg_dump</> to dump a consistent snapshot of
large objects (Tom)
</para>
</listitem>
@@ -5220,7 +5474,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<listitem>
<para>
- Add <option>--encoding</> to <application>pg_dump</>
+ Add <option>--encoding</> to <application>pg_dump</>
(Magnus Hagander)
</para>
<para>
@@ -5246,12 +5500,12 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title><application>libpq</application> Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add a <envar>PGPASSFILE</> environment variable to specify the
@@ -5276,19 +5530,19 @@ psql -t -f fixseq.sql db1 | psql -e db1
</listitem>
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Source Code Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Fix <application>pgxs</> to support building against a relocated
installation
</para>
</listitem>
-
+
<listitem>
<para>
Add spinlock support for the Itanium processor using Intel
@@ -5426,7 +5680,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
<sect3>
<title>Contrib Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add <filename>/contrib/pg_buffercache</> contrib module (Mark
@@ -5490,7 +5744,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
</para>
<itemizedlist>
-
+
<listitem>
<para>
Implementation of OpenPGP symmetric-key and public-key encryption
@@ -5532,7 +5786,76 @@ psql -t -f fixseq.sql db1 | psql -e db1
</itemizedlist>
</sect3>
-
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-8-0-11">
+ <title>Release 8.0.11</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 8.0.10, including
+ a security fix.
+ </para>
+
+ <sect2>
+ <title>Migration to version 8.0.11</title>
+
+ <para>
+ A dump/restore is not required for those running 8.0.X. However,
+ if you are upgrading from a version earlier than 8.0.6, see the release
+ notes for 8.0.6.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Remove security vulnerabilities that allowed connected users
+ to read backend memory (Tom)
+ </para>
+ <para>
+ The vulnerabilities involve suppressing the normal check that a SQL
+ function returns the data type it's declared to, and changing the
+ data type of a table column (CVE-2007-0555, CVE-2007-0556). These
+ errors can easily be exploited to cause a backend crash, and in
+ principle might be used to read database content that the user
+ should not be able to access.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix rare bug wherein btree index page splits could fail
+ due to choosing an infeasible split point (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix for rare Assert() crash triggered by <literal>UNION</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Tighten security of multi-byte character processing for UTF8 sequences
+ over three bytes long (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
</sect2>
</sect1>
@@ -5654,7 +5977,7 @@ psql -t -f fixseq.sql db1 | psql -e db1
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-9">
<title>Release 8.0.9</title>
@@ -5708,7 +6031,7 @@ Wieland)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-8">
<title>Release 8.0.8</title>
@@ -5733,7 +6056,7 @@ Wieland)</para></listitem>
<para>
Full security against the SQL-injection attacks described in
- CVE-2006-2313 and CVE-2006-2314 may require changes in application
+ CVE-2006-2313 and CVE-2006-2314 might require changes in application
code. If you have applications that embed untrustworthy strings
into SQL commands, you should examine them as soon as possible to
ensure that they are using recommended escaping techniques. In
@@ -5765,7 +6088,7 @@ literals. By default, <literal>\'</> is rejected only when
GB18030, or UHC), which is the scenario in which SQL injection is possible.
A new configuration parameter <varname>backslash_quote</> is available to
adjust this behavior when needed. Note that full security against
-CVE-2006-2314 may require client-side changes; the purpose of
+CVE-2006-2314 might require client-side changes; the purpose of
<varname>backslash_quote</> is in part to make it obvious that insecure
clients are insecure.
</para></listitem>
@@ -5820,7 +6143,7 @@ Fuhr)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-7">
<title>Release 8.0.7</title>
@@ -5845,7 +6168,7 @@ Fuhr)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix potential crash in <command>SET
@@ -5882,7 +6205,7 @@ constraints in the proper order (Nakano Yoshihisa)</para></listitem>
references to custom operators or operator classes (Tom)</para></listitem>
<listitem><para>Allow <application>pg_restore</> to continue properly after a
-<command>COPY</> failure; formerly it tried to treat the remaining
+<command>COPY</> failure; formerly it tried to treat the remaining
<command>COPY</> data as SQL commands (Stephen Frost)</para></listitem>
<listitem><para>Fix <application>pg_ctl</> <literal>unregister</> crash
@@ -5917,7 +6240,7 @@ and <function>isinf</> during configure (Tom)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-6">
<title>Release 8.0.6</title>
@@ -5945,7 +6268,7 @@ and <function>isinf</> during configure (Tom)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix Windows code so that postmaster will continue rather
@@ -5971,7 +6294,7 @@ to ensure that <application>plperl</> won't change the locale later</para>
<para>This fixes a problem that occurred if the <application>postmaster</> was
started with environment variables specifying a different locale than what
<application>initdb</> had been told. Under these conditions, any use of
-<application>plperl</> was likely to lead to corrupt indexes. You may need
+<application>plperl</> was likely to lead to corrupt indexes. You might need
<command>REINDEX</> to fix existing indexes on
textual columns if this has happened to you.</para></listitem>
@@ -6000,7 +6323,7 @@ what's actually returned by the query (Joe)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-5">
<title>Release 8.0.5</title>
@@ -6025,7 +6348,7 @@ what's actually returned by the query (Joe)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix race condition in transaction log management</para>
@@ -6080,7 +6403,7 @@ to subquery results</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-4">
<title>Release 8.0.4</title>
@@ -6175,7 +6498,7 @@ code</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-8-0-3">
<title>Release 8.0.3</title>
@@ -6222,7 +6545,7 @@ code</para></listitem>
It is strongly recommended that all installations repair these errors,
either by initdb or by following the manual repair procedure given
below. The errors at least allow unprivileged database users to crash
- their server process, and may allow unprivileged users to gain the
+ their server process, and might allow unprivileged users to gain the
privileges of a database superuser.
</para>
@@ -6322,12 +6645,12 @@ data types</para></listitem>
<title>Changes</title>
<itemizedlist>
-<listitem><para>Increment the major version number of all interface
+<listitem><para>Increment the major version number of all interface
libraries (Bruce)</para>
<para>
- This should have been done in 8.0.0. It is required so 7.4.X versions
+ This should have been done in 8.0.0. It is required so 7.4.X versions
of PostgreSQL client applications, like <application>psql</>,
- can be used on the same machine as 8.0.X applications. This might require
+ can be used on the same machine as 8.0.X applications. This might require
re-linking user applications that use these libraries.
</para></listitem>
<listitem><para>Add Windows-only <varname>wal_sync_method</> setting of
@@ -6341,21 +6664,21 @@ data types</para></listitem>
</para>
</listitem>
<listitem><para>Enable the <varname>wal_sync_method</> setting of
- <option>open_datasync</> on Windows, and make it the default for that
+ <option>open_datasync</> on Windows, and make it the default for that
platform (Magnus, Bruce)</para>
<para>
Because the default is no longer <option>fsync_writethrough</>,
data loss is possible during a power failure if the disk drive has
- write caching enabled. To turn off the write cache on Windows,
- from the <application>Device Manager</>, choose the drive properties,
+ write caching enabled. To turn off the write cache on Windows,
+ from the <application>Device Manager</>, choose the drive properties,
then <literal>Policies</>.
</para>
</listitem>
-<listitem><para>New cache management algorithm <acronym>2Q</> replaces
+<listitem><para>New cache management algorithm <acronym>2Q</> replaces
<acronym>ARC</> (Tom)</para>
<para>
- This was done to avoid a pending US patent on <acronym>ARC</>. The
- <acronym>2Q</> code might be a few percentage points slower than
+ This was done to avoid a pending US patent on <acronym>ARC</>. The
+ <acronym>2Q</> code might be a few percentage points slower than
<acronym>ARC</> for some work loads. A better cache management algorithm
will appear in 8.1.
</para></listitem>
@@ -6379,9 +6702,9 @@ in plpython function bodies (Michael Fuhr)</para>
</listitem>
<listitem><para>Allow SPI cursors to handle utility commands that return rows,
such as <command>EXPLAIN</> (Tom)</para></listitem>
-<listitem><para>Fix <command>CLUSTER</> failure after <command>ALTER TABLE
+<listitem><para>Fix <command>CLUSTER</> failure after <command>ALTER TABLE
SET WITHOUT OIDS</> (Tom)</para></listitem>
-<listitem><para>Reduce memory usage of <command>ALTER TABLE ADD COLUMN</>
+<listitem><para>Reduce memory usage of <command>ALTER TABLE ADD COLUMN</>
(Neil)</para></listitem>
<listitem><para>Fix <command>ALTER LANGUAGE RENAME</> (Tom)</para></listitem>
<listitem><para>Document the Windows-only <literal>register</> and
@@ -6401,7 +6724,7 @@ statistics collector</para>
Windows event logger rather than standard error.
</para></listitem>
<listitem><para>Make Kerberos authentication work on Windows (Magnus)</para></listitem>
-<listitem><para>Allow <command>ALTER DATABASE RENAME</> by superusers
+<listitem><para>Allow <command>ALTER DATABASE RENAME</> by superusers
who aren't flagged as having CREATEDB privilege (Tom)</para></listitem>
<listitem><para>Modify WAL log entries for <command>CREATE</> and
<command>DROP DATABASE</> to not specify absolute paths (Tom)</para>
@@ -6409,22 +6732,22 @@ statistics collector</para>
different database location. Note that <command>CREATE TABLESPACE</> still
poses a hazard in such situations.
</para></listitem>
-<listitem><para>Fix crash from a backend exiting with an open transaction
+<listitem><para>Fix crash from a backend exiting with an open transaction
that created a table and opened a cursor on it (Tom)</para></listitem>
-<listitem><para>Fix <function>array_map()</> so it can call PL functions
+<listitem><para>Fix <function>array_map()</> so it can call PL functions
(Tom)</para></listitem>
<listitem><para>Several <filename>contrib/tsearch2</> and
<filename>contrib/btree_gist</> fixes (Teodor)
</para></listitem>
-<listitem><para>Fix crash of some <filename>contrib/pgcrypto</>
+<listitem><para>Fix crash of some <filename>contrib/pgcrypto</>
functions on some platforms (Marko Kreen)</para></listitem>
-<listitem><para>Fix <filename>contrib/intagg</> for 64-bit platforms
+<listitem><para>Fix <filename>contrib/intagg</> for 64-bit platforms
(Tom)</para></listitem>
-<listitem><para>Fix ecpg bugs in parsing of <command>CREATE</> statement
+<listitem><para>Fix ecpg bugs in parsing of <command>CREATE</> statement
(Michael)</para></listitem>
-<listitem><para>Work around gcc bug on powerpc and amd64 causing problems in
+<listitem><para>Work around gcc bug on powerpc and amd64 causing problems in
ecpg (Christof Petig)</para></listitem>
-<listitem><para>Do not use locale-aware versions of <function>upper()</>,
+<listitem><para>Do not use locale-aware versions of <function>upper()</>,
<function>lower()</>, and <function>initcap()</> when the locale is
<literal>C</> (Bruce)</para>
<para>
@@ -6432,9 +6755,9 @@ statistics collector</para>
for non-7-bit data when the locale is <literal>C</>.
</para></listitem>
<listitem><para>Fix <function>quote_ident()</> to quote names that match keywords (Tom)</para></listitem>
-<listitem><para>Fix <function>to_date()</> to behave reasonably when
+<listitem><para>Fix <function>to_date()</> to behave reasonably when
<literal>CC</> and <literal>YY</> fields are both used (Karel)</para></listitem>
-<listitem><para>Prevent <function>to_char(interval)</> from failing
+<listitem><para>Prevent <function>to_char(interval)</> from failing
when given a zero-month interval (Tom)</para></listitem>
<listitem><para>Fix wrong week returned by <function>date_trunc('week')</>
(Bruce)</para>
@@ -6523,10 +6846,10 @@ typedefs (Michael)</para></listitem>
<title>Release date</title>
<simpara>2005-01-19</simpara>
</note>
-
+
<sect2>
<title>Overview</title>
-
+
<para>
Major changes in this release:
</para>
@@ -6680,20 +7003,20 @@ typedefs (Michael)</para></listitem>
</variablelist>
</sect2>
-
+
<sect2>
<title>Migration to version 8.0</title>
-
+
<para>
A dump/restore using <application>pg_dump</application> is
required for those wishing to migrate data from any previous
release.
</para>
-
+
<para>
Observe the following incompatibilities:
</para>
-
+
<itemizedlist>
<listitem>
@@ -6891,8 +7214,7 @@ typedefs (Michael)</para></listitem>
behavior across all platforms. In most cases, there should be
little noticeable difference in time zone behavior, except that
the time zone names used by <command>SET</>/<command>SHOW</>
- <varname>TimeZone</> may
- be different from what your platform provides.
+ <varname>TimeZone</> might be different from what your platform provides.
</para>
</listitem>
@@ -6933,7 +7255,7 @@ typedefs (Michael)</para></listitem>
considered deprecated and will be removed in the next major
release.
</para>
-
+
<itemizedlist>
<listitem>
<para>
@@ -6941,7 +7263,7 @@ typedefs (Michael)</para></listitem>
for intervals.
</para>
</listitem>
-
+
<listitem>
<para>
The server now warns of empty strings passed to
@@ -6951,7 +7273,7 @@ typedefs (Michael)</para></listitem>
invalid input for these data types.
</para>
</listitem>
-
+
<listitem>
<para>
By default, tables in <productname>PostgreSQL</productname> 8.0
@@ -6968,19 +7290,19 @@ typedefs (Michael)</para></listitem>
</itemizedlist>
</sect2>
-
+
<sect2>
<title>Changes</title>
-
+
<para>
Below you will find a detailed account of the changes between
release 8.0 and the previous major release.
</para>
-
+
<sect3>
<title>Performance Improvements</title>
<itemizedlist>
-
+
<listitem>
<para>
Support cross-data-type index usage (Tom)
@@ -6991,7 +7313,7 @@ typedefs (Michael)</para></listitem>
intuitive and consistent.
</para>
</listitem>
-
+
<listitem>
<para>
New buffer replacement strategy that improves caching (Jan)
@@ -7002,14 +7324,14 @@ typedefs (Michael)</para></listitem>
did not consider the number of times a specific cache entry was
accessed, so large table scans could force out useful cache pages.
The new cache algorithm uses four separate lists to track most
- recently used and most frequently used cache pages and dynamically
+ recently used and most frequently used cache pages and dynamically
optimize their replacement based on the work load. This should
lead to much more efficient use of the shared buffer cache.
Administrators who have tested shared buffer sizes in the past
should retest with this new cache replacement policy.
</para>
</listitem>
-
+
<listitem>
<para>
Add subprocess to write dirty buffers periodically to reduce
@@ -7028,7 +7350,7 @@ typedefs (Michael)</para></listitem>
performance and minimize degradation during checkpoints.
</para>
</listitem>
-
+
<listitem>
<para>
Add ability to prolong vacuum to reduce performance impact (Jan)
@@ -7041,7 +7363,7 @@ typedefs (Michael)</para></listitem>
total duration of <command>VACUUM</command>.
</para>
</listitem>
-
+
<listitem>
<para>
Improve B-tree index performance for duplicate keys (Dmitry Tkach, Tom)
@@ -7051,7 +7373,7 @@ typedefs (Michael)</para></listitem>
values exist in the index.
</para>
</listitem>
-
+
<listitem>
<para>
Use dynamically-generated table size estimates while planning (Tom)
@@ -7068,7 +7390,7 @@ typedefs (Michael)</para></listitem>
changed significantly since the last housekeeping command.
</para>
</listitem>
-
+
<listitem>
<para>
Improved index usage with <literal>OR</> clauses (Tom)
@@ -7080,7 +7402,7 @@ typedefs (Michael)</para></listitem>
column is part of an <literal>OR</> clause.
</para>
</listitem>
-
+
<listitem>
<para>
Improve matching of partial index clauses (Tom)
@@ -7090,7 +7412,7 @@ typedefs (Michael)</para></listitem>
involving complex <option>WHERE</> clauses.
</para>
</listitem>
-
+
<listitem>
<para>
Improve performance of the GEQO optimizer (Tom)
@@ -7101,7 +7423,7 @@ typedefs (Michael)</para></listitem>
analyzed to decrease time spent in optimization.
</para>
</listitem>
-
+
<listitem>
<para>
Miscellaneous optimizer improvements
@@ -7111,7 +7433,7 @@ typedefs (Michael)</para></listitem>
numerous special cases work better than in prior releases.
</para>
</listitem>
-
+
<listitem>
<para>
Improve lookup speed for C functions (Tom)
@@ -7122,7 +7444,7 @@ typedefs (Michael)</para></listitem>
quickly as functions that are built into the server executable.
</para>
</listitem>
-
+
<listitem>
<para>
Add type-specific <command>ANALYZE</command> statistics
@@ -7133,7 +7455,7 @@ typedefs (Michael)</para></listitem>
for nonstandard data types.
</para>
</listitem>
-
+
<listitem>
<para>
<command>ANALYZE</command> now collects statistics for
@@ -7148,7 +7470,7 @@ typedefs (Michael)</para></listitem>
relevant.
</para>
</listitem>
-
+
<listitem>
<para>
New two-stage sampling method for <command>ANALYZE</command>
@@ -7159,7 +7481,7 @@ typedefs (Michael)</para></listitem>
different in different regions of a table.
</para>
</listitem>
-
+
<listitem>
<para>
Speed up <command>TRUNCATE</command> (Tom)
@@ -7169,27 +7491,27 @@ typedefs (Michael)</para></listitem>
keeping <command>TRUNCATE</command> transaction-safe.
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Server Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add WAL file archiving and point-in-time recovery (Simon Riggs)
</para>
</listitem>
-
+
<listitem>
<para>
Add tablespaces so admins can control disk layout (Gavin)
</para>
</listitem>
-
+
<listitem>
<para>
Add a built-in log rotation program (Andreas Pflug)
@@ -7200,7 +7522,7 @@ typedefs (Michael)</para></listitem>
rotation program.
</para>
</listitem>
-
+
<listitem>
<para>
Add new read-only server configuration parameters to show server
@@ -7209,7 +7531,7 @@ typedefs (Michael)</para></listitem>
<varname>max_identifier_length</>, <varname>max_index_keys</> (Joe)
</para>
</listitem>
-
+
<listitem>
<para>
Make quoting of <literal>sameuser</>, <literal>samegroup</>, and
@@ -7217,20 +7539,20 @@ typedefs (Michael)</para></listitem>
<filename>pg_hba.conf</> (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Use clearer IPv6 name <literal>::1/128</> for
<literal>localhost</> in default <filename>pg_hba.conf</> (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Use CIDR format in <filename>pg_hba.conf</> examples (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Rename server configuration parameters <varname>SortMem</> and
@@ -7243,14 +7565,14 @@ typedefs (Michael)</para></listitem>
<varname>work_mem</> is for workspaces used during query execution.
</para>
</listitem>
-
+
<listitem>
<para>
Allow logging of session disconnections using server configuration
<varname>log_disconnections</> (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Add new server configuration parameter <varname>log_line_prefix</> to
@@ -7261,7 +7583,7 @@ typedefs (Michael)</para></listitem>
address, and session start time.
</para>
</listitem>
-
+
<listitem>
<para>
Remove server configuration parameters <varname>log_pid</>,
@@ -7269,7 +7591,7 @@ typedefs (Michael)</para></listitem>
superseded by <varname>log_line_prefix</> (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Replace the <varname>virtual_host</> and <varname>tcpip_socket</>
@@ -7282,7 +7604,7 @@ typedefs (Michael)</para></listitem>
to be specified.
</para>
</listitem>
-
+
<listitem>
<para>
Listen on localhost by default, which eliminates the need for the
@@ -7295,7 +7617,7 @@ typedefs (Michael)</para></listitem>
adjustments.
</para>
</listitem>
-
+
<listitem>
<para>
Remove <varname>syslog</> server configuration parameter, and add more
@@ -7303,7 +7625,7 @@ typedefs (Michael)</para></listitem>
location (Magnus)
</para>
</listitem>
-
+
<listitem>
<para>
Change server configuration parameter <varname>log_statement</> to take
@@ -7315,19 +7637,19 @@ typedefs (Michael)</para></listitem>
only data modification statements.
</para>
</listitem>
-
+
<listitem>
<para>
Some logging-related configuration parameters could formerly be adjusted
by ordinary users, but only in the <quote>more verbose</> direction.
They are now treated more strictly: only superusers can set them.
- However, a superuser may use <command>ALTER USER</> to provide per-user
+ However, a superuser can use <command>ALTER USER</> to provide per-user
settings of these values for non-superusers. Also, it is now possible
for superusers to set values of superuser-only configuration parameters
via <literal>PGOPTIONS</>.
</para>
</listitem>
-
+
<listitem>
<para>
Allow configuration files to be placed outside the data directory (mlw)
@@ -7338,7 +7660,7 @@ typedefs (Michael)</para></listitem>
data directory, easing administration.
</para>
</listitem>
-
+
<listitem>
<para>
Plan prepared queries only when first executed so constants can be
@@ -7355,7 +7677,7 @@ typedefs (Michael)</para></listitem>
without incurring a performance penalty.
</para>
</listitem>
-
+
<listitem>
<para>
Allow <command>DECLARE CURSOR</command> to take parameters
@@ -7368,7 +7690,7 @@ typedefs (Michael)</para></listitem>
execution of the cursor's query.
</para>
</listitem>
-
+
<listitem>
<para>
Fix hash joins and aggregates of <type>inet</type> and
@@ -7381,28 +7703,28 @@ typedefs (Michael)</para></listitem>
data type.)
</para>
</listitem>
-
+
<listitem>
<para>
Make <varname>log_duration</> print only when <varname>log_statement</>
prints the query (Ed L.)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Query Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add savepoints (nested transactions) (Alvaro)
</para>
</listitem>
-
+
<listitem>
<para>
Unsupported isolation levels are now accepted and promoted to the
@@ -7414,7 +7736,7 @@ typedefs (Michael)</para></listitem>
This change complies with that recommendation.
</para>
</listitem>
-
+
<listitem>
<para>
Allow <command>BEGIN WORK</command> to specify transaction
@@ -7422,17 +7744,17 @@ typedefs (Michael)</para></listitem>
(Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Fix table permission checking for cases in which rules generate
a query type different from the originally submitted query (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
- Implement dollar quoting to simplify single-quote usage (Andrew, Tom,
+ Implement dollar quoting to simplify single-quote usage (Andrew, Tom,
David Fetter)
</para>
<para>
@@ -7446,7 +7768,7 @@ typedefs (Michael)</para></listitem>
Dollar quoting can be used anywhere quoted text is needed.
</para>
</listitem>
-
+
<listitem>
<para>
Make <literal>CASE val WHEN compval1 THEN ...</> evaluate <literal>val</> only once (Tom)
@@ -7457,7 +7779,7 @@ typedefs (Michael)</para></listitem>
volatile.
</para>
</listitem>
-
+
<listitem>
<para>
Test <option>HAVING</> before computing target list of an
@@ -7469,7 +7791,7 @@ typedefs (Michael)</para></listitem>
could fail with divide-by-zero.
</para>
</listitem>
-
+
<listitem>
<para>
Replace <varname>max_expr_depth</> parameter with
@@ -7477,12 +7799,12 @@ typedefs (Michael)</para></listitem>
size (Tom)
</para>
<para>
- This gives us a fairly bulletproof defense against crashing due to
+ This gives us a fairly bulletproof defense against crashing due to
runaway recursive functions. Instead of measuring the depth of expression
nesting, we now directly measure the size of the execution stack.
</para>
</listitem>
-
+
<listitem>
<para>
Allow arbitrary row expressions (Tom)
@@ -7493,14 +7815,14 @@ typedefs (Michael)</para></listitem>
take rows as arguments and return row values.
</para>
</listitem>
-
+
<listitem>
<para>
Allow <option>LIKE</>/<option>ILIKE</> to be used as the operator
in row and subselect comparisons (Fabien Coelho)
</para>
</listitem>
-
+
<listitem>
<para>
Avoid locale-specific case conversion of basic ASCII letters in
@@ -7512,7 +7834,7 @@ typedefs (Michael)</para></listitem>
outside the 7-bit-ASCII set is still locale-aware.
</para>
</listitem>
-
+
<listitem>
<para>
Improve syntax error reporting (Fabien, Tom)
@@ -7521,7 +7843,7 @@ typedefs (Michael)</para></listitem>
Syntax error reports are more useful than before.
</para>
</listitem>
-
+
<listitem>
<para>
Change <command>EXECUTE</command> to return a completion tag
@@ -7533,7 +7855,7 @@ typedefs (Michael)</para></listitem>
returned will reflect the command executed.
</para>
</listitem>
-
+
<listitem>
<para>
Avoid emitting <option>NATURAL CROSS JOIN</> in rule listings (Tom)
@@ -7543,22 +7865,22 @@ typedefs (Michael)</para></listitem>
decompiler formerly produced this syntax.
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Object Manipulation Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Add <command>COMMENT ON</> for casts, conversions, languages,
operator classes, and large objects (Christopher)
</para>
</listitem>
-
+
<listitem>
<para>
Add new server configuration parameter <varname>default_with_oids</> to
@@ -7572,14 +7894,14 @@ typedefs (Michael)</para></listitem>
will become <literal>FALSE</> in future releases.)
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>WITH</> / <option>WITHOUT OIDS</> clause to
<command>CREATE TABLE AS</command> (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <command>ALTER TABLE DROP COLUMN</> to drop an <type>OID</>
@@ -7587,13 +7909,13 @@ typedefs (Michael)</para></listitem>
(Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Allow composite types as table columns (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <command>ALTER ... ADD COLUMN</> with defaults and
@@ -7605,7 +7927,7 @@ typedefs (Michael)</para></listitem>
default value.
</para>
</listitem>
-
+
<listitem>
<para>
Add <command>ALTER COLUMN TYPE</> to change column's type (Rod)
@@ -7615,7 +7937,7 @@ typedefs (Michael)</para></listitem>
and re-adding the column.
</para>
</listitem>
-
+
<listitem>
<para>
Allow multiple <command>ALTER</> actions in a single <command>ALTER
@@ -7629,7 +7951,7 @@ typedefs (Michael)</para></listitem>
only once.
</para>
</listitem>
-
+
<listitem>
<para>
Allow <command>ALTER TABLE</command> to add <type>SERIAL</type>
@@ -7640,7 +7962,7 @@ typedefs (Michael)</para></listitem>
columns.
</para>
</listitem>
-
+
<listitem>
<para>
Allow changing the owners of aggregates, conversions, databases,
@@ -7651,14 +7973,14 @@ typedefs (Michael)</para></listitem>
Previously this required modifying the system tables directly.
</para>
</listitem>
-
+
<listitem>
<para>
Allow temporary object creation to be limited to <option>SECURITY
DEFINER</> functions (Sean Chittenden)
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>ALTER TABLE ... SET WITHOUT CLUSTER</> (Christopher)
@@ -7668,7 +7990,7 @@ typedefs (Michael)</para></listitem>
specification except to modify the system tables.
</para>
</listitem>
-
+
<listitem>
<para>
Constraint/Index/<type>SERIAL</> names are now
@@ -7681,7 +8003,7 @@ typedefs (Michael)</para></listitem>
within a schema.
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>pg_get_serial_sequence()</> to return a
@@ -7692,43 +8014,43 @@ typedefs (Michael)</para></listitem>
sequence name.
</para>
</listitem>
-
+
<listitem>
<para>
Warn when primary/foreign key data type mismatch requires costly lookup
</para>
</listitem>
-
+
<listitem>
<para>
New <command>ALTER INDEX</> command to allow moving of indexes
between tablespaces (Gavin)
</para>
</listitem>
-
+
<listitem>
<para>
Make <command>ALTER TABLE OWNER</> change dependent sequence
ownership too (Alvaro)
</para>
</listitem>
-
-
+
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Utility Command Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Allow <command>CREATE SCHEMA</command> to create triggers,
indexes, and sequences (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>ALSO</> keyword to <command>CREATE RULE</command> (Fabien
@@ -7739,7 +8061,7 @@ typedefs (Michael)</para></listitem>
<option>INSTEAD</> rules.
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>NOWAIT</> option to <command>LOCK</command> (Tatsuo)
@@ -7749,28 +8071,28 @@ typedefs (Michael)</para></listitem>
would have to wait for the requested lock.
</para>
</listitem>
-
+
<listitem>
<para>
Allow <command>COPY</command> to read and write
comma-separated-value (CSV) files (Andrew, Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Generate error if the <command>COPY</command> delimiter and NULL
string conflict (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
<command>GRANT</command>/<command>REVOKE</command> behavior
follows the SQL spec more closely
</para>
</listitem>
-
+
<listitem>
<para>
Avoid locking conflict between <command>CREATE INDEX</command>
@@ -7782,7 +8104,7 @@ typedefs (Michael)</para></listitem>
WAL log could not be recycled.
</para>
</listitem>
-
+
<listitem>
<para>
Database-wide <command>ANALYZE</command> does not hold locks
@@ -7797,7 +8119,7 @@ typedefs (Michael)</para></listitem>
table.
</para>
</listitem>
-
+
<listitem>
<para>
<command>REINDEX</command> does not exclusively lock the index's
@@ -7809,7 +8131,7 @@ typedefs (Michael)</para></listitem>
being rebuilt.
</para>
</listitem>
-
+
<listitem>
<para>
Erase MD5 user passwords when a user is renamed (Bruce)
@@ -7823,7 +8145,7 @@ typedefs (Michael)</para></listitem>
be assigned if the user is to be able to log in with a password.
</para>
</listitem>
-
+
<listitem>
<para>
New <application>pg_ctl</> <option>kill</> option for Windows (Andrew)
@@ -7833,13 +8155,13 @@ typedefs (Michael)</para></listitem>
backends so this capability was added to <application>pg_ctl</>.
</para>
</listitem>
-
+
<listitem>
<para>
Information schema improvements
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>--pwfile</> option to
@@ -7847,29 +8169,29 @@ typedefs (Michael)</para></listitem>
set by GUI tools (Magnus)
</para>
</listitem>
-
+
<listitem>
<para>
Detect locale/encoding mismatch in
<application>initdb</application> (Peter)
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>register</> command to <application>pg_ctl</> to
register Windows operating system service (Dave Page)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Data Type and Function Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
More complete support for composite types (row types) (Tom)
@@ -7879,7 +8201,7 @@ typedefs (Michael)</para></listitem>
worked before.
</para>
</listitem>
-
+
<listitem>
<para>
Reject nonrectangular array values as erroneous (Joe)
@@ -7889,13 +8211,13 @@ typedefs (Michael)</para></listitem>
surprising result.
</para>
</listitem>
-
+
<listitem>
<para>
Overflow in integer arithmetic operations is now detected (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
The arithmetic operators associated with the single-byte
@@ -7909,7 +8231,7 @@ typedefs (Michael)</para></listitem>
integer explicitly.
</para>
</listitem>
-
+
<listitem>
<para>
Syntax checking of array input values considerably tightened up (Joe)
@@ -7920,7 +8242,7 @@ typedefs (Michael)</para></listitem>
after the closing right brace.
</para>
</listitem>
-
+
<listitem>
<para>
Empty-string array element values must now be written as
@@ -7933,7 +8255,7 @@ typedefs (Michael)</para></listitem>
element value in some future release.
</para>
</listitem>
-
+
<listitem>
<para>
Array element trailing whitespace is now ignored (Joe)
@@ -7944,27 +8266,27 @@ typedefs (Michael)</para></listitem>
significant. Now trailing whitespace is also ignored.
</para>
</listitem>
-
+
<listitem>
<para>
Emit array values with explicit array bounds when lower bound is not one
(Joe)
</para>
</listitem>
-
+
<listitem>
<para>
Accept <literal>YYYY-monthname-DD</> as a date string (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Make <function>netmask</> and <function>hostmask</> functions
return maximum-length mask length (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Change factorial function to return <type>numeric</type> (Gavin)
@@ -7974,14 +8296,14 @@ typedefs (Michael)</para></listitem>
work for a wider range of input values.
</para>
</listitem>
-
+
<listitem>
<para>
<function>to_char</>/<function>to_date()</> date conversion
improvements (Kurt Roeckx, Fabien Coelho)
</para>
</listitem>
-
+
<listitem>
<para>
Make <function>length()</> disregard trailing spaces in
@@ -7993,7 +8315,7 @@ typedefs (Michael)</para></listitem>
should not be counted by <function>length()</>.
</para>
</listitem>
-
+
<listitem>
<para>
Warn about empty string being passed to
@@ -8003,7 +8325,7 @@ typedefs (Michael)</para></listitem>
8.1 will throw an error instead.
</para>
</listitem>
-
+
<listitem>
<para>
Allow leading or trailing whitespace in
@@ -8012,7 +8334,7 @@ typedefs (Michael)</para></listitem>
(Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Better support for IEEE <literal>Infinity</> and <literal>NaN</>
@@ -8023,27 +8345,27 @@ typedefs (Michael)</para></listitem>
floating point arithmetic.
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>week</> option to <function>date_trunc()</> (Robert Creager)
</para>
</listitem>
-
+
<listitem>
<para>
Fix <function>to_char</function> for <literal>1 BC</>
(previously it returned <literal>1 AD</>) (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Fix <function>date_part(year)</> for BC dates (previously it
returned one less than the correct year) (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Fix <function>date_part()</> to return the proper millennium and
@@ -8055,7 +8377,7 @@ typedefs (Michael)</para></listitem>
reckoning of such things.
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>ceiling()</> as an alias for <function>ceil()</>,
@@ -8063,7 +8385,7 @@ typedefs (Michael)</para></listitem>
standards compliance (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Change <function>ln()</>, <function>log()</>,
@@ -8072,53 +8394,53 @@ typedefs (Michael)</para></listitem>
specified by SQL:2003 (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>width_bucket()</> function as defined by SQL:2003 (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>generate_series()</> functions to simplify working
with numeric sets (Joe)
</para>
</listitem>
-
+
<listitem>
<para>
Fix <function>upper/lower/initcap()</> functions to work with
multibyte encodings (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Add boolean and bitwise integer <option>AND</>/<option>OR</>
aggregates (Fabien Coelho)
</para>
</listitem>
-
+
<listitem>
<para>
New session information functions to return network addresses for client
and server (Sean Chittenden)
</para>
</listitem>
-
+
<listitem>
<para>
Add function to determine the area of a closed path (Sean Chittenden)
</para>
</listitem>
-
+
<listitem>
<para>
Add function to send cancel request to other backends (Magnus)
</para>
</listitem>
-
+
<listitem>
<para>
Add <type>interval</> plus <type>datetime</> operators (Tom)
@@ -8128,7 +8450,7 @@ typedefs (Michael)</para></listitem>
was already supported, but both are required by the SQL standard.
</para>
</listitem>
-
+
<listitem>
<para>
Casting an integer to <type>BIT(N)</> selects the rightmost N bits
@@ -8141,22 +8463,22 @@ typedefs (Michael)</para></listitem>
to int.
</para>
</listitem>
-
+
<listitem>
<para>
Require <type>CIDR</> values to have all nonmasked bits be zero
(Kevin Brintnall)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Server-Side Language Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
In <literal>READ COMMITTED</> serialization mode, volatile functions
@@ -8165,7 +8487,7 @@ typedefs (Michael)</para></listitem>
beginning of the interactive command that called the function.
</para>
</listitem>
-
+
<listitem>
<para>
Functions declared <literal>STABLE</> or <literal>IMMUTABLE</> always
@@ -8178,7 +8500,7 @@ typedefs (Michael)</para></listitem>
rather than <literal>VOLATILE</>.
</para>
</listitem>
-
+
<listitem>
<para>
Nondeferred <option>AFTER</> triggers are now fired immediately
@@ -8191,7 +8513,7 @@ typedefs (Michael)</para></listitem>
function.
</para>
</listitem>
-
+
<listitem>
<para>
Allow function parameters to be declared with names (Dennis Bj&ouml;rklund)
@@ -8202,7 +8524,7 @@ typedefs (Michael)</para></listitem>
being used.
</para>
</listitem>
-
+
<listitem>
<para>
Allow PL/pgSQL parameter names to be referenced in the function (Dennis Bj&ouml;rklund)
@@ -8211,7 +8533,7 @@ typedefs (Michael)</para></listitem>
This basically creates an automatic alias for each named parameter.
</para>
</listitem>
-
+
<listitem>
<para>
Do minimal syntax checking of PL/pgSQL functions at creation time (Tom)
@@ -8220,7 +8542,7 @@ typedefs (Michael)</para></listitem>
This allows us to catch simple syntax errors sooner.
</para>
</listitem>
-
+
<listitem>
<para>
More support for composite types (row and record variables) in PL/pgSQL
@@ -8230,14 +8552,14 @@ typedefs (Michael)</para></listitem>
as a single variable.
</para>
</listitem>
-
+
<listitem>
<para>
Default values for PL/pgSQL variables can now reference previously
declared variables
</para>
</listitem>
-
+
<listitem>
<para>
Improve parsing of PL/pgSQL FOR loops (Tom)
@@ -8249,13 +8571,13 @@ typedefs (Michael)</para></listitem>
messages when a mistake is made.
</para>
</listitem>
-
+
<listitem>
<para>
Major overhaul of PL/Perl server-side language (Command Prompt, Andrew Dunstan)
</para>
</listitem>
-
+
<listitem>
<para>
In PL/Tcl, SPI commands are now run in subtransactions. If an error
@@ -8264,7 +8586,7 @@ typedefs (Michael)</para></listitem>
Formerly, it was not possible to catch such errors.
</para>
</listitem>
-
+
<listitem>
<para>
Accept <command>ELSEIF</> in PL/pgSQL (Neil)
@@ -8274,63 +8596,63 @@ typedefs (Michael)</para></listitem>
are accustomed to spelling this keyword <command>ELSEIF</>.
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title><application>psql</> Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Improve <application>psql</> information display about database
objects (Christopher)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <application>psql</> to display group membership in
<command>\du</> and <command>\dg</> (Markus Bertheau)
</para>
</listitem>
-
+
<listitem>
<para>
Prevent <application>psql</> <command>\dn</command> from showing
temporary schemas (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <application>psql</> to handle tilde user expansion for file
names (Zach Irmen)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <application>psql</> to display fancy prompts, including
color, via <application>readline</> (Reece Hart, Chet Ramey)
</para>
</listitem>
-
+
<listitem>
<para>
Make <application>psql</> <command>\copy</> match <command>COPY</command> command syntax
fully (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Show the location of syntax errors (Fabien Coelho, Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Add <command>CLUSTER</command> information to <application>psql</>
@@ -8338,14 +8660,14 @@ typedefs (Michael)</para></listitem>
(Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Change <application>psql</> <command>\copy stdin/stdout</> to read
from command input/output (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>pstdin</>/<option>pstdout</> to read from
@@ -8353,7 +8675,7 @@ typedefs (Michael)</para></listitem>
Feit)
</para>
</listitem>
-
+
<listitem>
<para>
Add global <application>psql</> configuration file, <filename>psqlrc.sample</filename>
@@ -8364,48 +8686,48 @@ typedefs (Michael)</para></listitem>
be stored.
</para>
</listitem>
-
+
<listitem>
<para>
Have <application>psql</> <command>\d+</> indicate if the table
has an <type>OID</> column (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
On Windows, use binary mode in <application>psql</> when reading files so control-Z
is not seen as end-of-file
</para>
</listitem>
-
+
<listitem>
<para>
Have <command>\dn+</> show permissions and description for schemas (Dennis
Bj&ouml;rklund)
</para>
</listitem>
-
+
<listitem>
<para>
Improve tab completion support (Stefan Kaltenbrunn, Greg Sabino Mullane)
</para>
</listitem>
-
+
<listitem>
<para>
Allow boolean settings to be set using upper or lower case (Michael Paesold)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title><application>pg_dump</> Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Use dependency information to improve the reliability of
@@ -8416,7 +8738,7 @@ typedefs (Michael)</para></listitem>
sometimes being dumped in the wrong order.
</para>
</listitem>
-
+
<listitem>
<para>
Have <application>pg_dump</> output objects in alphabetical order if possible (Tom)
@@ -8426,7 +8748,7 @@ typedefs (Michael)</para></listitem>
dump files.
</para>
</listitem>
-
+
<listitem>
<para>
Allow <application>pg_restore</> to ignore some SQL errors (Fabien Coelho)
@@ -8439,20 +8761,20 @@ typedefs (Michael)</para></listitem>
option to give the old behavior of exiting on an error.
</para>
</listitem>
-
+
<listitem>
<para>
<application>pg_restore</> <option>-l</> display now includes
objects' schema names
</para>
</listitem>
-
+
<listitem>
<para>
New begin/end markers in <application>pg_dump</> text output (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Add start/stop times for
@@ -8460,14 +8782,14 @@ typedefs (Michael)</para></listitem>
(Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Allow most <application>pg_dump</> options in
<application>pg_dumpall</> (Christopher)
</para>
</listitem>
-
+
<listitem>
<para>
Have <application>pg_dump</> use <command>ALTER OWNER</> rather
@@ -8475,35 +8797,35 @@ typedefs (Michael)</para></listitem>
(Christopher)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>libpq Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Make libpq's <option>SIGPIPE</> handling thread-safe (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>PQmbdsplen()</> which returns the display length
of a character (Tatsuo)
</para>
</listitem>
-
+
<listitem>
<para>
Add thread locking to <application>SSL</> and
<application>Kerberos</> connections (Manfred Spraul)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <function>PQoidValue()</>, <function>PQcmdTuples()</>, and
@@ -8511,14 +8833,14 @@ typedefs (Michael)</para></listitem>
commands (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>PQserverVersion()</> to provide more convenient
access to the server version number (Greg Sabino Mullane)
</para>
</listitem>
-
+
<listitem>
<para>
Add <function>PQprepare/PQsendPrepared()</> functions to support
@@ -8526,33 +8848,33 @@ typedefs (Michael)</para></listitem>
of their parameters (Abhijit Menon-Sen)
</para>
</listitem>
-
+
<listitem>
<para>
Many ECPG improvements, including <command>SET DESCRIPTOR</> (Michael)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Source Code Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Allow the database server to run natively on Windows (Claudio, Magnus, Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Shell script commands converted to C versions for Windows support (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Create an extension makefile framework (Fabien Coelho, Peter)
@@ -8562,7 +8884,7 @@ typedefs (Michael)</para></listitem>
source tree.
</para>
</listitem>
-
+
<listitem>
<para>
Support relocatable installations (Bruce)
@@ -8575,26 +8897,26 @@ typedefs (Michael)</para></listitem>
rebuilding.
</para>
</listitem>
-
+
<listitem>
<para>
Use <option>--with-docdir</> to choose installation location of documentation; also
allow <option>--infodir</> (Peter)
</para>
</listitem>
-
+
<listitem>
<para>
Add <option>--without-docdir</> to prevent installation of documentation (Peter)
</para>
</listitem>
-
+
<listitem>
<para>
Upgrade to <application>DocBook</> V4.2 SGML (Peter)
</para>
</listitem>
-
+
<listitem>
<para>
New <literal>PostgreSQL</> <application>CVS</> tag (Marc)
@@ -8607,116 +8929,116 @@ typedefs (Michael)</para></listitem>
repository.
</para>
</listitem>
-
+
<listitem>
<para>
Clarify locking code (Manfred Koizar)
</para>
</listitem>
-
+
<listitem>
<para>
Buffer manager cleanup (Neil)
</para>
</listitem>
-
+
<listitem>
<para>
Decouple platform tests from CPU spinlock code (Bruce, Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Add inlined test-and-set code on PA-RISC for <application>gcc</>
(ViSolve, Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Improve i386 spinlock code (Manfred Spraul)
</para>
</listitem>
-
+
<listitem>
<para>
Clean up spinlock assembly code to avoid warnings from newer
<application>gcc</> releases (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Remove JDBC from source tree; now a separate project
</para>
</listitem>
-
+
<listitem>
<para>
Remove the libpgtcl client interface; now a separate project
</para>
</listitem>
-
+
<listitem>
<para>
More accurately estimate memory and file descriptor usage (Tom)
</para>
</listitem>
-
+
<listitem>
<para>
Improvements to the Mac OS X startup scripts (Ray A.)
</para>
</listitem>
-
+
<listitem>
<para>
New <function>fsync()</> test program (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Major documentation improvements (Neil, Peter)
</para>
</listitem>
-
+
<listitem>
<para>
Remove <application>pg_encoding</application>; not needed
anymore
</para>
</listitem>
-
+
<listitem>
<para>
Remove <application>pg_id</application>; not needed anymore
</para>
</listitem>
-
+
<listitem>
<para>
Remove <application>initlocation</application>; not needed
anymore
</para>
</listitem>
-
+
<listitem>
<para>
Auto-detect thread flags (no more manual testing) (Bruce)
</para>
</listitem>
-
+
<listitem>
<para>
Use Olson's public domain <application>timezone</> library (Magnus)
</para>
</listitem>
-
+
<listitem>
<para>
- With threading enabled, use thread flags on Unixware for
+ With threading enabled, use thread flags on Unixware for
backend executables too (Bruce)
</para>
<para>
@@ -8724,14 +9046,14 @@ typedefs (Michael)</para></listitem>
same executable, so everything must be compiled as threaded.
</para>
</listitem>
-
+
<listitem>
<para>
<application>psql</> now uses a <application>flex</>-generated
lexical analyzer to process command strings
</para>
</listitem>
-
+
<listitem>
<para>
Reimplement the linked list data structure used throughout the
@@ -8742,123 +9064,192 @@ typedefs (Michael)</para></listitem>
operations to be more efficient.
</para>
</listitem>
-
+
<listitem>
<para>
Allow dynamically loaded modules to create their own server configuration
parameters (Thomas Hallgren)
</para>
</listitem>
-
+
<listitem>
<para>
New Brazilian version of FAQ (Euler Taveira de Oliveira)
</para>
</listitem>
-
+
<listitem>
<para>
Add French FAQ (Guillaume Lelarge)
</para>
</listitem>
-
+
<listitem>
<para>
New <application>pgevent</> for Windows logging
</para>
</listitem>
-
+
<listitem>
<para>
Make libpq and ECPG build as proper shared libraries on OS X (Tom)
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
-
+
+
<sect3>
<title>Contrib Changes</title>
<itemizedlist>
-
+
<listitem>
<para>
Overhaul of <filename>contrib/dblink</> (Joe)
</para>
</listitem>
-
+
<listitem>
<para>
<filename>contrib/dbmirror</> improvements (Steven Singer)
</para>
</listitem>
-
+
<listitem>
<para>
New <filename>contrib/xml2</> (John Gray, Torchbox)
</para>
</listitem>
-
+
<listitem>
<para>
Updated <filename>contrib/mysql</filename>
</para>
</listitem>
-
+
<listitem>
<para>
New version of <filename>contrib/btree_gist</> (Teodor)
</para>
</listitem>
-
+
<listitem>
<para>
New <filename>contrib/trgm</>, trigram matching for
<productname>PostgreSQL</productname> (Teodor)
</para>
</listitem>
-
+
<listitem>
<para>
Many <filename>contrib/tsearch2</> improvements (Teodor)
</para>
</listitem>
-
+
<listitem>
<para>
Add double metaphone to <filename>contrib/fuzzystrmatch</> (Andrew)
</para>
</listitem>
-
+
<listitem>
<para>
Allow <filename>contrib/pg_autovacuum</> to run as a Windows service (Dave Page)
</para>
</listitem>
-
+
<listitem>
<para>
Add functions to <filename>contrib/dbsize</> (Andreas Pflug)
</para>
</listitem>
-
+
<listitem>
<para>
Removed <filename>contrib/pg_logger</>: obsoleted by integrated logging
subprocess
</para>
</listitem>
-
+
<listitem>
<para>
Removed <filename>contrib/rserv</>: obsoleted by various separate projects
</para>
</listitem>
-
+
</itemizedlist>
</sect3>
-
+
+ </sect2>
+ </sect1>
+
+ <sect1 id="release-7-4-16">
+ <title>Release 7.4.16</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 7.4.15, including
+ a security fix.
+ </para>
+
+ <sect2>
+ <title>Migration to version 7.4.16</title>
+
+ <para>
+ A dump/restore is not required for those running 7.4.X. However,
+ if you are upgrading from a version earlier than 7.4.11, see the release
+ notes for 7.4.11.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Remove security vulnerability that allowed connected users
+ to read backend memory (Tom)
+ </para>
+ <para>
+ The vulnerability involves suppressing the normal check that a SQL
+ function returns the data type it's declared to, or changing the
+ data type of a table column used in a SQL function (CVE-2007-0555).
+ This error can easily be exploited to cause a backend crash, and in
+ principle might be used to read database content that the user
+ should not be able to access.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix rare bug wherein btree index page splits could fail
+ due to choosing an infeasible split point (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix for rare Assert() crash triggered by <literal>UNION</> (Tom)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Tighten security of multi-byte character processing for UTF8 sequences
+ over three bytes long (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
</sect2>
</sect1>
@@ -8950,7 +9341,7 @@ typedefs (Michael)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-14">
<title>Release 7.4.14</title>
@@ -8995,7 +9386,7 @@ ANYARRAY</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-13">
<title>Release 7.4.13</title>
@@ -9020,7 +9411,7 @@ ANYARRAY</para></listitem>
<para>
Full security against the SQL-injection attacks described in
- CVE-2006-2313 and CVE-2006-2314 may require changes in application
+ CVE-2006-2313 and CVE-2006-2314 might require changes in application
code. If you have applications that embed untrustworthy strings
into SQL commands, you should examine them as soon as possible to
ensure that they are using recommended escaping techniques. In
@@ -9052,7 +9443,7 @@ literals. By default, <literal>\'</> is rejected only when
GB18030, or UHC), which is the scenario in which SQL injection is possible.
A new configuration parameter <varname>backslash_quote</> is available to
adjust this behavior when needed. Note that full security against
-CVE-2006-2314 may require client-side changes; the purpose of
+CVE-2006-2314 might require client-side changes; the purpose of
<varname>backslash_quote</> is in part to make it obvious that insecure
clients are insecure.
</para></listitem>
@@ -9100,7 +9491,7 @@ Fuhr)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-12">
<title>Release 7.4.12</title>
@@ -9125,7 +9516,7 @@ Fuhr)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix potential crash in <command>SET
@@ -9161,7 +9552,7 @@ and <function>isinf</> during configure (Tom)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-11">
<title>Release 7.4.11</title>
@@ -9189,7 +9580,7 @@ and <function>isinf</> during configure (Tom)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix for protocol-level Describe messages issued
@@ -9205,7 +9596,7 @@ to ensure that <application>plperl</> won't change the locale later</para>
<para>This fixes a problem that occurred if the <application>postmaster</> was
started with environment variables specifying a different locale than what
<application>initdb</> had been told. Under these conditions, any use of
-<application>plperl</> was likely to lead to corrupt indexes. You may need
+<application>plperl</> was likely to lead to corrupt indexes. You might need
<command>REINDEX</> to fix existing indexes on
textual columns if this has happened to you.</para></listitem>
@@ -9226,7 +9617,7 @@ what's actually returned by the query (Joe)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-10">
<title>Release 7.4.10</title>
@@ -9251,7 +9642,7 @@ what's actually returned by the query (Joe)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix race condition in transaction log management</para>
@@ -9277,7 +9668,7 @@ table has been dropped</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-9">
<title>Release 7.4.9</title>
@@ -9344,7 +9735,7 @@ code</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-4-8">
<title>Release 7.4.8</title>
@@ -9391,7 +9782,7 @@ code</para></listitem>
It is strongly recommended that all installations repair these errors,
either by initdb or by following the manual repair procedures given
below. The errors at least allow unprivileged database users to crash
- their server process, and may allow unprivileged users to gain the
+ their server process, and might allow unprivileged users to gain the
privileges of a database superuser.
</para>
@@ -9409,7 +9800,7 @@ WHERE pronamespace = 11 AND pronargs = 5
COMMIT;
</programlisting>
- Next, if you have installed <filename>contrib/tsearch2</>, do
+ Next, if you have installed <filename>contrib/tsearch2</>, do:
<programlisting>
BEGIN;
@@ -9438,12 +9829,12 @@ COMMIT;
template databases then any subsequently created databases will contain
the same errors. <literal>template1</> can be fixed in the same way
as any other database, but fixing <literal>template0</> requires
- additional steps. First, from any database issue
+ additional steps. First, from any database issue:
<programlisting>
UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
</programlisting>
Next connect to <literal>template0</> and perform the above repair
- procedures. Finally, do
+ procedures. Finally, do:
<programlisting>
-- re-freeze template0:
VACUUM FREEZE;
@@ -9612,7 +10003,7 @@ GMT</para></listitem>
<itemizedlist>
<listitem><para>Repair possible failure to update hint bits on disk</para>
<para>
-Under rare circumstances this oversight could lead to
+Under rare circumstances this oversight could lead to
<quote>could not access transaction status</> failures, which qualifies
it as a potential-data-loss bug.
</para></listitem>
@@ -9772,7 +10163,7 @@ aggregate plan</para></listitem>
<listitem><para>Fix error in COPY IN termination when using the old network protocol (ljb)</para></listitem>
<listitem><para>Several important fixes in pg_autovacuum, including fixes for
large tables, unsigned oids, stability, temp tables, and debug mode
-(Matthew T. O'Connor)</para></listitem>
+(Matthew T. O'Connor)</para></listitem>
<listitem><para>Fix problem with reading tar-format dumps on NetBSD and BSD/OS (Bruce)</para></listitem>
<listitem><para>Several JDBC fixes</para></listitem>
<listitem><para>Fix ALTER SEQUENCE RESTART where last_value equals the restart value (Tom)</para></listitem>
@@ -9815,7 +10206,7 @@ names from outer query levels.
<para>
A dump/restore is not required for those running 7.4.X. However,
- it may be advisable as the easiest method of incorporating fixes for
+ it might be advisable as the easiest method of incorporating fixes for
two errors that have been found in the initial contents of 7.4.X system
catalogs. A dump/initdb/reload sequence using 7.4.2's initdb will
automatically correct these problems.
@@ -9855,7 +10246,7 @@ VACUUM pg_statistic;
UPDATE pg_type SET typalign = 'd' WHERE oid = 2277;
-- this should update 6 rows:
UPDATE pg_attribute SET attalign = 'd' WHERE atttypid = 2277;
---
+--
-- At this point you MUST start a fresh backend to avoid a crash!
--
-- repopulate pg_statistic:
@@ -9881,12 +10272,12 @@ GRANT SELECT, UPDATE ON pg_settings TO PUBLIC;
template databases then any subsequently created databases will contain
the same errors. <literal>template1</> can be fixed in the same way
as any other database, but fixing <literal>template0</> requires
- additional steps. First, from any database issue
+ additional steps. First, from any database issue:
<programlisting>
UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
</programlisting>
Next connect to <literal>template0</> and perform the above repair
- procedures. Finally, do
+ procedures. Finally, do:
<programlisting>
-- re-freeze template0:
VACUUM FREEZE;
@@ -9926,7 +10317,7 @@ inconveniences associated with the <literal>i/I</> problem.</para></listitem>
<listitem><para>Other minor pg_dump fixes</para></listitem>
<listitem><para>Allow ecpg to again use C keywords as column names (Michael)</para></listitem>
<listitem><para>Added ecpg <literal>WHENEVER NOT_FOUND</> to
-<literal>SELECT/INSERT/UPDATE/DELETE</> (Michael)</para></listitem>
+<literal>SELECT/INSERT/UPDATE/DELETE</> (Michael)</para></listitem>
<listitem><para>Fix ecpg crash for queries calling set-returning functions (Michael)</para></listitem>
<listitem><para>Various other ecpg fixes (Michael)</para></listitem>
<listitem><para>Fixes for Borland compiler</para></listitem>
@@ -10333,13 +10724,13 @@ DROP SCHEMA information_schema CASCADE;
<sect2>
<title>Migration to version 7.4</title>
-
+
<para>
A dump/restore using <application>pg_dump</application> is
required for those wishing to migrate data from any previous
release.
</para>
-
+
<para>
Observe the following incompatibilities:
</para>
@@ -10369,7 +10760,7 @@ DROP SCHEMA information_schema CASCADE;
<listitem>
<para>
Inner joins using the explicit <literal>JOIN</literal> syntax
- may behave differently because they are now better
+ might behave differently because they are now better
optimized.
</para>
</listitem>
@@ -11336,7 +11727,7 @@ DROP SCHEMA information_schema CASCADE;
<listitem>
<para>
- Arrays may now be specified as <literal>ARRAY[1,2,3]</literal>,
+ Arrays can now be specified as <literal>ARRAY[1,2,3]</literal>,
<literal>ARRAY[['a','b'],['c','d']]</literal>, or
<literal>ARRAY[ARRAY[ARRAY[2]]]</literal> (Joe)
</para>
@@ -11910,6 +12301,68 @@ DROP SCHEMA information_schema CASCADE;
</sect2>
</sect1>
+ <sect1 id="release-7-3-18">
+ <title>Release 7.3.18</title>
+
+ <note>
+ <title>Release date</title>
+ <simpara>2007-02-05</simpara>
+ </note>
+
+ <para>
+ This release contains a variety of fixes from 7.3.17, including
+ a security fix.
+ </para>
+
+ <sect2>
+ <title>Migration to version 7.3.18</title>
+
+ <para>
+ A dump/restore is not required for those running 7.3.X. However,
+ if you are upgrading from a version earlier than 7.3.13, see the release
+ notes for 7.3.13.
+ </para>
+
+ </sect2>
+
+ <sect2>
+ <title>Changes</title>
+
+ <itemizedlist>
+
+ <listitem>
+ <para>
+ Remove security vulnerability that allowed connected users
+ to read backend memory (Tom)
+ </para>
+ <para>
+ The vulnerability involves changing the
+ data type of a table column used in a SQL function (CVE-2007-0555).
+ This error can easily be exploited to cause a backend crash, and in
+ principle might be used to read database content that the user
+ should not be able to access.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Fix rare bug wherein btree index page splits could fail
+ due to choosing an infeasible split point (Heikki Linnakangas)
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Tighten security of multi-byte character processing for UTF8 sequences
+ over three bytes long (Tom)
+ </para>
+ </listitem>
+
+ </itemizedlist>
+
+ </sect2>
+ </sect1>
+
<sect1 id="release-7-3-17">
<title>Release 7.3.17</title>
@@ -11967,7 +12420,7 @@ DROP SCHEMA information_schema CASCADE;
</sect2>
</sect1>
-
+
<sect1 id="release-7-3-16">
<title>Release 7.3.16</title>
@@ -11994,7 +12447,7 @@ DROP SCHEMA information_schema CASCADE;
<sect2>
<title>Changes</title>
-<itemizedlist>
+<itemizedlist>
<listitem><para>Fix corner cases in pattern matching for
<application>psql</>'s <literal>\d</> commands</para></listitem>
<listitem><para>Fix index-corrupting bugs in /contrib/ltree
@@ -12009,7 +12462,7 @@ DROP SCHEMA information_schema CASCADE;
</sect2>
</sect1>
-
+
<sect1 id="release-7-3-15">
<title>Release 7.3.15</title>
@@ -12034,7 +12487,7 @@ DROP SCHEMA information_schema CASCADE;
<para>
Full security against the SQL-injection attacks described in
- CVE-2006-2313 and CVE-2006-2314 may require changes in application
+ CVE-2006-2313 and CVE-2006-2314 might require changes in application
code. If you have applications that embed untrustworthy strings
into SQL commands, you should examine them as soon as possible to
ensure that they are using recommended escaping techniques. In
@@ -12066,7 +12519,7 @@ literals. By default, <literal>\'</> is rejected only when
GB18030, or UHC), which is the scenario in which SQL injection is possible.
A new configuration parameter <varname>backslash_quote</> is available to
adjust this behavior when needed. Note that full security against
-CVE-2006-2314 may require client-side changes; the purpose of
+CVE-2006-2314 might require client-side changes; the purpose of
<varname>backslash_quote</> is in part to make it obvious that insecure
clients are insecure.
</para></listitem>
@@ -12101,7 +12554,7 @@ Fuhr)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-3-14">
<title>Release 7.3.14</title>
@@ -12126,7 +12579,7 @@ Fuhr)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix potential crash in <command>SET
@@ -12158,7 +12611,7 @@ and <function>isinf</> during configure (Tom)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-3-13">
<title>Release 7.3.13</title>
@@ -12186,7 +12639,7 @@ and <function>isinf</> during configure (Tom)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix character string comparison for locales that consider
@@ -12199,7 +12652,7 @@ to ensure that <application>plperl</> won't change the locale later</para>
<para>This fixes a problem that occurred if the <application>postmaster</> was
started with environment variables specifying a different locale than what
<application>initdb</> had been told. Under these conditions, any use of
-<application>plperl</> was likely to lead to corrupt indexes. You may need
+<application>plperl</> was likely to lead to corrupt indexes. You might need
<command>REINDEX</> to fix existing indexes on
textual columns if this has happened to you.</para></listitem>
@@ -12220,7 +12673,7 @@ what's actually returned by the query (Joe)</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-3-12">
<title>Release 7.3.12</title>
@@ -12245,7 +12698,7 @@ what's actually returned by the query (Joe)</para></listitem>
<sect2>
<title>Changes</title>
-
+
<itemizedlist>
<listitem><para>Fix race condition in transaction log management</para>
@@ -12267,7 +12720,7 @@ table has been dropped</para></listitem>
</sect2>
</sect1>
-
+
<sect1 id="release-7-3-11">
<title>Release 7.3.11</title>
@@ -12354,7 +12807,7 @@ the variable is of pass-by-reference type</para></listitem>
It is strongly recommended that all installations repair this error,
either by initdb or by following the manual repair procedure given
below. The error at least allows unprivileged database users to crash
- their server process, and may allow unprivileged users to gain the
+ their server process, and might allow unprivileged users to gain the
privileges of a database superuser.
</para>
@@ -12380,12 +12833,12 @@ COMMIT;
template databases then any subsequently created databases will contain
the same error. <literal>template1</> can be fixed in the same way
as any other database, but fixing <literal>template0</> requires
- additional steps. First, from any database issue
+ additional steps. First, from any database issue:
<programlisting>
UPDATE pg_database SET datallowconn = true WHERE datname = 'template0';
</programlisting>
Next connect to <literal>template0</> and perform the above repair
- procedure. Finally, do
+ procedure. Finally, do:
<programlisting>
-- re-freeze template0:
VACUUM FREEZE;
@@ -12528,7 +12981,7 @@ datestyles</para></listitem>
<itemizedlist>
<listitem><para>Repair possible failure to update hint bits on disk</para>
<para>
-Under rare circumstances this oversight could lead to
+Under rare circumstances this oversight could lead to
<quote>could not access transaction status</> failures, which qualifies
it as a potential-data-loss bug.
</para></listitem>
@@ -12938,7 +13391,7 @@ operations on bytea columns (Joe)</para></listitem>
A dump/restore is <emphasis>not</emphasis> required for those
running version 7.3. However, it should be noted that the main
<productname>PostgreSQL</productname> interface library, libpq,
- has a new major version number for this release, which may require
+ has a new major version number for this release, which might require
recompilation of client code in certain cases.
</para>
</sect2>
@@ -12966,8 +13419,8 @@ operations on bytea columns (Joe)</para></listitem>
</itemizedlist>
</sect2>
</sect1>
-
-
+
+
<sect1 id="release-7-3">
<title>Release 7.3</title>
@@ -13174,7 +13627,7 @@ operations on bytea columns (Joe)</para></listitem>
<para>
<command>COPY</command> no longer considers missing trailing
columns to be null. All columns need to be specified.
- (However, one may achieve a similar effect by specifying a
+ (However, one can achieve a similar effect by specifying a
column list in the <command>COPY</command> command.)
</para>
</listitem>
@@ -13730,7 +14183,7 @@ datestyles</para></listitem>
<itemizedlist>
<listitem><para>Repair possible failure to update hint bits on disk</para>
<para>
-Under rare circumstances this oversight could lead to
+Under rare circumstances this oversight could lead to
<quote>could not access transaction status</> failures, which qualifies
it as a potential-data-loss bug.
</para></listitem>
@@ -13871,8 +14324,8 @@ since <productname>PostgreSQL</productname> 7.1.
</itemizedlist>
</sect2>
</sect1>
-
-
+
+
<sect1 id="release-7-2-2">
<title>Release 7.2.2</title>
@@ -13914,8 +14367,8 @@ since <productname>PostgreSQL</productname> 7.1.
</itemizedlist>
</sect2>
</sect1>
-
-
+
+
<sect1 id="release-7-2-1">
<title>Release 7.2.1</title>
@@ -14075,7 +14528,7 @@ since <productname>PostgreSQL</productname> 7.1.
<listitem>
<para>
The semantics of the <command>VACUUM</command> command have
- changed in this release. You may wish to update your
+ changed in this release. You might wish to update your
maintenance procedures accordingly.
</para>
</listitem>
@@ -14115,7 +14568,7 @@ since <productname>PostgreSQL</productname> 7.1.
<para>
The <literal>timestamp()</literal>, <literal>time()</literal>,
and <literal>interval()</literal> functions are no longer
- available. Instead of <literal>timestamp()</literal>, use
+ available. Instead of <literal>timestamp()</literal>, use
<literal>timestamp 'string'</literal> or <literal>CAST</literal>.
</para>
</listitem>
@@ -14587,7 +15040,7 @@ Fix PL/pgSQL SELECTs when returning no rows
Fix for psql backslash core dump
Referential integrity privilege fix
Optimizer fixes
-pg_dump cleanups
+pg_dump cleanups
</programlisting>
</para>
</sect2>
@@ -14670,7 +15123,7 @@ previous releases of <productname>PostgreSQL</productname> have forced
all data modifications to disk before each transaction commit. With
WAL, only one log file must be flushed to disk, greatly improving
performance. If you have been using -F in previous releases to
-disable disk flushes, you may want to consider discontinuing its use.
+disable disk flushes, you might want to consider discontinuing its use.
</para>
</listitem>
</varlistentry>
@@ -14711,7 +15164,7 @@ outer join syntax.
The previous C function manager did not
handle null values properly, nor did it support 64-bit <acronym>CPU</acronym>'s (Alpha). The new
function manager does. You can continue using your old custom
-functions, but you may want to rewrite them in the future to use the new
+functions, but you might want to rewrite them in the future to use the new
function manager call interface.
</para>
</listitem>
@@ -14726,7 +15179,7 @@ function manager call interface.
A large number of complex queries that were
unsupported in previous releases now work. Many combinations of views,
aggregates, UNION, LIMIT, cursors, subqueries, and inherited tables
-now work properly. Inherited tables are now accessed by default.
+now work properly. Inherited tables are now accessed by default.
Subqueries in FROM are now supported.
</para>
</listitem>
@@ -14756,7 +15209,7 @@ Kerberos V fixes (David Wragg)
Fix for INSERT INTO...SELECT where targetlist has subqueries (Tom)
Prompt username/password on standard error (Bruce)
Large objects inv_read/inv_write fixes (Tom)
-Fixes for to_char(), to_date(), to_ascii(), and to_timestamp() (Karel,
+Fixes for to_char(), to_date(), to_ascii(), and to_timestamp() (Karel,
Daniel Baldoni)
Prevent query expressions from leaking memory (Tom)
Allow UPDATE of arrays elements (Tom)
@@ -14772,7 +15225,7 @@ Disallow DROP RULE, CREATE INDEX, TRUNCATE on views (Mark Hollomon)
Allow PL/pgSQL accept non-ASCII identifiers (Tatsuo)
Allow views to proper handle GROUP BY, aggregates, DISTINCT (Tom)
Fix rare failure with TRUNCATE command (Tom)
-Allow UNION/INTERSECT/EXCEPT to be used with ALL, subqueries, views,
+Allow UNION/INTERSECT/EXCEPT to be used with ALL, subqueries, views,
DISTINCT, ORDER BY, SELECT...INTO (Tom)
Fix parser failures during aborted transactions (Tom)
Allow temporary relations to properly clean up indexes (Bruce)
@@ -14808,14 +15261,14 @@ Improve ps status display for more platforms (Peter E, Marc)
Improve CREATE FUNCTION failure message (Ross)
JDBC improvements (Peter, Travis Bauer, Christopher Cain, William Webber,
Gunnar)
-Grand Unified Configuration scheme/GUC. Many options can now be set in
+Grand Unified Configuration scheme/GUC. Many options can now be set in
data/postgresql.conf, postmaster/postgres flags, or SET commands (Peter E)
Improved handling of file descriptor cache (Tom)
New warning code about auto-created table alias entries (Bruce)
Overhaul initdb process (Tom, Peter E)
Overhaul of inherited tables; inherited tables now accessed by default;
new ONLY key word prevents it (Chris Bitmead, Tom)
-ODBC cleanups/improvements (Nick Gorham, Stephan Szabo, Zoltan Kovacs,
+ODBC cleanups/improvements (Nick Gorham, Stephan Szabo, Zoltan Kovacs,
Michael Fork)
Allow renaming of temp tables (Tom)
Overhaul memory manager contexts (Tom)
@@ -14886,7 +15339,7 @@ New CIDR abbrev() function (Tom)
Performance
-----------
-Write-Ahead Log (WAL) to provide crash recovery with less performance
+Write-Ahead Log (WAL) to provide crash recovery with less performance
overhead (Vadim)
ANALYZE stage of VACUUM no longer exclusively locks table (Bruce)
Reduced file seeks (Denis Perchine)
@@ -15108,7 +15561,7 @@ ecpg changes (Michael)
<simpara>2000-05-08</simpara>
</note>
- <para>
+ <para>
This release contains improvements in many areas, demonstrating
the continued growth of <productname>PostgreSQL</productname>.
There are more improvements and fixes in 7.0 than in any previous
@@ -15184,7 +15637,7 @@ ecpg changes (Michael)
A dump/restore using <application>pg_dump</application>
is required for those wishing to migrate data from any
previous release of <productname>PostgreSQL</productname>.
- For those upgrading from 6.5.*, you may instead use
+ For those upgrading from 6.5.*, you can instead use
<application>pg_upgrade</application> to upgrade to this
release; however, a full dump/reload installation is always the
most robust method for upgrades.
@@ -15205,7 +15658,7 @@ ecpg changes (Michael)
ease the transition by allowing
<productname>PostgreSQL</productname> to recognize
the deprecated type names and translate them to the new type
- names, this mechanism may not be completely transparent to
+ names, this mechanism cannot be completely transparent to
your existing application.
</para>
</listitem>
@@ -15217,8 +15670,8 @@ ecpg changes (Michael)
decreased query times as the optimizer makes a better choice
for the preferred plan. However, in a small number of cases,
usually involving pathological distributions of data, your
- query times may go up. If you are dealing with large amounts
- of data, you may want to check your queries to verify
+ query times might go up. If you are dealing with large amounts
+ of data, you might want to check your queries to verify
performance.
</para>
</listitem>
@@ -15361,8 +15814,8 @@ Force permissions on PGDATA directory to be secure, even if it exists (Tom)
Added psql LASTOID variable to return last inserted oid (Peter E)
Allow concurrent vacuum and remove pg_vlock vacuum lock file (Tom)
Add privilege check for vacuum (Peter E)
-New libpq functions to allow asynchronous connections: PQconnectStart(),
- PQconnectPoll(), PQresetStart(), PQresetPoll(), PQsetenvStart(),
+New libpq functions to allow asynchronous connections: PQconnectStart(),
+ PQconnectPoll(), PQresetStart(), PQresetPoll(), PQsetenvStart(),
PQsetenvPoll(), PQsetenvAbort (Ewan Mellor)
New libpq PQsetenv() function (Ewan Mellor)
create/alter user extension (Peter E)
@@ -15380,7 +15833,7 @@ Add CREATE/ALTER/DROP GROUP (Peter E)
All administration scripts now support --long options (Peter E, Karel)
Vacuumdb script now supports --all option (Peter E)
ecpg new portable FETCH syntax
-Add ecpg EXEC SQL IFDEF, EXEC SQL IFNDEF, EXEC SQL ELSE, EXEC SQL ELIF
+Add ecpg EXEC SQL IFDEF, EXEC SQL IFNDEF, EXEC SQL ELSE, EXEC SQL ELIF
and EXEC SQL ENDIF directives
Add pg_ctl script to control backend start-up (Tatsuo)
Add postmaster.opts.default file to store start-up flags (Tatsuo)
@@ -15455,7 +15908,7 @@ Cleanups for int8 inputs, range checking, and type conversion (Tom)
Fix for SELECT timespan('21:11:26'::time) (Tom)
netmask('x.x.x.x/0') is 255.255.255.255 instead of 0.0.0.0 (Oleg Sharoiko)
Add btree index on NUMERIC (Jan)
-Perl fix for large objects containing NUL characters (Douglas Thomson)
+Perl fix for large objects containing NUL characters (Douglas Thomson)
ODBC fix for for large objects (free)
Fix indexing of cidr data type
Fix for Ethernet MAC addresses (macaddr type) comparisons
@@ -15864,10 +16317,10 @@ Add Win1250 (Czech) support (Pavel Behal)
The <citetitle>Administrator's Guide</citetitle> has a new
chapter on troubleshooting from Tom Lane.
And the <citetitle>Programmer's Guide</citetitle> has a
- description of query processing, also from Stefan, and details
+ description of query processing, also from Stefan, and details
on obtaining the <productname>PostgreSQL</productname> source
tree via anonymous <productname>CVS</productname> and
- <productname>CVSup</productname>.
+ <productname>CVSup</productname>.
</para>
</listitem>
</varlistentry>
@@ -15889,7 +16342,7 @@ Add Win1250 (Czech) support (Pavel Behal)
<para>
The new Multiversion Concurrency Control (MVCC) features can
give somewhat different behaviors in multiuser
- environments. <emphasis>Read and understand the following section
+ environments. <emphasis>Read and understand the following section
to ensure that your existing applications will give you the
behavior you need.</emphasis>
</para>
@@ -16069,7 +16522,7 @@ JDBC fixes/features, see src/interfaces/jdbc/CHANGELOG(Peter)
Make % operator have precedence like /(Bruce)
Add new postgres -O option to allow system table structure changes(Bruce)
Update contrib/pginterface/findoidjoins script(Tom)
-Major speedup in vacuum of deleted rows with indexes(Vadim)
+Major speedup in vacuum of deleted rows with indexes(Vadim)
Allow non-SQL functions to run different versions based on arguments(Tom)
Add -E option that shows actual queries sent by \dt and friends(Masaaki Sakaida)
Add version number in start-up banners for psql(Masaaki Sakaida)
@@ -16233,7 +16686,7 @@ Here is a brief, incomplete summary:
<itemizedlist>
<listitem>
<para>
-Views and rules are now functional thanks to extensive new code in the
+Views and rules are now functional thanks to extensive new code in the
rewrite rules system from Jan Wieck. He also wrote a chapter on it
for the <citetitle>Programmer's Guide</citetitle>.
</para>
@@ -16272,7 +16725,7 @@ which covers this topic.
<listitem>
<para>
-Three new data types have been added.
+Three new data types have been added.
Two types, <type>inet</type> and <type>cidr</type>, support various forms
of IP network, subnet, and machine addressing. There is now an 8-byte integer
type available on some platforms. See the chapter on data types
@@ -16304,7 +16757,7 @@ been.
<title>Migration to version 6.4</title>
<para>
-A dump/restore using <application>pg_dump</application>
+A dump/restore using <application>pg_dump</application>
or <application>pg_dumpall</application>
is required for those wishing to migrate data from any
previous release of <productname>PostgreSQL</productname>.
@@ -16374,7 +16827,7 @@ Readline cleanups(Tom)
Allow psql \f \ to make spaces as delimiter(Bruce)
Pass pg_attribute.atttypmod to the frontend for column field lengths(Tom,Bruce)
Msql compatibility library in /contrib(Aldrin)
-Remove the requirement that ORDER/GROUP BY clause identifiers be
+Remove the requirement that ORDER/GROUP BY clause identifiers be
included in the target list(David)
Convert columns to match columns in UNION clauses(Thomas)
Remove fork()/exec() and only do fork()(Bruce)
@@ -16382,7 +16835,7 @@ Jdbc cleanups(Peter)
Show backend status on ps command line(only works on some platforms)(Bruce)
Pg_hba.conf now has a sameuser option in the database field
Make lo_unlink take oid param, not int4
-New DISABLE_COMPLEX_MACRO for compilers that can't handle our macros(Bruce)
+New DISABLE_COMPLEX_MACRO for compilers that cannot handle our macros(Bruce)
Libpgtcl now handles NOTIFY as a Tcl event, need not send dummy queries(Tom)
libpgtcl cleanups(Tom)
Add -error option to libpgtcl's pg_result command(Tom)
@@ -16545,7 +16998,7 @@ Correctly handles function calls on the left side of BETWEEN and LIKE clauses.
</itemizedlist>
</para>
<para>
-A dump/restore is NOT required for those running 6.3 or 6.3.1. A
+A dump/restore is NOT required for those running 6.3 or 6.3.1. A
<literal>make distclean</>, <literal>make</>, and <literal>make install</> is all that is required.
This last step should be performed while the postmaster is not running.
You should re-link any custom applications that use <productname>PostgreSQL</productname> libraries.
@@ -16622,7 +17075,7 @@ Improvements to the configuration autodetection for installation.
</itemizedlist>
</para>
<para>
-A dump/restore is NOT required for those running 6.3. A
+A dump/restore is NOT required for those running 6.3. A
<literal>make distclean</>, <literal>make</>, and <literal>make install</> is all that is required.
This last step should be performed while the postmaster is not running.
You should re-link any custom applications that use <productname>PostgreSQL</productname> libraries.
@@ -16699,7 +17152,7 @@ Better identify tcl and tk libs and includes(Bruce)
<listitem>
<para>
Socket interface for client/server connection. This is the default now
- so you may need to start <application>postmaster</application> with the
+ so you might need to start <application>postmaster</application> with the
<option>-i</option> flag.
</para>
</listitem>
@@ -16735,9 +17188,9 @@ Better identify tcl and tk libs and includes(Bruce)
mention that without subselects, SQL is a very limited language.
Subselects are a major feature, and you should review your code for
places where subselects provide a better solution for your queries. I
- think you will find that there are more uses for subselects than you may
+ think you will find that there are more uses for subselects than you might
think. Vadim has put us on the big SQL map with subselects, and fully
- functional ones too. The only thing you can't do with subselects is to
+ functional ones too. The only thing you cannot do with subselects is to
use them in the target list.
</para>
<para>
@@ -16750,7 +17203,7 @@ Better identify tcl and tk libs and includes(Bruce)
Third, <type>char()</type> fields will now allow faster access than <type>varchar()</type> or
<type>text</type>. Specifically, the <type>text</> and <type>varchar()</type> have a penalty for access to
any columns after the first column of this type. <type>char()</type> used to also
- have this access penalty, but it no longer does. This may suggest that
+ have this access penalty, but it no longer does. This might suggest that
you redesign some of your tables, especially if you have short character
columns that you have defined as <type>varchar()</type> or <type>text</type>. This and other
changes make 6.3 even faster than earlier releases.
@@ -16768,7 +17221,7 @@ Better identify tcl and tk libs and includes(Bruce)
<para>
User-created tables now no longer have SELECT privilege to PUBLIC by
default. This was done because the ANSI standard requires it. You can
- of course GRANT any privileges you want after the table is created.
+ of course GRANT any privileges you want after the table is created.
System tables continue to be SELECT-able by PUBLIC.
</para>
<para>
@@ -16800,7 +17253,7 @@ Better identify tcl and tk libs and includes(Bruce)
<title>Migration to version 6.3</title>
<para>
- A dump/restore using <application>pg_dump</application>
+ A dump/restore using <application>pg_dump</application>
or <application>pg_dumpall</application>
is required for those wishing to migrate data from any
previous release of <productname>PostgreSQL</productname>.
@@ -16854,7 +17307,7 @@ Subselects with EXISTS, IN, ALL, ANY key words (Vadim, Bruce, Thomas)
New User Manual(Thomas, others)
Speedup by inlining some frequently-called functions
Real deadlock detection, no more timeouts(Bruce)
-Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP,
+Add SQL92 "constants" CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP,
CURRENT_USER(Thomas)
Modify constraint syntax to be SQL92-compliant(Thomas)
Implement SQL92 PRIMARY KEY and UNIQUE clauses using indexes(Thomas)
@@ -16934,7 +17387,7 @@ Reduce system column overhead(Vadmin)
Remove pg_time table(Vadim)
Add pg_type attribute to identify types that need length (bpchar, varchar)
Add report of offending line when COPY command fails
-Allow VIEW privileges to be set separately from the underlying tables.
+Allow VIEW privileges to be set separately from the underlying tables.
For security, use GRANT/REVOKE on views as appropriate(Jan)
Tables now have no default GRANT SELECT TO PUBLIC. You must
explicitly grant such privileges.
@@ -17011,8 +17464,8 @@ Include example trigger function for inserting user names on table updates.
</itemizedlist>
</para>
<para>
-This is a minor bug-fix release on 6.2.
-For upgrades from pre-6.2 systems, a full dump/reload is required.
+This is a minor bug-fix release on 6.2.
+For upgrades from pre-6.2 systems, a full dump/reload is required.
Refer to the 6.2 release notes for instructions.
</para>
@@ -17114,14 +17567,14 @@ Catch non-functional delete attempts(Vadim)
Change time function names to be more consistent(Michael Reifenberg)
Check for zero divides(Michael Reifenberg)
Fix very old bug which made rows changed/inserted by a command
- visible to the command itself (so we had multiple update of
+ visible to the command itself (so we had multiple update of
updated rows, etc.)(Vadim)
Fix for SELECT null, 'fail' FROM pg_am (Patrick)
SELECT NULL as EMPTY_FIELD now allowed(Patrick)
Remove un-needed signal stuff from contrib/pginterface
Fix OR (where x != 1 or x isnull didn't return rows with x NULL) (Vadim)
Fix time_cmp function (Vadim)
-Fix handling of functions with non-attribute first argument in
+Fix handling of functions with non-attribute first argument in
WHERE clauses (Vadim)
Fix GROUP BY when order of entries is different from order
in target list (Vadim)
@@ -17135,7 +17588,7 @@ Added JDBC driver as an interface(Adrian & Peter)
pg_password utility
Return number of rows inserted/affected by INSERT/UPDATE/DELETE etc.(Vadim)
Triggers implemented with CREATE TRIGGER (SQL3)(Vadim)
-SPI (Server Programming Interface) allows execution of queries inside
+SPI (Server Programming Interface) allows execution of queries inside
C-functions (Vadim)
NOT NULL implemented (SQL92)(Robson Paniago de Miranda)
Include reserved words for string handling, outer joins, and unions(Thomas)
@@ -17299,7 +17752,7 @@ optimizer which uses <firstterm>genetic</firstterm>
The interpretation of array specifiers (the curly braces around atomic
values) appears to have changed sometime after the original regression
tests were generated. The current <filename>./expected/*.out</filename> files reflect this
- new interpretation, which may not be correct!
+ new interpretation, which might not be correct!
</para>
<para>
@@ -17368,7 +17821,7 @@ Enhancements
------------
attribute optimization statistics(Bruce)
much faster new btree bulk load code(Paul)
-BTREE UNIQUE added to bulk load code(Vadim)
+BTREE UNIQUE added to bulk load code(Vadim)
new lock debug code(Massimo)
massive changes to libpg++(Leo)
new GEQO optimizer speeds table multitable optimization(Martin)
@@ -17712,7 +18165,7 @@ New Ports
</para>
<!--
Contributors (apologies to any missed)
- * Kurt J. Lidl &lt;lidl@va.pubnix.com&gt;
+ * Kurt J. Lidl &lt;lidl@va.pubnix.com&gt;
(missed in first run, but no less important)
* Erich Stamberger &lt;eberger@gewi.kfunigraz.ac.at&gt;
* Jason Wright &lt;jason@shiloh.vnet.net&gt;
@@ -17755,7 +18208,7 @@ Contributors (apologies to any missed)
<para>
The following notes are for the benefit of users who want to migrate
-databases from <productname>Postgres95</> 1.0 to <productname>Postgres95</> 1.01.
+databases from <productname>Postgres95</> 1.0 to <productname>Postgres95</> 1.01.
</para>
<para>
If you are starting afresh with <productname>Postgres95</> 1.01 and do not need
@@ -17763,7 +18216,7 @@ to migrate old databases, you do not need to read any further.
</para>
<para>
In order to <productname>Postgres95</> version 1.01 with databases created with
-<productname>Postgres95</> version 1.0, the following steps are required:
+<productname>Postgres95</> version 1.0, the following steps are required:
</para>
<procedure>
<step>
@@ -17774,7 +18227,7 @@ Set the definition of <symbol>NAMEDATALEN</symbol> in <filename>src/Makefile.glo
</step>
<step>
<para>
-Decide whether you want to use Host based authentication.
+Decide whether you want to use Host based authentication.
</para>
<substeps>
<step>
@@ -17787,7 +18240,7 @@ If you do, you must create a file name <literal>pg_hba</literal> in your top-lev
<step>
<para>
If you do not want host-based authentication, you can comment out
- the line
+ the line:
<programlisting>
HBA = 1
</programlisting>
@@ -17810,7 +18263,7 @@ Compile and install 1.01, but DO NOT do the <command>initdb</command> step.
<step>
<para>
Before doing anything else, terminate your 1.0 postmaster, and
- backup your existing <envar>$PGDATA</envar> directory.
+ backup your existing <envar>$PGDATA</envar> directory.
</para>
</step>
<step>
@@ -17833,7 +18286,7 @@ Start up a new 1.01 postmaster
<para>
Add the new built-in functions and operators of 1.01 to 1.0
databases. This is done by running the new 1.01 server against
- your own 1.0 database and applying the queries attached and saving
+ your own 1.0 database and applying the queries attached and saving
in the file 1.0_to_1.01.sql. This can be done easily through <command>psql</command>.
If your 1.0 database is name <literal>testdb</literal>:
@@ -17918,12 +18371,12 @@ Enhancements:
is not desired, comment out HBA=1 in src/Makefile.global.
* changed regex handling to be uniform use of Henry Spencer's regex code
regardless of platform. The regex code is included in the distribution
- * added functions and operators for case-insensitive regular expressions.
+ * added functions and operators for case-insensitive regular expressions.
The operators are ~* and !~*.
* pg_dump uses COPY instead of SELECT loop for better performance
Bug fixes:
- * fixed an optimizer bug that was causing core dumps when
+ * fixed an optimizer bug that was causing core dumps when
functions calls were used in comparisons in the WHERE clause
* changed all uses of getuid to geteuid so that effective uids are used
* psql now returns non-zero status on errors when using -c
@@ -17959,11 +18412,11 @@ Incompatibilities:
Enhancements:
* sql LIKE syntax has been added
* copy command now takes an optional USING DELIMITER specification.
- delimiters can be any single-character string.
+ delimiters can be any single-character string.
* IRIX 5.3 port has been added.
Thanks to Paul Walmsley and others.
* updated pg_dump to work with new libpq
- * \d has been added psql
+ * \d has been added psql
Thanks to Keith Parks
* regexp performance for architectures that use POSIX regex has been
improved due to caching of precompiled patterns.
@@ -18013,7 +18466,7 @@ Incompatible changes:
* float literals (eg. 3.14) are now of type float4 (instead of float8 in
previous releases); you might have to do typecasting if you depend on it
being of type float8. If you neglect to do the typecasting and you assign
- a float literal to a field of type float8, you may get incorrect values
+ a float literal to a field of type float8, you might get incorrect values
stored!
* LIBPQ has been totally revamped so that frontend applications
can connect to multiple backends
@@ -18032,34 +18485,34 @@ more compliant to the SQL-92 standard):
integer, int -&gt; int4
float, real -&gt; float4
char(N) and varchar(N) are implemented as truncated text types. In
- addition, char(N) does blank-padding.
+ addition, char(N) does blank-padding.
* single-quote (') is used for quoting string literals; '' (in addition to
\') is supported as means of inserting a single quote in a string
* SQL standard aggregate names (MAX, MIN, AVG, SUM, COUNT) are used
(Also, aggregates can now be overloaded, i.e. you can define your
own MAX aggregate to take in a user-defined type.)
- * CHANGE ACL removed. GRANT/REVOKE syntax added.
+ * CHANGE ACL removed. GRANT/REVOKE syntax added.
- Privileges can be given to a group using the "GROUP" key word.
For example:
GRANT SELECT ON foobar TO GROUP my_group;
- The key word 'PUBLIC' is also supported to mean all users.
+ The key word 'PUBLIC' is also supported to mean all users.
Privileges can only be granted or revoked to one user or group
- at a time.
+ at a time.
"WITH GRANT OPTION" is not supported. Only class owners can change
access control
- The default access control is to to grant users readonly access.
You must explicitly grant insert/update access to users. To change
- this, modify the line in
- src/backend/utils/acl.h
- that defines ACL_WORLD_DEFAULT
+ this, modify the line in
+ src/backend/utils/acl.h
+ that defines ACL_WORLD_DEFAULT
Bug fixes:
* the bug where aggregates of empty tables were not run has been fixed. Now,
aggregates run on empty tables will return the initial conditions of the
aggregates. Thus, COUNT of an empty table will now properly return 0.
- MAX/MIN of an empty table will return a row of value NULL.
+ MAX/MIN of an empty table will return a row of value NULL.
* allow the use of \; inside the monitor
* the LISTEN/NOTIFY asynchronous notification mechanism now work
* NOTIFY in rule action bodies now work
@@ -18074,7 +18527,7 @@ Other changes and enhancements:
* WARN and NOTICE messages no longer have timestamps on them. To turn on
timestamps of error messages, uncomment the line in
src/backend/utils/elog.h:
- /* define ELOG_TIMESTAMPS */
+ /* define ELOG_TIMESTAMPS */
* On an access control violation, the message
"Either no such class or insufficient privilege"
will be given. This is the same message that is returned when
@@ -18093,8 +18546,8 @@ libpgtcl changes:
Portability enhancements and New Ports:
* flex/lex problems have been cleared up. Now, you should be able to use
flex instead of lex on any platforms. We no longer make assumptions of
- what lexer you use based on the platform you use.
- * The Linux-ELF port is now supported. Various configuration have been
+ what lexer you use based on the platform you use.
+ * The Linux-ELF port is now supported. Various configuration have been
tested: The following configuration is known to work:
kernel 1.2.10, gcc 2.6.3, libc 4.7.2, flex 2.5.2, bison 1.24
with everything in ELF format,
@@ -18128,9 +18581,9 @@ New documentation:
Incompatible changes:
* The SQL statement for creating a database is 'CREATE DATABASE' instead
of 'CREATEDB'. Similarly, dropping a database is 'DROP DATABASE' instead
- of 'DESTROYDB'. However, the names of the executables 'createdb' and
+ of 'DESTROYDB'. However, the names of the executables 'createdb' and
'destroydb' remain the same.
-
+
New tools:
* pgperl - a Perl (4.036) interface to Postgres95
* pg_dump - a utility for dumping out a postgres database into a
@@ -18147,7 +18600,7 @@ The following ports have been incorporated into postgres95-beta-0.02:
The following bugs have been fixed in postgres95-beta-0.02:
* new lines not escaped in COPY OUT and problem with COPY OUT when first
- attribute is a '.'
+ attribute is a '.'
* cannot type return to use the default user id in createuser
* SELECT DISTINCT on big tables crashes
* Linux installation problems