mirror of
https://github.com/postgres/postgres.git
synced 2025-07-31 22:04:40 +03:00
Release notes for 10.5, 9.6.10, 9.5.14, 9.4.19, 9.3.24.
This commit is contained in:
@ -1,6 +1,295 @@
|
||||
<!-- doc/src/sgml/release-9.3.sgml -->
|
||||
<!-- See header comment in release.sgml about typical markup -->
|
||||
|
||||
<sect1 id="release-9-3-24">
|
||||
<title>Release 9.3.24</title>
|
||||
|
||||
<formalpara>
|
||||
<title>Release date:</title>
|
||||
<para>2018-08-09</para>
|
||||
</formalpara>
|
||||
|
||||
<para>
|
||||
This release contains a variety of fixes from 9.3.23.
|
||||
For information about new features in the 9.3 major release, see
|
||||
<xref linkend="release-9-3">.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <productname>PostgreSQL</productname> community will stop releasing
|
||||
updates for the 9.3.X release series shortly after September 2018.
|
||||
Users are encouraged to update to a newer release branch soon.
|
||||
</para>
|
||||
|
||||
<sect2>
|
||||
<title>Migration to Version 9.3.24</title>
|
||||
|
||||
<para>
|
||||
A dump/restore is not required for those running 9.3.X.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
However, if you are upgrading from a version earlier than 9.3.23,
|
||||
see <xref linkend="release-9-3-23">.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2>
|
||||
<title>Changes</title>
|
||||
|
||||
<itemizedlist>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure that updates to the <structfield>relfrozenxid</structfield>
|
||||
and <structfield>relminmxid</structfield> values
|
||||
for <quote>nailed</quote> system catalogs are processed in a timely
|
||||
fashion (Andres Freund)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Overoptimistic caching rules could prevent these updates from being
|
||||
seen by other sessions, leading to spurious errors and/or data
|
||||
corruption. The problem was significantly worse for shared catalogs,
|
||||
such as <structname>pg_authid</structname>, because the stale cache
|
||||
data could persist into new sessions as well as existing ones.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix case where a freshly-promoted standby crashes before having
|
||||
completed its first post-recovery checkpoint (Michael Paquier, Kyotaro
|
||||
Horiguchi, Pavan Deolasee, Álvaro Herrera)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This led to a situation where the server did not think it had reached
|
||||
a consistent database state during subsequent WAL replay, preventing
|
||||
restart.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Avoid emitting a bogus WAL record when recycling an all-zero btree
|
||||
page (Amit Kapila)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This mistake has been seen to cause assertion failures, and
|
||||
potentially it could result in unnecessary query cancellations on hot
|
||||
standby servers.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Improve performance of WAL replay for transactions that drop many
|
||||
relations (Fujii Masao)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This change reduces the number of times that shared buffers are
|
||||
scanned, so that it is of most benefit when that setting is large.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Improve performance of lock releasing in standby server WAL replay
|
||||
(Thomas Munro)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Ensure a table's cached index list is correctly rebuilt after an index
|
||||
creation fails partway through (Peter Geoghegan)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Previously, the failed index's OID could remain in the list, causing
|
||||
problems later in the same session.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix misoptimization of equivalence classes involving composite-type
|
||||
columns (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This resulted in failure to recognize that an index on a composite
|
||||
column could provide the sort order needed for a mergejoin on that
|
||||
column.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix SQL-standard <literal>FETCH FIRST</literal> syntax to allow
|
||||
parameters (<literal>$<replaceable>n</replaceable></literal>), as the
|
||||
standard expects (Andrew Gierth)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix failure to schema-qualify some object names
|
||||
in <function>getObjectDescription</function> output
|
||||
(Kyotaro Horiguchi, Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Names of collations, conversions, and text search objects
|
||||
were not schema-qualified when they should be.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Widen <command>COPY FROM</command>'s current-line-number counter
|
||||
from 32 to 64 bits (David Rowley)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This avoids two problems with input exceeding 4G lines: <literal>COPY
|
||||
FROM WITH HEADER</literal> would drop a line every 4G lines, not only
|
||||
the first line, and error reports could show a wrong line number.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Add a string freeing function
|
||||
to <application>ecpg</application>'s <filename>pgtypes</filename>
|
||||
library, so that cross-module memory management problems can be
|
||||
avoided on Windows (Takayuki Tsunakawa)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
On Windows, crashes can ensue if the <function>free</function> call
|
||||
for a given chunk of memory is not made from the same DLL
|
||||
that <function>malloc</function>'ed the memory.
|
||||
The <filename>pgtypes</filename> library sometimes returns strings
|
||||
that it expects the caller to free, making it impossible to follow
|
||||
this rule. Add a <function>PGTYPESchar_free()</function> function
|
||||
that just wraps <function>free</function>, allowing applications
|
||||
to follow this rule.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix <application>ecpg</application>'s support for <type>long
|
||||
long</type> variables on Windows, as well as other platforms that
|
||||
declare <function>strtoll</function>/<function>strtoull</function>
|
||||
nonstandardly or not at all (Dang Minh Huong, Tom Lane)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix misidentification of SQL statement type in PL/pgSQL, when a rule
|
||||
change causes a change in the semantics of a statement intra-session
|
||||
(Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This error led to assertion failures, or in rare cases, failure to
|
||||
enforce the <literal>INTO STRICT</literal> option as expected.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix password prompting in client programs so that echo is properly
|
||||
disabled on Windows when <literal>stdin</literal> is not the
|
||||
terminal (Matthew Stickney)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Further fix mis-quoting of values for list-valued GUC variables in
|
||||
dumps (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The previous fix for quoting of <varname>search_path</varname> and
|
||||
other list-valued variables in <application>pg_dump</application>
|
||||
output turned out to misbehave for empty-string list elements, and it
|
||||
risked truncation of long file paths.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Make <application>pg_upgrade</application> check that the old server
|
||||
was shut down cleanly (Bruce Momjian)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The previous check could be fooled by an immediate-mode shutdown.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix crash in <filename>contrib/ltree</filename>'s
|
||||
<function>lca()</function> function when the input array is empty
|
||||
(Pierre Ducroquet)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Fix various error-handling code paths in which an incorrect error code
|
||||
might be reported (Michael Paquier, Tom Lane, Magnus Hagander)
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Rearrange makefiles to ensure that programs link to freshly-built
|
||||
libraries (such as <filename>libpq.so</filename>) rather than ones
|
||||
that might exist in the system library directories (Tom Lane)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This avoids problems when building on platforms that supply old copies
|
||||
of <productname>PostgreSQL</productname> libraries.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Update time zone data files to <application>tzdata</application>
|
||||
release 2018e for DST law changes in North Korea, plus historical
|
||||
corrections for Czechoslovakia.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
This update includes a redefinition of <quote>daylight savings</quote>
|
||||
in Ireland, as well as for some past years in Namibia and
|
||||
Czechoslovakia. In those jurisdictions, legally standard time is
|
||||
observed in summer, and daylight savings time in winter, so that the
|
||||
daylight savings offset is one hour behind standard time not one hour
|
||||
ahead. This does not affect either the actual UTC offset or the
|
||||
timezone abbreviations in use; the only known effect is that
|
||||
the <structfield>is_dst</structfield> column in
|
||||
the <structname>pg_timezone_names</structname> view will now be true
|
||||
in winter and false in summer in these cases.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<sect1 id="release-9-3-23">
|
||||
<title>Release 9.3.23</title>
|
||||
|
||||
|
Reference in New Issue
Block a user