diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2017-05-07 16:56:02 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2017-05-07 16:56:02 -0400 |
commit | 27dae036a5809a61104b7380f0cd98c37b43170f (patch) | |
tree | 5fc4a7d167407330849cdc57c3e8a67f0025f2f9 | |
parent | 86713deecda4ddbf8e339ec48fafa4d8080f6079 (diff) | |
download | postgresql-27dae036a5809a61104b7380f0cd98c37b43170f.tar.gz postgresql-27dae036a5809a61104b7380f0cd98c37b43170f.zip |
Release notes for 9.6.3, 9.5.7, 9.4.12, 9.3.17, 9.2.21.
-rw-r--r-- | doc/src/sgml/release-9.2.sgml | 325 | ||||
-rw-r--r-- | doc/src/sgml/release-9.3.sgml | 346 | ||||
-rw-r--r-- | doc/src/sgml/release-9.4.sgml | 435 | ||||
-rw-r--r-- | doc/src/sgml/release-9.5.sgml | 496 | ||||
-rw-r--r-- | doc/src/sgml/release-9.6.sgml | 50 |
5 files changed, 1602 insertions, 50 deletions
diff --git a/doc/src/sgml/release-9.2.sgml b/doc/src/sgml/release-9.2.sgml index b27176bdd67..b2454ad0612 100644 --- a/doc/src/sgml/release-9.2.sgml +++ b/doc/src/sgml/release-9.2.sgml @@ -1,6 +1,331 @@ <!-- doc/src/sgml/release-9.2.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-2-21"> + <title>Release 9.2.21</title> + + <note> + <title>Release Date</title> + <simpara>2017-05-11</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.2.20. + For information about new features in the 9.2 major release, see + <xref linkend="release-9-2">. + </para> + + <para> + The <productname>PostgreSQL</> community will stop releasing updates + for the 9.2.X release series in September 2017. + Users are encouraged to update to a newer release branch soon. + </para> + + <sect2> + <title>Migration to Version 9.2.21</title> + + <para> + A dump/restore is not required for those running 9.2.X. + </para> + + <para> + However, if you are upgrading from a version earlier than 9.2.20, + see <xref linkend="release-9-2-20">. + </para> + + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix possible corruption of <quote>init forks</> of unlogged indexes + (Robert Haas, Michael Paquier) + </para> + + <para> + This could result in an unlogged index being set to an invalid state + after a crash and restart. Such a problem would persist until the + index was dropped and rebuilt. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect reconstruction of <structname>pg_subtrans</> entries + when a standby server replays a prepared but uncommitted two-phase + transaction (Tom Lane) + </para> + + <para> + In most cases this turned out to have no visible ill effects, but in + corner cases it could result in circular references + in <structname>pg_subtrans</>, potentially causing infinite loops + in queries that examine rows modified by the two-phase transaction. + </para> + </listitem> + + <listitem> + <para> + Ensure parsing of queries in extension scripts sees the results of + immediately-preceding DDL (Julien Rouhaud, Tom Lane) + </para> + + <para> + Due to lack of a cache flush step between commands in an extension + script file, non-utility queries might not see the effects of an + immediately preceding catalog change, such as <command>ALTER TABLE + ... RENAME</>. + </para> + </listitem> + + <listitem> + <para> + Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER + COLUMN TYPE</> rebuilds an existing index (Noah Misch) + </para> + + <para> + The command failed if the calling user did not currently have + <literal>CREATE</> privilege for the tablespace containing the index. + That behavior seems unhelpful, so skip the check, allowing the + index to be rebuilt where it is. + </para> + </listitem> + + <listitem> + <para> + Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse + to child tables when the constraint is marked <literal>NO INHERIT</> + (Amit Langote) + </para> + + <para> + This fix prevents unwanted <quote>constraint does not exist</> failures + when no matching constraint is present in the child tables. + </para> + </listitem> + + <listitem> + <para> + Fix <command>VACUUM</> to account properly for pages that could not + be scanned due to conflicting page pins (Andrew Gierth) + </para> + + <para> + This tended to lead to underestimation of the number of tuples in + the table. In the worst case of a small heavily-contended + table, <command>VACUUM</> could incorrectly report that the table + contained no tuples, leading to very bad planning choices. + </para> + </listitem> + + <listitem> + <para> + Ensure that bulk-tuple-transfer loops within a hash join are + interruptible by query cancel requests (Tom Lane, Thomas Munro) + </para> + </listitem> + + <listitem> + <para> + Fix <function>cursor_to_xml()</> to produce valid output + with <replaceable>tableforest</> = false + (Thomas Munro, Peter Eisentraut) + </para> + + <para> + Previously it failed to produce a wrapping <literal><table></> + element. + </para> + </listitem> + + <listitem> + <para> + Improve performance of <structname>pg_timezone_names</> view + (Tom Lane, David Rowley) + </para> + </listitem> + + <listitem> + <para> + Fix sloppy handling of corner-case errors from <function>lseek()</> + and <function>close()</> (Tom Lane) + </para> + + <para> + Neither of these system calls are likely to fail in typical situations, + but if they did, <filename>fd.c</> could get quite confused. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect check for whether postmaster is running as a Windows + service (Michael Paquier) + </para> + + <para> + This could result in attempting to write to the event log when that + isn't accessible, so that no logging happens at all. + </para> + </listitem> + + <listitem> + <para> + Fix <application>ecpg</> to support <command>COMMIT PREPARED</> + and <command>ROLLBACK PREPARED</> (Masahiko Sawada) + </para> + </listitem> + + <listitem> + <para> + Fix a double-free error when processing dollar-quoted string literals + in <application>ecpg</> (Michael Meskes) + </para> + </listitem> + + <listitem> + <para> + In <application>pg_dump</>, fix incorrect schema and owner marking for + comments and security labels of some types of database objects + (Giuseppe Broccolo, Tom Lane) + </para> + + <para> + In simple cases this caused no ill effects; but for example, a + schema-selective restore might omit comments it should include, because + they were not marked as belonging to the schema of their associated + object. + </para> + </listitem> + + <listitem> + <para> + Avoid emitting an invalid list file in <literal>pg_restore -l</> + when SQL object names contain newlines (Tom Lane) + </para> + + <para> + Replace newlines by spaces, which is sufficient to make the output + valid for <literal>pg_restore -L</>'s purposes. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to transfer comments and security labels + attached to <quote>large objects</> (blobs) (Stephen Frost) + </para> + + <para> + Previously, blobs were correctly transferred to the new database, but + any comments or security labels attached to them were lost. + </para> + </listitem> + + <listitem> + <para> + Improve error handling + in <filename>contrib/adminpack</>'s <function>pg_file_write()</> + function (Noah Misch) + </para> + + <para> + Notably, it failed to detect errors reported + by <function>fclose()</>. + </para> + </listitem> + + <listitem> + <para> + In <filename>contrib/dblink</>, avoid leaking the previous unnamed + connection when establishing a new unnamed connection (Joe Conway) + </para> + </listitem> + + <listitem> + <para> + Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane) + </para> + + <para> + This is a back-patch of work previously done in newer branches; + it's needed since many platforms are adopting newer OpenSSL versions. + </para> + </listitem> + + <listitem> + <para> + Support Tcl 8.6 in MSVC builds (Álvaro Herrera) + </para> + </listitem> + + <listitem> + <para> + Sync our copy of the timezone library with IANA release tzcode2017b + (Tom Lane) + </para> + + <para> + This fixes a bug affecting some DST transitions in January 2038. + </para> + </listitem> + + <listitem> + <para> + Update time zone data files to <application>tzdata</> release 2017b + for DST law changes in Chile, Haiti, and Mongolia, plus historical + corrections for Ecuador, Kazakhstan, Liberia, and Spain. + Switch to numeric abbreviations for numerous time zones in South + America, the Pacific and Indian oceans, and some Asian and Middle + Eastern countries. + </para> + + <para> + The IANA time zone database previously provided textual abbreviations + for all time zones, sometimes making up abbreviations that have little + or no currency among the local population. They are in process of + reversing that policy in favor of using numeric UTC offsets in zones + where there is no evidence of real-world use of an English + abbreviation. At least for the time being, <productname>PostgreSQL</> + will continue to accept such removed abbreviations for timestamp input. + But they will not be shown in the <structname>pg_timezone_names</> + view nor used for output. + </para> + </listitem> + + <listitem> + <para> + Use correct daylight-savings rules for POSIX-style time zone names + in MSVC builds (David Rowley) + </para> + + <para> + The Microsoft MSVC build scripts neglected to install + the <filename>posixrules</> file in the timezone directory tree. + This resulted in the timezone code falling back to its built-in + rule about what DST behavior to assume for a POSIX-style time zone + name. For historical reasons that still corresponds to the DST rules + the USA was using before 2007 (i.e., change on first Sunday in April + and last Sunday in October). With this fix, a POSIX-style zone name + will use the current and historical DST transition dates of + the <literal>US/Eastern</> zone. If you don't want that, remove + the <filename>posixrules</> file, or replace it with a copy of some + other zone file (see <xref linkend="datatype-timezones">). Note that + due to caching, you may need to restart the server to get such changes + to take effect. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-2-20"> <title>Release 9.2.20</title> diff --git a/doc/src/sgml/release-9.3.sgml b/doc/src/sgml/release-9.3.sgml index df36947930d..44c1e2ac69d 100644 --- a/doc/src/sgml/release-9.3.sgml +++ b/doc/src/sgml/release-9.3.sgml @@ -1,6 +1,352 @@ <!-- doc/src/sgml/release-9.3.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-3-17"> + <title>Release 9.3.17</title> + + <note> + <title>Release Date</title> + <simpara>2017-05-11</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.3.16. + For information about new features in the 9.3 major release, see + <xref linkend="release-9-3">. + </para> + + <sect2> + <title>Migration to Version 9.3.17</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.16, + see <xref linkend="release-9-3-16">. + </para> + + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix possible corruption of <quote>init forks</> of unlogged indexes + (Robert Haas, Michael Paquier) + </para> + + <para> + This could result in an unlogged index being set to an invalid state + after a crash and restart. Such a problem would persist until the + index was dropped and rebuilt. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect reconstruction of <structname>pg_subtrans</> entries + when a standby server replays a prepared but uncommitted two-phase + transaction (Tom Lane) + </para> + + <para> + In most cases this turned out to have no visible ill effects, but in + corner cases it could result in circular references + in <structname>pg_subtrans</>, potentially causing infinite loops + in queries that examine rows modified by the two-phase transaction. + </para> + </listitem> + + <listitem> + <para> + Ensure parsing of queries in extension scripts sees the results of + immediately-preceding DDL (Julien Rouhaud, Tom Lane) + </para> + + <para> + Due to lack of a cache flush step between commands in an extension + script file, non-utility queries might not see the effects of an + immediately preceding catalog change, such as <command>ALTER TABLE + ... RENAME</>. + </para> + </listitem> + + <listitem> + <para> + Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER + COLUMN TYPE</> rebuilds an existing index (Noah Misch) + </para> + + <para> + The command failed if the calling user did not currently have + <literal>CREATE</> privilege for the tablespace containing the index. + That behavior seems unhelpful, so skip the check, allowing the + index to be rebuilt where it is. + </para> + </listitem> + + <listitem> + <para> + Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse + to child tables when the constraint is marked <literal>NO INHERIT</> + (Amit Langote) + </para> + + <para> + This fix prevents unwanted <quote>constraint does not exist</> failures + when no matching constraint is present in the child tables. + </para> + </listitem> + + <listitem> + <para> + Fix <command>VACUUM</> to account properly for pages that could not + be scanned due to conflicting page pins (Andrew Gierth) + </para> + + <para> + This tended to lead to underestimation of the number of tuples in + the table. In the worst case of a small heavily-contended + table, <command>VACUUM</> could incorrectly report that the table + contained no tuples, leading to very bad planning choices. + </para> + </listitem> + + <listitem> + <para> + Ensure that bulk-tuple-transfer loops within a hash join are + interruptible by query cancel requests (Tom Lane, Thomas Munro) + </para> + </listitem> + + <listitem> + <para> + Fix <function>cursor_to_xml()</> to produce valid output + with <replaceable>tableforest</> = false + (Thomas Munro, Peter Eisentraut) + </para> + + <para> + Previously it failed to produce a wrapping <literal><table></> + element. + </para> + </listitem> + + <listitem> + <para> + Improve performance of <structname>pg_timezone_names</> view + (Tom Lane, David Rowley) + </para> + </listitem> + + <listitem> + <para> + Fix sloppy handling of corner-case errors from <function>lseek()</> + and <function>close()</> (Tom Lane) + </para> + + <para> + Neither of these system calls are likely to fail in typical situations, + but if they did, <filename>fd.c</> could get quite confused. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect check for whether postmaster is running as a Windows + service (Michael Paquier) + </para> + + <para> + This could result in attempting to write to the event log when that + isn't accessible, so that no logging happens at all. + </para> + </listitem> + + <listitem> + <para> + Fix <application>ecpg</> to support <command>COMMIT PREPARED</> + and <command>ROLLBACK PREPARED</> (Masahiko Sawada) + </para> + </listitem> + + <listitem> + <para> + Fix a double-free error when processing dollar-quoted string literals + in <application>ecpg</> (Michael Meskes) + </para> + </listitem> + + <listitem> + <para> + In <application>pg_dump</>, fix incorrect schema and owner marking for + comments and security labels of some types of database objects + (Giuseppe Broccolo, Tom Lane) + </para> + + <para> + In simple cases this caused no ill effects; but for example, a + schema-selective restore might omit comments it should include, because + they were not marked as belonging to the schema of their associated + object. + </para> + </listitem> + + <listitem> + <para> + Avoid emitting an invalid list file in <literal>pg_restore -l</> + when SQL object names contain newlines (Tom Lane) + </para> + + <para> + Replace newlines by spaces, which is sufficient to make the output + valid for <literal>pg_restore -L</>'s purposes. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to transfer comments and security labels + attached to <quote>large objects</> (blobs) (Stephen Frost) + </para> + + <para> + Previously, blobs were correctly transferred to the new database, but + any comments or security labels attached to them were lost. + </para> + </listitem> + + <listitem> + <para> + Improve error handling + in <filename>contrib/adminpack</>'s <function>pg_file_write()</> + function (Noah Misch) + </para> + + <para> + Notably, it failed to detect errors reported + by <function>fclose()</>. + </para> + </listitem> + + <listitem> + <para> + In <filename>contrib/dblink</>, avoid leaking the previous unnamed + connection when establishing a new unnamed connection (Joe Conway) + </para> + </listitem> + + <listitem> + <para> + Fix <filename>contrib/pg_trgm</>'s extraction of trigrams from regular + expressions (Tom Lane) + </para> + + <para> + In some cases it would produce a broken data structure that could never + match anything, leading to GIN or GiST indexscans that use a trigram + index not finding any matches to the regular expression. + </para> + </listitem> + + <listitem> + <para> + In <filename>contrib/postgres_fdw</>, + transmit query cancellation requests to the remote server + (Michael Paquier, Etsuro Fujita) + </para> + + <para> + Previously, a local query cancellation request did not cause an + already-sent remote query to terminate early. This is a back-patch + of work originally done for 9.6. + </para> + </listitem> + + <listitem> + <para> + Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane) + </para> + + <para> + This is a back-patch of work previously done in newer branches; + it's needed since many platforms are adopting newer OpenSSL versions. + </para> + </listitem> + + <listitem> + <para> + Support Tcl 8.6 in MSVC builds (Álvaro Herrera) + </para> + </listitem> + + <listitem> + <para> + Sync our copy of the timezone library with IANA release tzcode2017b + (Tom Lane) + </para> + + <para> + This fixes a bug affecting some DST transitions in January 2038. + </para> + </listitem> + + <listitem> + <para> + Update time zone data files to <application>tzdata</> release 2017b + for DST law changes in Chile, Haiti, and Mongolia, plus historical + corrections for Ecuador, Kazakhstan, Liberia, and Spain. + Switch to numeric abbreviations for numerous time zones in South + America, the Pacific and Indian oceans, and some Asian and Middle + Eastern countries. + </para> + + <para> + The IANA time zone database previously provided textual abbreviations + for all time zones, sometimes making up abbreviations that have little + or no currency among the local population. They are in process of + reversing that policy in favor of using numeric UTC offsets in zones + where there is no evidence of real-world use of an English + abbreviation. At least for the time being, <productname>PostgreSQL</> + will continue to accept such removed abbreviations for timestamp input. + But they will not be shown in the <structname>pg_timezone_names</> + view nor used for output. + </para> + </listitem> + + <listitem> + <para> + Use correct daylight-savings rules for POSIX-style time zone names + in MSVC builds (David Rowley) + </para> + + <para> + The Microsoft MSVC build scripts neglected to install + the <filename>posixrules</> file in the timezone directory tree. + This resulted in the timezone code falling back to its built-in + rule about what DST behavior to assume for a POSIX-style time zone + name. For historical reasons that still corresponds to the DST rules + the USA was using before 2007 (i.e., change on first Sunday in April + and last Sunday in October). With this fix, a POSIX-style zone name + will use the current and historical DST transition dates of + the <literal>US/Eastern</> zone. If you don't want that, remove + the <filename>posixrules</> file, or replace it with a copy of some + other zone file (see <xref linkend="datatype-timezones">). Note that + due to caching, you may need to restart the server to get such changes + to take effect. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-3-16"> <title>Release 9.3.16</title> diff --git a/doc/src/sgml/release-9.4.sgml b/doc/src/sgml/release-9.4.sgml index 5f0280a18a3..fe5ccca5365 100644 --- a/doc/src/sgml/release-9.4.sgml +++ b/doc/src/sgml/release-9.4.sgml @@ -1,6 +1,441 @@ <!-- doc/src/sgml/release-9.4.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-4-12"> + <title>Release 9.4.12</title> + + <note> + <title>Release Date</title> + <simpara>2017-05-11</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.4.11. + For information about new features in the 9.4 major release, see + <xref linkend="release-9-4">. + </para> + + <sect2> + <title>Migration to Version 9.4.12</title> + + <para> + A dump/restore is not required for those running 9.4.X. + </para> + + <para> + However, if you are using third-party replication tools that depend + on <quote>logical decoding</>, see the first changelog entry below. + </para> + + <para> + Also, if you are upgrading from a version earlier than 9.4.11, + see <xref linkend="release-9-4-11">. + </para> + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix possibly-invalid initial snapshot during logical decoding + (Petr Jelinek, Andres Freund) + </para> + + <para> + The initial snapshot created for a logical decoding replication slot + was potentially incorrect. This could cause third-party tools that + use logical decoding to copy incomplete/inconsistent initial data. + This was more likely to happen if the source server was busy at the + time of slot creation, or if another logical slot already existed. + </para> + + <para> + If you are using a replication tool that depends on logical decoding, + and it should have copied a nonempty data set at the start of + replication, it is advisable to recreate the replica after + installing this update, or to verify its contents against the source + server. + </para> + </listitem> + + <listitem> + <para> + Fix possible corruption of <quote>init forks</> of unlogged indexes + (Robert Haas, Michael Paquier) + </para> + + <para> + This could result in an unlogged index being set to an invalid state + after a crash and restart. Such a problem would persist until the + index was dropped and rebuilt. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect reconstruction of <structname>pg_subtrans</> entries + when a standby server replays a prepared but uncommitted two-phase + transaction (Tom Lane) + </para> + + <para> + In most cases this turned out to have no visible ill effects, but in + corner cases it could result in circular references + in <structname>pg_subtrans</>, potentially causing infinite loops + in queries that examine rows modified by the two-phase transaction. + </para> + </listitem> + + <listitem> + <para> + Avoid possible crash in <application>walsender</> due to failure + to initialize a string buffer (Stas Kelvich, Fujii Masao) + </para> + </listitem> + + <listitem> + <para> + Fix postmaster's handling of <function>fork()</> failure for a + background worker process (Tom Lane) + </para> + + <para> + Previously, the postmaster updated portions of its state as though + the process had been launched successfully, resulting in subsequent + confusion. + </para> + </listitem> + + <listitem> + <para> + Ensure parsing of queries in extension scripts sees the results of + immediately-preceding DDL (Julien Rouhaud, Tom Lane) + </para> + + <para> + Due to lack of a cache flush step between commands in an extension + script file, non-utility queries might not see the effects of an + immediately preceding catalog change, such as <command>ALTER TABLE + ... RENAME</>. + </para> + </listitem> + + <listitem> + <para> + Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER + COLUMN TYPE</> rebuilds an existing index (Noah Misch) + </para> + + <para> + The command failed if the calling user did not currently have + <literal>CREATE</> privilege for the tablespace containing the index. + That behavior seems unhelpful, so skip the check, allowing the + index to be rebuilt where it is. + </para> + </listitem> + + <listitem> + <para> + Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse + to child tables when the constraint is marked <literal>NO INHERIT</> + (Amit Langote) + </para> + + <para> + This fix prevents unwanted <quote>constraint does not exist</> failures + when no matching constraint is present in the child tables. + </para> + </listitem> + + <listitem> + <para> + Fix <command>VACUUM</> to account properly for pages that could not + be scanned due to conflicting page pins (Andrew Gierth) + </para> + + <para> + This tended to lead to underestimation of the number of tuples in + the table. In the worst case of a small heavily-contended + table, <command>VACUUM</> could incorrectly report that the table + contained no tuples, leading to very bad planning choices. + </para> + </listitem> + + <listitem> + <para> + Ensure that bulk-tuple-transfer loops within a hash join are + interruptible by query cancel requests (Tom Lane, Thomas Munro) + </para> + </listitem> + + <listitem> + <para> + Fix integer-overflow problems in <type>interval</> comparison (Kyotaro + Horiguchi, Tom Lane) + </para> + + <para> + The comparison operators for type <type>interval</> could yield wrong + answers for intervals larger than about 296000 years. Indexes on + columns containing such large values should be reindexed, since they + may be corrupt. + </para> + </listitem> + + <listitem> + <para> + Fix <function>cursor_to_xml()</> to produce valid output + with <replaceable>tableforest</> = false + (Thomas Munro, Peter Eisentraut) + </para> + + <para> + Previously it failed to produce a wrapping <literal><table></> + element. + </para> + </listitem> + + <listitem> + <para> + Fix roundoff problems in <function>float8_timestamptz()</> + and <function>make_interval()</> (Tom Lane) + </para> + + <para> + These functions truncated, rather than rounded, when converting a + floating-point value to integer microseconds; that could cause + unexpectedly off-by-one results. + </para> + </listitem> + + <listitem> + <para> + Improve performance of <structname>pg_timezone_names</> view + (Tom Lane, David Rowley) + </para> + </listitem> + + <listitem> + <para> + Reduce memory management overhead for contexts containing many large + blocks (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix sloppy handling of corner-case errors from <function>lseek()</> + and <function>close()</> (Tom Lane) + </para> + + <para> + Neither of these system calls are likely to fail in typical situations, + but if they did, <filename>fd.c</> could get quite confused. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect check for whether postmaster is running as a Windows + service (Michael Paquier) + </para> + + <para> + This could result in attempting to write to the event log when that + isn't accessible, so that no logging happens at all. + </para> + </listitem> + + <listitem> + <para> + Fix <application>ecpg</> to support <command>COMMIT PREPARED</> + and <command>ROLLBACK PREPARED</> (Masahiko Sawada) + </para> + </listitem> + + <listitem> + <para> + Fix a double-free error when processing dollar-quoted string literals + in <application>ecpg</> (Michael Meskes) + </para> + </listitem> + + <listitem> + <para> + In <application>pg_dump</>, fix incorrect schema and owner marking for + comments and security labels of some types of database objects + (Giuseppe Broccolo, Tom Lane) + </para> + + <para> + In simple cases this caused no ill effects; but for example, a + schema-selective restore might omit comments it should include, because + they were not marked as belonging to the schema of their associated + object. + </para> + </listitem> + + <listitem> + <para> + Avoid emitting an invalid list file in <literal>pg_restore -l</> + when SQL object names contain newlines (Tom Lane) + </para> + + <para> + Replace newlines by spaces, which is sufficient to make the output + valid for <literal>pg_restore -L</>'s purposes. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to transfer comments and security labels + attached to <quote>large objects</> (blobs) (Stephen Frost) + </para> + + <para> + Previously, blobs were correctly transferred to the new database, but + any comments or security labels attached to them were lost. + </para> + </listitem> + + <listitem> + <para> + Improve error handling + in <filename>contrib/adminpack</>'s <function>pg_file_write()</> + function (Noah Misch) + </para> + + <para> + Notably, it failed to detect errors reported + by <function>fclose()</>. + </para> + </listitem> + + <listitem> + <para> + In <filename>contrib/dblink</>, avoid leaking the previous unnamed + connection when establishing a new unnamed connection (Joe Conway) + </para> + </listitem> + + <listitem> + <para> + Fix <filename>contrib/pg_trgm</>'s extraction of trigrams from regular + expressions (Tom Lane) + </para> + + <para> + In some cases it would produce a broken data structure that could never + match anything, leading to GIN or GiST indexscans that use a trigram + index not finding any matches to the regular expression. + </para> + </listitem> + + <listitem> + <para> + In <filename>contrib/postgres_fdw</>, + transmit query cancellation requests to the remote server + (Michael Paquier, Etsuro Fujita) + </para> + + <para> + Previously, a local query cancellation request did not cause an + already-sent remote query to terminate early. This is a back-patch + of work originally done for 9.6. + </para> + </listitem> + + <listitem> +<!-- +Author: Tom Lane <tgl@sss.pgh.pa.us> +Branch: REL9_4_STABLE [bb132cddf] 2017-04-15 20:16:03 -0400 +Branch: REL9_3_STABLE [fbfeceb25] 2017-04-17 12:51:40 -0400 +Branch: REL9_2_STABLE [58384149b] 2017-04-17 12:51:40 -0400 +Branch: REL9_3_STABLE [4e91330da] 2017-04-17 13:52:42 -0400 +Branch: REL9_2_STABLE [fb50c38e9] 2017-04-17 13:52:42 -0400 +--> + <para> + Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane) + </para> + + <para> + This is a back-patch of work previously done in newer branches; + it's needed since many platforms are adopting newer OpenSSL versions. + </para> + </listitem> + + <listitem> + <para> + Support Tcl 8.6 in MSVC builds (Álvaro Herrera) + </para> + </listitem> + + <listitem> + <para> + Sync our copy of the timezone library with IANA release tzcode2017b + (Tom Lane) + </para> + + <para> + This fixes a bug affecting some DST transitions in January 2038. + </para> + </listitem> + + <listitem> + <para> + Update time zone data files to <application>tzdata</> release 2017b + for DST law changes in Chile, Haiti, and Mongolia, plus historical + corrections for Ecuador, Kazakhstan, Liberia, and Spain. + Switch to numeric abbreviations for numerous time zones in South + America, the Pacific and Indian oceans, and some Asian and Middle + Eastern countries. + </para> + + <para> + The IANA time zone database previously provided textual abbreviations + for all time zones, sometimes making up abbreviations that have little + or no currency among the local population. They are in process of + reversing that policy in favor of using numeric UTC offsets in zones + where there is no evidence of real-world use of an English + abbreviation. At least for the time being, <productname>PostgreSQL</> + will continue to accept such removed abbreviations for timestamp input. + But they will not be shown in the <structname>pg_timezone_names</> + view nor used for output. + </para> + </listitem> + + <listitem> + <para> + Use correct daylight-savings rules for POSIX-style time zone names + in MSVC builds (David Rowley) + </para> + + <para> + The Microsoft MSVC build scripts neglected to install + the <filename>posixrules</> file in the timezone directory tree. + This resulted in the timezone code falling back to its built-in + rule about what DST behavior to assume for a POSIX-style time zone + name. For historical reasons that still corresponds to the DST rules + the USA was using before 2007 (i.e., change on first Sunday in April + and last Sunday in October). With this fix, a POSIX-style zone name + will use the current and historical DST transition dates of + the <literal>US/Eastern</> zone. If you don't want that, remove + the <filename>posixrules</> file, or replace it with a copy of some + other zone file (see <xref linkend="datatype-timezones">). Note that + due to caching, you may need to restart the server to get such changes + to take effect. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-4-11"> <title>Release 9.4.11</title> diff --git a/doc/src/sgml/release-9.5.sgml b/doc/src/sgml/release-9.5.sgml index c2c653a9b38..3610e3037e1 100644 --- a/doc/src/sgml/release-9.5.sgml +++ b/doc/src/sgml/release-9.5.sgml @@ -1,6 +1,502 @@ <!-- doc/src/sgml/release-9.5.sgml --> <!-- See header comment in release.sgml about typical markup --> + <sect1 id="release-9-5-7"> + <title>Release 9.5.7</title> + + <note> + <title>Release Date</title> + <simpara>2017-05-11</simpara> + </note> + + <para> + This release contains a variety of fixes from 9.5.6. + For information about new features in the 9.5 major release, see + <xref linkend="release-9-5">. + </para> + + <sect2> + <title>Migration to Version 9.5.7</title> + + <para> + A dump/restore is not required for those running 9.5.X. + </para> + + <para> + However, if you are using third-party replication tools that depend + on <quote>logical decoding</>, see the first changelog entry below. + </para> + + <para> + Also, if you are upgrading from a version earlier than 9.5.6, + see <xref linkend="release-9-5-6">. + </para> + </sect2> + + <sect2> + <title>Changes</title> + + <itemizedlist> + + <listitem> + <para> + Fix possibly-invalid initial snapshot during logical decoding + (Petr Jelinek, Andres Freund) + </para> + + <para> + The initial snapshot created for a logical decoding replication slot + was potentially incorrect. This could cause third-party tools that + use logical decoding to copy incomplete/inconsistent initial data. + This was more likely to happen if the source server was busy at the + time of slot creation, or if another logical slot already existed. + </para> + + <para> + If you are using a replication tool that depends on logical decoding, + and it should have copied a nonempty data set at the start of + replication, it is advisable to recreate the replica after + installing this update, or to verify its contents against the source + server. + </para> + </listitem> + + <listitem> + <para> + Fix possible corruption of <quote>init forks</> of unlogged indexes + (Robert Haas, Michael Paquier) + </para> + + <para> + This could result in an unlogged index being set to an invalid state + after a crash and restart. Such a problem would persist until the + index was dropped and rebuilt. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect reconstruction of <structname>pg_subtrans</> entries + when a standby server replays a prepared but uncommitted two-phase + transaction (Tom Lane) + </para> + + <para> + In most cases this turned out to have no visible ill effects, but in + corner cases it could result in circular references + in <structname>pg_subtrans</>, potentially causing infinite loops + in queries that examine rows modified by the two-phase transaction. + </para> + </listitem> + + <listitem> + <para> + Avoid possible crash in <application>walsender</> due to failure + to initialize a string buffer (Stas Kelvich, Fujii Masao) + </para> + </listitem> + + <listitem> + <para> + Fix possible crash when rescanning a nearest-neighbor index-only scan + on a GiST index (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix postmaster's handling of <function>fork()</> failure for a + background worker process (Tom Lane) + </para> + + <para> + Previously, the postmaster updated portions of its state as though + the process had been launched successfully, resulting in subsequent + confusion. + </para> + </listitem> + + <listitem> +<!-- +Author: Andrew Gierth <rhodiumtoad@postgresql.org> +Branch: REL9_5_STABLE [7be3678a8] 2017-04-24 07:53:05 +0100 +--> + <para> + Fix crash or wrong answers when a <literal>GROUPING SETS</> column's + data type is hashable but not sortable (Pavan Deolasee) + </para> + </listitem> + + <listitem> + <para> + Avoid applying <quote>physical targetlist</> optimization to custom + scans (Dmitry Ivanov, Tom Lane) + </para> + + <para> + This optimization supposed that retrieving all columns of a tuple + is inexpensive, which is true for ordinary Postgres tuples; but it + might not be the case for a custom scan provider. + </para> + </listitem> + + <listitem> + <para> + Use the correct sub-expression when applying a <literal>FOR ALL</> + row-level-security policy (Stephen Frost) + </para> + + <para> + In some cases the <literal>WITH CHECK</> restriction would be applied + when the <literal>USING</> restriction is more appropriate. + </para> + </listitem> + + <listitem> + <para> + Ensure parsing of queries in extension scripts sees the results of + immediately-preceding DDL (Julien Rouhaud, Tom Lane) + </para> + + <para> + Due to lack of a cache flush step between commands in an extension + script file, non-utility queries might not see the effects of an + immediately preceding catalog change, such as <command>ALTER TABLE + ... RENAME</>. + </para> + </listitem> + + <listitem> + <para> + Skip tablespace privilege checks when <command>ALTER TABLE ... ALTER + COLUMN TYPE</> rebuilds an existing index (Noah Misch) + </para> + + <para> + The command failed if the calling user did not currently have + <literal>CREATE</> privilege for the tablespace containing the index. + That behavior seems unhelpful, so skip the check, allowing the + index to be rebuilt where it is. + </para> + </listitem> + + <listitem> + <para> + Fix <command>ALTER TABLE ... VALIDATE CONSTRAINT</> to not recurse + to child tables when the constraint is marked <literal>NO INHERIT</> + (Amit Langote) + </para> + + <para> + This fix prevents unwanted <quote>constraint does not exist</> failures + when no matching constraint is present in the child tables. + </para> + </listitem> + + <listitem> + <para> + Avoid dangling pointer in <command>COPY ... TO</> when row-level + security is active for the source table (Tom Lane) + </para> + + <para> + Usually this had no ill effects, but sometimes it would cause + unexpected errors or crashes. + </para> + </listitem> + + <listitem> + <para> + Avoid accessing an already-closed relcache entry in <command>CLUSTER</> + and <command>VACUUM FULL</> (Tom Lane) + </para> + + <para> + With some bad luck, this could lead to indexes on the target + relation getting rebuilt with the wrong persistence setting. + </para> + </listitem> + + <listitem> + <para> + Fix <command>VACUUM</> to account properly for pages that could not + be scanned due to conflicting page pins (Andrew Gierth) + </para> + + <para> + This tended to lead to underestimation of the number of tuples in + the table. In the worst case of a small heavily-contended + table, <command>VACUUM</> could incorrectly report that the table + contained no tuples, leading to very bad planning choices. + </para> + </listitem> + + <listitem> + <para> + Ensure that bulk-tuple-transfer loops within a hash join are + interruptible by query cancel requests (Tom Lane, Thomas Munro) + </para> + </listitem> + + <listitem> + <para> + Fix integer-overflow problems in <type>interval</> comparison (Kyotaro + Horiguchi, Tom Lane) + </para> + + <para> + The comparison operators for type <type>interval</> could yield wrong + answers for intervals larger than about 296000 years. Indexes on + columns containing such large values should be reindexed, since they + may be corrupt. + </para> + </listitem> + + <listitem> + <para> + Fix <function>cursor_to_xml()</> to produce valid output + with <replaceable>tableforest</> = false + (Thomas Munro, Peter Eisentraut) + </para> + + <para> + Previously it failed to produce a wrapping <literal><table></> + element. + </para> + </listitem> + + <listitem> + <para> + Fix roundoff problems in <function>float8_timestamptz()</> + and <function>make_interval()</> (Tom Lane) + </para> + + <para> + These functions truncated, rather than rounded, when converting a + floating-point value to integer microseconds; that could cause + unexpectedly off-by-one results. + </para> + </listitem> + + <listitem> + <para> + Fix <function>pg_get_object_address()</> to handle members of operator + families correctly (Álvaro Herrera) + </para> + </listitem> + + <listitem> + <para> + Improve performance of <structname>pg_timezone_names</> view + (Tom Lane, David Rowley) + </para> + </listitem> + + <listitem> + <para> + Reduce memory management overhead for contexts containing many large + blocks (Tom Lane) + </para> + </listitem> + + <listitem> + <para> + Fix sloppy handling of corner-case errors from <function>lseek()</> + and <function>close()</> (Tom Lane) + </para> + + <para> + Neither of these system calls are likely to fail in typical situations, + but if they did, <filename>fd.c</> could get quite confused. + </para> + </listitem> + + <listitem> + <para> + Fix incorrect check for whether postmaster is running as a Windows + service (Michael Paquier) + </para> + + <para> + This could result in attempting to write to the event log when that + isn't accessible, so that no logging happens at all. + </para> + </listitem> + + <listitem> + <para> + Fix <application>ecpg</> to support <command>COMMIT PREPARED</> + and <command>ROLLBACK PREPARED</> (Masahiko Sawada) + </para> + </listitem> + + <listitem> + <para> + Fix a double-free error when processing dollar-quoted string literals + in <application>ecpg</> (Michael Meskes) + </para> + </listitem> + + <listitem> + <para> + In <application>pg_dump</>, fix incorrect schema and owner marking for + comments and security labels of some types of database objects + (Giuseppe Broccolo, Tom Lane) + </para> + + <para> + In simple cases this caused no ill effects; but for example, a + schema-selective restore might omit comments it should include, because + they were not marked as belonging to the schema of their associated + object. + </para> + </listitem> + + <listitem> + <para> + Avoid emitting an invalid list file in <literal>pg_restore -l</> + when SQL object names contain newlines (Tom Lane) + </para> + + <para> + Replace newlines by spaces, which is sufficient to make the output + valid for <literal>pg_restore -L</>'s purposes. + </para> + </listitem> + + <listitem> + <para> + Fix <application>pg_upgrade</> to transfer comments and security labels + attached to <quote>large objects</> (blobs) (Stephen Frost) + </para> + + <para> + Previously, blobs were correctly transferred to the new database, but + any comments or security labels attached to them were lost. + </para> + </listitem> + + <listitem> + <para> + Improve error handling + in <filename>contrib/adminpack</>'s <function>pg_file_write()</> + function (Noah Misch) + </para> + + <para> + Notably, it failed to detect errors reported + by <function>fclose()</>. + </para> + </listitem> + + <listitem> + <para> + In <filename>contrib/dblink</>, avoid leaking the previous unnamed + connection when establishing a new unnamed connection (Joe Conway) + </para> + </listitem> + + <listitem> + <para> + Fix <filename>contrib/pg_trgm</>'s extraction of trigrams from regular + expressions (Tom Lane) + </para> + + <para> + In some cases it would produce a broken data structure that could never + match anything, leading to GIN or GiST indexscans that use a trigram + index not finding any matches to the regular expression. + </para> + </listitem> + + <listitem> +<!-- +Author: Robert Haas <rhaas@postgresql.org> +Branch: REL9_5_STABLE [cdf5a004b] 2017-05-06 22:21:38 -0400 +Branch: REL9_4_STABLE [f14bf0a8f] 2017-05-06 22:19:56 -0400 +Branch: REL9_3_STABLE [3aa16b117] 2017-05-06 22:17:35 -0400 +--> + <para> + In <filename>contrib/postgres_fdw</>, + transmit query cancellation requests to the remote server + (Michael Paquier, Etsuro Fujita) + </para> + + <para> + Previously, a local query cancellation request did not cause an + already-sent remote query to terminate early. This is a back-patch + of work originally done for 9.6. + </para> + </listitem> + + <listitem> + <para> + Support Tcl 8.6 in MSVC builds (Álvaro Herrera) + </para> + </listitem> + + <listitem> + <para> + Sync our copy of the timezone library with IANA release tzcode2017b + (Tom Lane) + </para> + + <para> + This fixes a bug affecting some DST transitions in January 2038. + </para> + </listitem> + + <listitem> + <para> + Update time zone data files to <application>tzdata</> release 2017b + for DST law changes in Chile, Haiti, and Mongolia, plus historical + corrections for Ecuador, Kazakhstan, Liberia, and Spain. + Switch to numeric abbreviations for numerous time zones in South + America, the Pacific and Indian oceans, and some Asian and Middle + Eastern countries. + </para> + + <para> + The IANA time zone database previously provided textual abbreviations + for all time zones, sometimes making up abbreviations that have little + or no currency among the local population. They are in process of + reversing that policy in favor of using numeric UTC offsets in zones + where there is no evidence of real-world use of an English + abbreviation. At least for the time being, <productname>PostgreSQL</> + will continue to accept such removed abbreviations for timestamp input. + But they will not be shown in the <structname>pg_timezone_names</> + view nor used for output. + </para> + </listitem> + + <listitem> + <para> + Use correct daylight-savings rules for POSIX-style time zone names + in MSVC builds (David Rowley) + </para> + + <para> + The Microsoft MSVC build scripts neglected to install + the <filename>posixrules</> file in the timezone directory tree. + This resulted in the timezone code falling back to its built-in + rule about what DST behavior to assume for a POSIX-style time zone + name. For historical reasons that still corresponds to the DST rules + the USA was using before 2007 (i.e., change on first Sunday in April + and last Sunday in October). With this fix, a POSIX-style zone name + will use the current and historical DST transition dates of + the <literal>US/Eastern</> zone. If you don't want that, remove + the <filename>posixrules</> file, or replace it with a copy of some + other zone file (see <xref linkend="datatype-timezones">). Note that + due to caching, you may need to restart the server to get such changes + to take effect. + </para> + </listitem> + + </itemizedlist> + + </sect2> + </sect1> + <sect1 id="release-9-5-6"> <title>Release 9.5.6</title> diff --git a/doc/src/sgml/release-9.6.sgml b/doc/src/sgml/release-9.6.sgml index b6cc481494f..bacbc29d67a 100644 --- a/doc/src/sgml/release-9.6.sgml +++ b/doc/src/sgml/release-9.6.sgml @@ -188,17 +188,6 @@ Branch: REL9_4_STABLE [436b560b8] 2017-04-24 12:16:58 -0400 <listitem> <!-- -Author: Andrew Gierth <rhodiumtoad@postgresql.org> -Branch: REL9_5_STABLE [7be3678a8] 2017-04-24 07:53:05 +0100 ---> - <para> - Fix crash or wrong answers when a <literal>GROUPING SETS</> column's - data type is hashable but not sortable (Pavan Deolasee) - </para> - </listitem> - - <listitem> -<!-- Author: Tom Lane <tgl@sss.pgh.pa.us> Branch: master [89deca582] 2017-04-07 12:18:38 -0400 Branch: REL9_6_STABLE [c0a493e17] 2017-04-07 12:18:38 -0400 @@ -851,45 +840,6 @@ Branch: REL9_6_STABLE [86e640a69] 2017-04-26 09:14:21 -0400 <listitem> <!-- -Author: Robert Haas <rhaas@postgresql.org> -Branch: REL9_5_STABLE [cdf5a004b] 2017-05-06 22:21:38 -0400 -Branch: REL9_4_STABLE [f14bf0a8f] 2017-05-06 22:19:56 -0400 -Branch: REL9_3_STABLE [3aa16b117] 2017-05-06 22:17:35 -0400 ---> - <para> - In <filename>contrib/postgres_fdw</>, - transmit query cancellation requests to the remote server - (Michael Paquier, Etsuro Fujita) - </para> - - <para> - Previously, a local query cancellation request did not cause an - already-sent remote query to terminate early. This is a back-patch - of work originally done for 9.6. - </para> - </listitem> - - <listitem> -<!-- -Author: Tom Lane <tgl@sss.pgh.pa.us> -Branch: REL9_4_STABLE [bb132cddf] 2017-04-15 20:16:03 -0400 -Branch: REL9_3_STABLE [fbfeceb25] 2017-04-17 12:51:40 -0400 -Branch: REL9_2_STABLE [58384149b] 2017-04-17 12:51:40 -0400 -Branch: REL9_3_STABLE [4e91330da] 2017-04-17 13:52:42 -0400 -Branch: REL9_2_STABLE [fb50c38e9] 2017-04-17 13:52:42 -0400 ---> - <para> - Support OpenSSL 1.1.0 (Heikki Linnakangas, Andreas Karlsson, Tom Lane) - </para> - - <para> - This is a back-patch of work previously done in newer branches; - it's needed since many platforms are adopting newer OpenSSL versions. - </para> - </listitem> - - <listitem> -<!-- Author: Alvaro Herrera <alvherre@alvh.no-ip.org> Branch: master [14722c69f] 2017-05-05 12:38:29 -0300 Branch: REL9_6_STABLE [19a403378] 2017-05-05 12:05:34 -0300 |