mirror of
https://github.com/postgres/postgres.git
synced 2025-07-20 05:03:10 +03:00
Draft release notes for 9.1.2, 9.0.6, 8.4.10, 8.3.17, 8.2.23.
This commit is contained in:
@ -1,6 +1,234 @@
|
|||||||
<!-- doc/src/sgml/release-8.2.sgml -->
|
<!-- doc/src/sgml/release-8.2.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-8-2-23">
|
||||||
|
<title>Release 8.2.23</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2011-12-05</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 8.2.22.
|
||||||
|
For information about new features in the 8.2 major release, see
|
||||||
|
<xref linkend="release-8-2">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This is expected to be the last <productname>PostgreSQL</> release
|
||||||
|
in the 8.2.X series. Users are encouraged to update to a newer
|
||||||
|
release branch soon.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 8.2.23</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 8.2.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, a longstanding error was discovered in the definition of the
|
||||||
|
<literal>information_schema.referential_constraints</> view. If you
|
||||||
|
rely on correct results from that view, you should replace its
|
||||||
|
definition as explained in the first changelog item below.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Also, if you are upgrading from a version earlier than 8.2.14,
|
||||||
|
see the release notes for 8.2.14.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix bugs in <literal>information_schema.referential_constraints</> view
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This view was being insufficiently careful about matching the
|
||||||
|
foreign-key constraint to the depended-on primary or unique key
|
||||||
|
constraint. That could result in failure to show a foreign key
|
||||||
|
constraint at all, or showing it multiple times, or claiming that it
|
||||||
|
depends on a different constraint than the one it really does.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Since the view definition is installed by <application>initdb</>,
|
||||||
|
merely upgrading will not fix the problem. If you need to fix this
|
||||||
|
in an existing installation, you can (as a superuser) drop the
|
||||||
|
<literal>information_schema</> schema then re-create it by sourcing
|
||||||
|
<filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
|
||||||
|
(Run <literal>pg_config --sharedir</> if you're uncertain where
|
||||||
|
<replaceable>SHAREDIR</> is.) This must be repeated in each database
|
||||||
|
to be fixed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
|
||||||
|
SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
|
||||||
|
attempts to copy its data verbatim to another table could produce
|
||||||
|
corrupt results in certain corner cases.
|
||||||
|
The problem can only manifest in this precise form in 8.4 and later,
|
||||||
|
but we patched earlier versions as well in case there are other code
|
||||||
|
paths that could trigger the same bug.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix race condition during toast table access from stale syscache entries
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The typical symptom was transient errors like <quote>missing chunk
|
||||||
|
number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
|
||||||
|
toast table would always belong to a system catalog.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve locale support in <type>money</> type's input and output
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Aside from not supporting all standard
|
||||||
|
<link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
|
||||||
|
formatting options, the input and output functions were inconsistent,
|
||||||
|
meaning there were locales in which dumped <type>money</> values could
|
||||||
|
not be re-read.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Don't let <link
|
||||||
|
linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
|
||||||
|
affect <literal>CASE foo WHEN NULL ...</> constructs
|
||||||
|
(Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<varname>transform_null_equals</> is only supposed to affect
|
||||||
|
<literal>foo = NULL</> expressions written directly by the user, not
|
||||||
|
equality checks generated internally by this form of <literal>CASE</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Change foreign-key trigger creation order to better support
|
||||||
|
self-referential foreign keys (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
For a cascading foreign key that references its own table, a row update
|
||||||
|
will fire both the <literal>ON UPDATE</> trigger and the
|
||||||
|
<literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
|
||||||
|
trigger must execute first, else the <literal>CHECK</> will check a
|
||||||
|
non-final state of the row and possibly throw an inappropriate error.
|
||||||
|
However, the firing order of these triggers is determined by their
|
||||||
|
names, which generally sort in creation order since the triggers have
|
||||||
|
auto-generated names following the convention
|
||||||
|
<quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
|
||||||
|
modifying that convention, which we will do in 9.2, but it seems risky
|
||||||
|
to change it in existing releases. So this patch just changes the
|
||||||
|
creation order of the triggers. Users encountering this type of error
|
||||||
|
should drop and re-create the foreign key constraint to get its
|
||||||
|
triggers into the right order.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Preserve blank lines within commands in <application>psql</>'s command
|
||||||
|
history (Robert Haas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The former behavior could cause problems if an empty line was removed
|
||||||
|
from within a string literal, for example.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use the preferred version of <application>xsubpp</> to build PL/Perl,
|
||||||
|
not necessarily the operating system's main copy
|
||||||
|
(David Wheeler and Alex Hunsaker)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Honor query cancel interrupts promptly in <function>pgstatindex()</>
|
||||||
|
(Robert Haas)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure VPATH builds properly install all server header files
|
||||||
|
(Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Shorten file names reported in verbose error messages (Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Regular builds have always reported just the name of the C file
|
||||||
|
containing the error message call, but VPATH builds formerly
|
||||||
|
reported an absolute path name.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix interpretation of Windows timezone names for Central America
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Map <quote>Central America Standard Time</> to <literal>CST6</>, not
|
||||||
|
<literal>CST6CDT</>, because DST is generally not observed anywhere in
|
||||||
|
Central America.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2011n
|
||||||
|
for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
|
||||||
|
also historical corrections for Alaska and British East Africa.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-8-2-22">
|
<sect1 id="release-8-2-22">
|
||||||
<title>Release 8.2.22</title>
|
<title>Release 8.2.22</title>
|
||||||
|
|
||||||
|
@ -1,6 +1,273 @@
|
|||||||
<!-- doc/src/sgml/release-8.3.sgml -->
|
<!-- doc/src/sgml/release-8.3.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-8-3-17">
|
||||||
|
<title>Release 8.3.17</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2011-12-05</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 8.3.16.
|
||||||
|
For information about new features in the 8.3 major release, see
|
||||||
|
<xref linkend="release-8-3">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 8.3.17</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 8.3.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, a longstanding error was discovered in the definition of the
|
||||||
|
<literal>information_schema.referential_constraints</> view. If you
|
||||||
|
rely on correct results from that view, you should replace its
|
||||||
|
definition as explained in the first changelog item below.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Also, if you are upgrading from a version earlier than 8.3.8,
|
||||||
|
see the release notes for 8.3.8.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix bugs in <literal>information_schema.referential_constraints</> view
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This view was being insufficiently careful about matching the
|
||||||
|
foreign-key constraint to the depended-on primary or unique key
|
||||||
|
constraint. That could result in failure to show a foreign key
|
||||||
|
constraint at all, or showing it multiple times, or claiming that it
|
||||||
|
depends on a different constraint than the one it really does.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Since the view definition is installed by <application>initdb</>,
|
||||||
|
merely upgrading will not fix the problem. If you need to fix this
|
||||||
|
in an existing installation, you can (as a superuser) drop the
|
||||||
|
<literal>information_schema</> schema then re-create it by sourcing
|
||||||
|
<filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
|
||||||
|
(Run <literal>pg_config --sharedir</> if you're uncertain where
|
||||||
|
<replaceable>SHAREDIR</> is.) This must be repeated in each database
|
||||||
|
to be fixed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
|
||||||
|
SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
|
||||||
|
attempts to copy its data verbatim to another table could produce
|
||||||
|
corrupt results in certain corner cases.
|
||||||
|
The problem can only manifest in this precise form in 8.4 and later,
|
||||||
|
but we patched earlier versions as well in case there are other code
|
||||||
|
paths that could trigger the same bug.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix race condition during toast table access from stale syscache entries
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The typical symptom was transient errors like <quote>missing chunk
|
||||||
|
number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
|
||||||
|
toast table would always belong to a system catalog.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Make <function>DatumGetInetP()</> unpack inet datums that have a 1-byte
|
||||||
|
header, and add a new macro, <function>DatumGetInetPP()</>, that does
|
||||||
|
not (Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This change affects no core code, but might prevent crashes in add-on
|
||||||
|
code that expects <function>DatumGetInetP()</> to produce an unpacked
|
||||||
|
datum as per usual convention.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve locale support in <type>money</> type's input and output
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Aside from not supporting all standard
|
||||||
|
<link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
|
||||||
|
formatting options, the input and output functions were inconsistent,
|
||||||
|
meaning there were locales in which dumped <type>money</> values could
|
||||||
|
not be re-read.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Don't let <link
|
||||||
|
linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
|
||||||
|
affect <literal>CASE foo WHEN NULL ...</> constructs
|
||||||
|
(Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<varname>transform_null_equals</> is only supposed to affect
|
||||||
|
<literal>foo = NULL</> expressions written directly by the user, not
|
||||||
|
equality checks generated internally by this form of <literal>CASE</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Change foreign-key trigger creation order to better support
|
||||||
|
self-referential foreign keys (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
For a cascading foreign key that references its own table, a row update
|
||||||
|
will fire both the <literal>ON UPDATE</> trigger and the
|
||||||
|
<literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
|
||||||
|
trigger must execute first, else the <literal>CHECK</> will check a
|
||||||
|
non-final state of the row and possibly throw an inappropriate error.
|
||||||
|
However, the firing order of these triggers is determined by their
|
||||||
|
names, which generally sort in creation order since the triggers have
|
||||||
|
auto-generated names following the convention
|
||||||
|
<quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
|
||||||
|
modifying that convention, which we will do in 9.2, but it seems risky
|
||||||
|
to change it in existing releases. So this patch just changes the
|
||||||
|
creation order of the triggers. Users encountering this type of error
|
||||||
|
should drop and re-create the foreign key constraint to get its
|
||||||
|
triggers into the right order.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid floating-point underflow while tracking buffer allocation rate
|
||||||
|
(Greg Matthews)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
While harmless in itself, on certain platforms this would result in
|
||||||
|
annoying kernel log messages.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Preserve blank lines within commands in <application>psql</>'s command
|
||||||
|
history (Robert Haas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The former behavior could cause problems if an empty line was removed
|
||||||
|
from within a string literal, for example.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_dump</> to dump user-defined casts between
|
||||||
|
auto-generated types, such as table rowtypes (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use the preferred version of <application>xsubpp</> to build PL/Perl,
|
||||||
|
not necessarily the operating system's main copy
|
||||||
|
(David Wheeler and Alex Hunsaker)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect coding in <filename>contrib/dict_int</> and
|
||||||
|
<filename>contrib/dict_xsyn</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Some functions incorrectly assumed that memory returned by
|
||||||
|
<function>palloc()</> is guaranteed zeroed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Honor query cancel interrupts promptly in <function>pgstatindex()</>
|
||||||
|
(Robert Haas)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure VPATH builds properly install all server header files
|
||||||
|
(Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Shorten file names reported in verbose error messages (Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Regular builds have always reported just the name of the C file
|
||||||
|
containing the error message call, but VPATH builds formerly
|
||||||
|
reported an absolute path name.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix interpretation of Windows timezone names for Central America
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Map <quote>Central America Standard Time</> to <literal>CST6</>, not
|
||||||
|
<literal>CST6CDT</>, because DST is generally not observed anywhere in
|
||||||
|
Central America.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2011n
|
||||||
|
for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
|
||||||
|
also historical corrections for Alaska and British East Africa.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-8-3-16">
|
<sect1 id="release-8-3-16">
|
||||||
<title>Release 8.3.16</title>
|
<title>Release 8.3.16</title>
|
||||||
|
|
||||||
|
@ -1,6 +1,321 @@
|
|||||||
<!-- doc/src/sgml/release-8.4.sgml -->
|
<!-- doc/src/sgml/release-8.4.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-8-4-10">
|
||||||
|
<title>Release 8.4.10</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2011-12-05</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 8.4.9.
|
||||||
|
For information about new features in the 8.4 major release, see
|
||||||
|
<xref linkend="release-8-4">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 8.4.10</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 8.4.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, a longstanding error was discovered in the definition of the
|
||||||
|
<literal>information_schema.referential_constraints</> view. If you
|
||||||
|
rely on correct results from that view, you should replace its
|
||||||
|
definition as explained in the first changelog item below.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Also, if you are upgrading from a version earlier than 8.4.8,
|
||||||
|
see the release notes for 8.4.8.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix bugs in <literal>information_schema.referential_constraints</> view
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This view was being insufficiently careful about matching the
|
||||||
|
foreign-key constraint to the depended-on primary or unique key
|
||||||
|
constraint. That could result in failure to show a foreign key
|
||||||
|
constraint at all, or showing it multiple times, or claiming that it
|
||||||
|
depends on a different constraint than the one it really does.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Since the view definition is installed by <application>initdb</>,
|
||||||
|
merely upgrading will not fix the problem. If you need to fix this
|
||||||
|
in an existing installation, you can (as a superuser) drop the
|
||||||
|
<literal>information_schema</> schema then re-create it by sourcing
|
||||||
|
<filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
|
||||||
|
(Run <literal>pg_config --sharedir</> if you're uncertain where
|
||||||
|
<replaceable>SHAREDIR</> is.) This must be repeated in each database
|
||||||
|
to be fixed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect replay of WAL records for GIN index updates
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in transiently failing to find index entries after
|
||||||
|
a crash, or on a hot-standby server. The problem would be repaired
|
||||||
|
by the next <command>VACUUM</> of the index, however.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
|
||||||
|
SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
|
||||||
|
attempts to copy its data verbatim to another table could produce
|
||||||
|
corrupt results in certain corner cases.
|
||||||
|
The problem can only manifest in this precise form in 8.4 and later,
|
||||||
|
but we patched earlier versions as well in case there are other code
|
||||||
|
paths that could trigger the same bug.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix race condition during toast table access from stale syscache entries
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The typical symptom was transient errors like <quote>missing chunk
|
||||||
|
number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
|
||||||
|
toast table would always belong to a system catalog.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Track dependencies of functions on items used in parameter default
|
||||||
|
expressions (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, a referenced object could be dropped without having dropped
|
||||||
|
or modified the function, leading to misbehavior when the function was
|
||||||
|
used. Note that merely installing this update will not fix the missing
|
||||||
|
dependency entries; to do that, you'd need to <command>CREATE OR
|
||||||
|
REPLACE</> each such function afterwards. If you have functions whose
|
||||||
|
defaults depend on non-built-in objects, doing so is recommended.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Allow inlining of set-returning SQL functions with multiple OUT
|
||||||
|
parameters (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Make <function>DatumGetInetP()</> unpack inet datums that have a 1-byte
|
||||||
|
header, and add a new macro, <function>DatumGetInetPP()</>, that does
|
||||||
|
not (Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This change affects no core code, but might prevent crashes in add-on
|
||||||
|
code that expects <function>DatumGetInetP()</> to produce an unpacked
|
||||||
|
datum as per usual convention.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve locale support in <type>money</> type's input and output
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Aside from not supporting all standard
|
||||||
|
<link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
|
||||||
|
formatting options, the input and output functions were inconsistent,
|
||||||
|
meaning there were locales in which dumped <type>money</> values could
|
||||||
|
not be re-read.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Don't let <link
|
||||||
|
linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
|
||||||
|
affect <literal>CASE foo WHEN NULL ...</> constructs
|
||||||
|
(Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<varname>transform_null_equals</> is only supposed to affect
|
||||||
|
<literal>foo = NULL</> expressions written directly by the user, not
|
||||||
|
equality checks generated internally by this form of <literal>CASE</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Change foreign-key trigger creation order to better support
|
||||||
|
self-referential foreign keys (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
For a cascading foreign key that references its own table, a row update
|
||||||
|
will fire both the <literal>ON UPDATE</> trigger and the
|
||||||
|
<literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
|
||||||
|
trigger must execute first, else the <literal>CHECK</> will check a
|
||||||
|
non-final state of the row and possibly throw an inappropriate error.
|
||||||
|
However, the firing order of these triggers is determined by their
|
||||||
|
names, which generally sort in creation order since the triggers have
|
||||||
|
auto-generated names following the convention
|
||||||
|
<quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
|
||||||
|
modifying that convention, which we will do in 9.2, but it seems risky
|
||||||
|
to change it in existing releases. So this patch just changes the
|
||||||
|
creation order of the triggers. Users encountering this type of error
|
||||||
|
should drop and re-create the foreign key constraint to get its
|
||||||
|
triggers into the right order.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid floating-point underflow while tracking buffer allocation rate
|
||||||
|
(Greg Matthews)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
While harmless in itself, on certain platforms this would result in
|
||||||
|
annoying kernel log messages.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Preserve configuration file name and line number values when starting
|
||||||
|
child processes under Windows (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Formerly, these would not be displayed correctly in the
|
||||||
|
<structname>pg_settings</> view.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Preserve blank lines within commands in <application>psql</>'s command
|
||||||
|
history (Robert Haas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The former behavior could cause problems if an empty line was removed
|
||||||
|
from within a string literal, for example.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_dump</> to dump user-defined casts between
|
||||||
|
auto-generated types, such as table rowtypes (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use the preferred version of <application>xsubpp</> to build PL/Perl,
|
||||||
|
not necessarily the operating system's main copy
|
||||||
|
(David Wheeler and Alex Hunsaker)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect coding in <filename>contrib/dict_int</> and
|
||||||
|
<filename>contrib/dict_xsyn</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Some functions incorrectly assumed that memory returned by
|
||||||
|
<function>palloc()</> is guaranteed zeroed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Honor query cancel interrupts promptly in <function>pgstatindex()</>
|
||||||
|
(Robert Haas)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure VPATH builds properly install all server header files
|
||||||
|
(Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Shorten file names reported in verbose error messages (Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Regular builds have always reported just the name of the C file
|
||||||
|
containing the error message call, but VPATH builds formerly
|
||||||
|
reported an absolute path name.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix interpretation of Windows timezone names for Central America
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Map <quote>Central America Standard Time</> to <literal>CST6</>, not
|
||||||
|
<literal>CST6CDT</>, because DST is generally not observed anywhere in
|
||||||
|
Central America.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2011n
|
||||||
|
for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
|
||||||
|
also historical corrections for Alaska and British East Africa.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-8-4-9">
|
<sect1 id="release-8-4-9">
|
||||||
<title>Release 8.4.9</title>
|
<title>Release 8.4.9</title>
|
||||||
|
|
||||||
|
@ -1,6 +1,390 @@
|
|||||||
<!-- doc/src/sgml/release-9.0.sgml -->
|
<!-- doc/src/sgml/release-9.0.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-9-0-6">
|
||||||
|
<title>Release 9.0.6</title>
|
||||||
|
|
||||||
|
<note>
|
||||||
|
<title>Release Date</title>
|
||||||
|
<simpara>2011-12-05</simpara>
|
||||||
|
</note>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 9.0.5.
|
||||||
|
For information about new features in the 9.0 major release, see
|
||||||
|
<xref linkend="release-9-0">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 9.0.6</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 9.0.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, a longstanding error was discovered in the definition of the
|
||||||
|
<literal>information_schema.referential_constraints</> view. If you
|
||||||
|
rely on correct results from that view, you should replace its
|
||||||
|
definition as explained in the first changelog item below.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Also, if you are upgrading from a version earlier than 9.0.4,
|
||||||
|
see the release notes for 9.0.4.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix bugs in <literal>information_schema.referential_constraints</> view
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This view was being insufficiently careful about matching the
|
||||||
|
foreign-key constraint to the depended-on primary or unique key
|
||||||
|
constraint. That could result in failure to show a foreign key
|
||||||
|
constraint at all, or showing it multiple times, or claiming that it
|
||||||
|
depends on a different constraint than the one it really does.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Since the view definition is installed by <application>initdb</>,
|
||||||
|
merely upgrading will not fix the problem. If you need to fix this
|
||||||
|
in an existing installation, you can (as a superuser) drop the
|
||||||
|
<literal>information_schema</> schema then re-create it by sourcing
|
||||||
|
<filename><replaceable>SHAREDIR</>/information_schema.sql</filename>.
|
||||||
|
(Run <literal>pg_config --sharedir</> if you're uncertain where
|
||||||
|
<replaceable>SHAREDIR</> is.) This must be repeated in each database
|
||||||
|
to be fixed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible crash during <command>UPDATE</> or <command>DELETE</> that
|
||||||
|
joins to the output of a scalar-returning function (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A crash could only occur if the target row had been concurrently
|
||||||
|
updated, so this problem surfaced only intermittently.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect replay of WAL records for GIN index updates
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This could result in transiently failing to find index entries after
|
||||||
|
a crash, or on a hot-standby server. The problem would be repaired
|
||||||
|
by the next <command>VACUUM</> of the index, however.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix TOAST-related data corruption during <literal>CREATE TABLE dest AS
|
||||||
|
SELECT * FROM src</> or <literal>INSERT INTO dest SELECT * FROM src</>
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
If a table has been modified by <command>ALTER TABLE ADD COLUMN</>,
|
||||||
|
attempts to copy its data verbatim to another table could produce
|
||||||
|
corrupt results in certain corner cases.
|
||||||
|
The problem can only manifest in this precise form in 8.4 and later,
|
||||||
|
but we patched earlier versions as well in case there are other code
|
||||||
|
paths that could trigger the same bug.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible failures during hot standby startup (Simon Riggs)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Start hot standby faster when initial snapshot is incomplete
|
||||||
|
(Simon Riggs)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix race condition during toast table access from stale syscache entries
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The typical symptom was transient errors like <quote>missing chunk
|
||||||
|
number 0 for toast value NNNNN in pg_toast_2619</>, where the cited
|
||||||
|
toast table would always belong to a system catalog.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Track dependencies of functions on items used in parameter default
|
||||||
|
expressions (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously, a referenced object could be dropped without having dropped
|
||||||
|
or modified the function, leading to misbehavior when the function was
|
||||||
|
used. Note that merely installing this update will not fix the missing
|
||||||
|
dependency entries; to do that, you'd need to <command>CREATE OR
|
||||||
|
REPLACE</> each such function afterwards. If you have functions whose
|
||||||
|
defaults depend on non-built-in objects, doing so is recommended.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Allow inlining of set-returning SQL functions with multiple OUT
|
||||||
|
parameters (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Don't trust deferred-unique indexes for join removal (Tom Lane and Marti
|
||||||
|
Raudsepp)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A deferred uniqueness constraint might not hold intra-transaction,
|
||||||
|
so assuming that it does could give incorrect query results.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Make <function>DatumGetInetP()</> unpack inet datums that have a 1-byte
|
||||||
|
header, and add a new macro, <function>DatumGetInetPP()</>, that does
|
||||||
|
not (Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This change affects no core code, but might prevent crashes in add-on
|
||||||
|
code that expects <function>DatumGetInetP()</> to produce an unpacked
|
||||||
|
datum as per usual convention.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve locale support in <type>money</> type's input and output
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Aside from not supporting all standard
|
||||||
|
<link linkend="guc-lc-monetary"><varname>lc_monetary</></link>
|
||||||
|
formatting options, the input and output functions were inconsistent,
|
||||||
|
meaning there were locales in which dumped <type>money</> values could
|
||||||
|
not be re-read.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Don't let <link
|
||||||
|
linkend="guc-transform-null-equals"><varname>transform_null_equals</></link>
|
||||||
|
affect <literal>CASE foo WHEN NULL ...</> constructs
|
||||||
|
(Heikki Linnakangas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<varname>transform_null_equals</> is only supposed to affect
|
||||||
|
<literal>foo = NULL</> expressions written directly by the user, not
|
||||||
|
equality checks generated internally by this form of <literal>CASE</>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Change foreign-key trigger creation order to better support
|
||||||
|
self-referential foreign keys (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
For a cascading foreign key that references its own table, a row update
|
||||||
|
will fire both the <literal>ON UPDATE</> trigger and the
|
||||||
|
<literal>CHECK</> trigger as one event. The <literal>ON UPDATE</>
|
||||||
|
trigger must execute first, else the <literal>CHECK</> will check a
|
||||||
|
non-final state of the row and possibly throw an inappropriate error.
|
||||||
|
However, the firing order of these triggers is determined by their
|
||||||
|
names, which generally sort in creation order since the triggers have
|
||||||
|
auto-generated names following the convention
|
||||||
|
<quote>RI_ConstraintTrigger_NNNN</>. A proper fix would require
|
||||||
|
modifying that convention, which we will do in 9.2, but it seems risky
|
||||||
|
to change it in existing releases. So this patch just changes the
|
||||||
|
creation order of the triggers. Users encountering this type of error
|
||||||
|
should drop and re-create the foreign key constraint to get its
|
||||||
|
triggers into the right order.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid floating-point underflow while tracking buffer allocation rate
|
||||||
|
(Greg Matthews)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
While harmless in itself, on certain platforms this would result in
|
||||||
|
annoying kernel log messages.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Preserve configuration file name and line number values when starting
|
||||||
|
child processes under Windows (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Formerly, these would not be displayed correctly in the
|
||||||
|
<structname>pg_settings</> view.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect field alignment in <application>ecpg</>'s SQLDA area
|
||||||
|
(Zoltan Boszormenyi)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Preserve blank lines within commands in <application>psql</>'s command
|
||||||
|
history (Robert Haas)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The former behavior could cause problems if an empty line was removed
|
||||||
|
from within a string literal, for example.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <application>pg_dump</> to dump user-defined casts between
|
||||||
|
auto-generated types, such as table rowtypes (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Assorted fixes for <application>pg_upgrade</> (Bruce Momjian)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Handle exclusion constraints correctly, avoid failures on Windows,
|
||||||
|
don't complain about mismatched toast table names in 8.4 databases.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Use the preferred version of <application>xsubpp</> to build PL/Perl,
|
||||||
|
not necessarily the operating system's main copy
|
||||||
|
(David Wheeler and Alex Hunsaker)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect coding in <filename>contrib/dict_int</> and
|
||||||
|
<filename>contrib/dict_xsyn</> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Some functions incorrectly assumed that memory returned by
|
||||||
|
<function>palloc()</> is guaranteed zeroed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix assorted errors in <filename>contrib/unaccent</>'s configuration
|
||||||
|
file parsing (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Honor query cancel interrupts promptly in <function>pgstatindex()</>
|
||||||
|
(Robert Haas)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incorrect quoting of log file name in Mac OS X start script
|
||||||
|
(Sidar Lopez)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Ensure VPATH builds properly install all server header files
|
||||||
|
(Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Shorten file names reported in verbose error messages (Peter Eisentraut)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Regular builds have always reported just the name of the C file
|
||||||
|
containing the error message call, but VPATH builds formerly
|
||||||
|
reported an absolute path name.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix interpretation of Windows timezone names for Central America
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Map <quote>Central America Standard Time</> to <literal>CST6</>, not
|
||||||
|
<literal>CST6CDT</>, because DST is generally not observed anywhere in
|
||||||
|
Central America.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</> release 2011n
|
||||||
|
for DST law changes in Brazil, Cuba, Fiji, Palestine, Russia, and Samoa;
|
||||||
|
also historical corrections for Alaska and British East Africa.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-9-0-5">
|
<sect1 id="release-9-0-5">
|
||||||
<title>Release 9.0.5</title>
|
<title>Release 9.0.5</title>
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user