mirror of
https://github.com/postgres/postgres.git
synced 2025-06-08 22:02:03 +03:00
Release notes for 11.3, 10.8, 9.6.13, 9.5.17, 9.4.22.
This commit is contained in:
parent
5f8e84ff47
commit
21de9ae159
@ -1,6 +1,342 @@
|
|||||||
<!-- doc/src/sgml/release-9.4.sgml -->
|
<!-- doc/src/sgml/release-9.4.sgml -->
|
||||||
<!-- See header comment in release.sgml about typical markup -->
|
<!-- See header comment in release.sgml about typical markup -->
|
||||||
|
|
||||||
|
<sect1 id="release-9-4-22">
|
||||||
|
<title>Release 9.4.22</title>
|
||||||
|
|
||||||
|
<formalpara>
|
||||||
|
<title>Release date:</title>
|
||||||
|
<para>2019-05-09</para>
|
||||||
|
</formalpara>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This release contains a variety of fixes from 9.4.21.
|
||||||
|
For information about new features in the 9.4 major release, see
|
||||||
|
<xref linkend="release-9-4">.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The <productname>PostgreSQL</productname> community will stop
|
||||||
|
releasing updates for the 9.4.X release series in February 2020.
|
||||||
|
Users are encouraged to update to a newer release branch soon.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Migration to Version 9.4.22</title>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A dump/restore is not required for those running 9.4.X.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
However, if you are upgrading from a version earlier than 9.4.18,
|
||||||
|
see <xref linkend="release-9-4-18">.
|
||||||
|
</para>
|
||||||
|
</sect2>
|
||||||
|
|
||||||
|
<sect2>
|
||||||
|
<title>Changes</title>
|
||||||
|
|
||||||
|
<itemizedlist>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix behavior for an <command>UPDATE</command>
|
||||||
|
or <command>DELETE</command> on an inheritance tree or partitioned
|
||||||
|
table in which every table can be excluded (Amit Langote, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
In such cases, the query did not report the correct set of output
|
||||||
|
columns when a <literal>RETURNING</literal> clause was present, and
|
||||||
|
if there were any statement-level triggers that should be fired, it
|
||||||
|
didn't fire them.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix handling of explicit <literal>DEFAULT</literal> items in
|
||||||
|
an <command>INSERT ... VALUES</command> command with
|
||||||
|
multiple <literal>VALUES</literal> rows, if the target relation is
|
||||||
|
an updatable view (Amit Langote, Dean Rasheed)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
When the updatable view has no default for the column but its
|
||||||
|
underlying table has one, a single-row <command>INSERT
|
||||||
|
... VALUES</command> will use the underlying table's default.
|
||||||
|
In the multi-row case, however, NULL was always used. Correct it to
|
||||||
|
act like the single-row case.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <command>CREATE VIEW</command> to allow zero-column views
|
||||||
|
(Ashutosh Sharma)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
We should allow this for consistency with allowing zero-column
|
||||||
|
tables. Since a table can be converted to a view, zero-column views
|
||||||
|
could be created even with the restriction in place, leading to
|
||||||
|
dump/reload failures.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Accept XML documents as valid values of type <type>xml</type>
|
||||||
|
when <varname>xmloption</varname> is set
|
||||||
|
to <literal>content</literal>, as required by SQL:2006 and later
|
||||||
|
(Chapman Flack)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Previously <productname>PostgreSQL</productname> followed the
|
||||||
|
SQL:2003 definition, which doesn't allow this. But that creates a
|
||||||
|
serious problem for dump/restore: there is no setting
|
||||||
|
of <varname>xmloption</varname> that will accept all valid XML data.
|
||||||
|
Hence, switch to the 2006 definition.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<application>pg_dump</application> is also modified to emit
|
||||||
|
<literal>SET xmloption = content</literal> while restoring data,
|
||||||
|
ensuring that dump/restore works even if the prevailing
|
||||||
|
setting is <literal>document</literal>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Improve server's startup-time checks for whether a pre-existing
|
||||||
|
shared memory segment is still in use (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The postmaster is now more likely to detect that there are still
|
||||||
|
active processes from a previous postmaster incarnation, even if
|
||||||
|
the <filename>postmaster.pid</filename> file has been removed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix incompatibility of GIN-index WAL records (Alexander Korotkov)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A fix applied in February's minor releases was not sufficiently
|
||||||
|
careful about backwards compatibility, leading to problems if a
|
||||||
|
standby server of that vintage reads GIN page-deletion WAL records
|
||||||
|
generated by a primary server of a previous minor release.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Tolerate <literal>EINVAL</literal> and <literal>ENOSYS</literal>
|
||||||
|
error results, where appropriate, for <function>fsync</function>
|
||||||
|
and <function>sync_file_range</function> calls
|
||||||
|
(Thomas Munro, James Sewell)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
The previous change to panic on file synchronization failures turns
|
||||||
|
out to have been excessively paranoid for certain cases where a
|
||||||
|
failure is predictable and essentially means <quote>operation not
|
||||||
|
supported</quote>.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix <quote>failed to build any <replaceable>N</replaceable>-way
|
||||||
|
joins</quote> planner failures with lateral references leading out
|
||||||
|
of <literal>FULL</literal> outer joins (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid O(N^2) performance issue when rolling back a transaction that
|
||||||
|
created many tables (Tomas Vondra)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix race conditions in management of dynamic shared memory
|
||||||
|
(Thomas Munro)
|
||||||
|
</para>
|
||||||
|
<para>
|
||||||
|
These could lead to <quote>dsa_area could not attach to
|
||||||
|
segment</quote> or <quote>cannot unpin a segment that is not
|
||||||
|
pinned</quote> errors.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix race condition in which a hot-standby postmaster could fail to
|
||||||
|
shut down after receiving a smart-shutdown request (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Tighten validation of encoded SCRAM-SHA-256 and MD5 passwords
|
||||||
|
(Jonathan Katz)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A password string that had the right initial characters could be
|
||||||
|
mistaken for one that is correctly hashed into SCRAM-SHA-256 or MD5
|
||||||
|
format. The password would be accepted but would be unusable later.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix handling of <varname>lc_time</varname> settings that imply an
|
||||||
|
encoding different from the database's encoding (Juan José
|
||||||
|
Santamaría Flecha, Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Localized month or day names that include non-ASCII characters
|
||||||
|
previously caused unexpected errors or wrong output in such locales.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Disallow <literal>NaN</literal> as a value for floating-point server
|
||||||
|
parameters (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Rearrange <command>REINDEX</command> processing to avoid assertion
|
||||||
|
failures when reindexing individual indexes
|
||||||
|
of <structname>pg_class</structname> (Andres Freund, Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix planner assertion failure for parameterized dummy paths (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Insert correct test function in the result
|
||||||
|
of <function>SnapBuildInitialSnapshot()</function> (Antonin Houska)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
No core code cares about this, but some extensions do.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix intermittent <quote>could not reattach to shared memory</quote>
|
||||||
|
session startup failures on Windows (Noah Misch)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A previously unrecognized source of these failures is creation of
|
||||||
|
thread stacks for a process's default thread pool. Arrange for such
|
||||||
|
stacks to be allocated in a different memory region.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix error detection in directory scanning on Windows (Konstantin
|
||||||
|
Knizhnik)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
Errors, such as lack of permissions to read the directory, were not
|
||||||
|
detected or reported correctly; instead the code silently acted as
|
||||||
|
though the directory were empty.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix grammar problems in <application>ecpg</application> (Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
A missing semicolon led to mistranslation
|
||||||
|
of <literal>SET <replaceable>variable</replaceable> =
|
||||||
|
DEFAULT</literal> (but
|
||||||
|
not <literal>SET <replaceable>variable</replaceable> TO
|
||||||
|
DEFAULT</literal>) in <application>ecpg</application> programs,
|
||||||
|
producing syntactically invalid output that the server would reject.
|
||||||
|
Additionally, in a <command>DROP TYPE</command> or <command>DROP
|
||||||
|
DOMAIN</command> command that listed multiple type names, only the
|
||||||
|
first type name was actually processed.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Fix possible buffer overruns in <application>ecpg</application>'s
|
||||||
|
processing of include filenames (Liu Huailing, Fei Wu)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Avoid crash in <filename>contrib/vacuumlo</filename> if
|
||||||
|
an <function>lo_unlink()</function> call failed (Tom Lane)
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Sync our copy of the timezone library with IANA tzcode release 2019a
|
||||||
|
(Tom Lane)
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
This corrects a small bug in <application>zic</application> that
|
||||||
|
caused it to output an incorrect year-2440 transition in
|
||||||
|
the <literal>Africa/Casablanca</literal> zone, and adds support
|
||||||
|
for <application>zic</application>'s new <option>-r</option> option.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
<listitem>
|
||||||
|
<para>
|
||||||
|
Update time zone data files to <application>tzdata</application>
|
||||||
|
release 2019a for DST law changes in Palestine and Metlakatla,
|
||||||
|
plus historical corrections for Israel.
|
||||||
|
</para>
|
||||||
|
|
||||||
|
<para>
|
||||||
|
<literal>Etc/UCT</literal> is now a backward-compatibility link
|
||||||
|
to <literal>Etc/UTC</literal>, instead of being a separate zone that
|
||||||
|
generates the abbreviation <literal>UCT</literal>, which nowadays is
|
||||||
|
typically a typo. <productname>PostgreSQL</productname> will still
|
||||||
|
accept <literal>UCT</literal> as an input zone abbreviation, but it
|
||||||
|
won't output it.
|
||||||
|
</para>
|
||||||
|
</listitem>
|
||||||
|
|
||||||
|
</itemizedlist>
|
||||||
|
|
||||||
|
</sect2>
|
||||||
|
</sect1>
|
||||||
|
|
||||||
<sect1 id="release-9-4-21">
|
<sect1 id="release-9-4-21">
|
||||||
<title>Release 9.4.21</title>
|
<title>Release 9.4.21</title>
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user