diff --git a/doc/src/sgml/release-11.sgml b/doc/src/sgml/release-11.sgml
index 5c9f41a17a..3156cc7c10 100644
--- a/doc/src/sgml/release-11.sgml
+++ b/doc/src/sgml/release-11.sgml
@@ -1,6 +1,1228 @@
+
+ Release 11.3
+
+
+ Release date:
+ 2019-05-09
+
+
+
+ This release contains a variety of fixes from 11.2.
+ For information about new features in major release 11, see
+ .
+
+
+
+ Migration to Version 11.3
+
+
+ A dump/restore is not required for those running 11.X.
+
+
+
+ However, if you are upgrading from a version earlier than 11.1,
+ see .
+
+
+
+
+ Changes
+
+
+
+
+
+
+ Avoid catalog corruption when an ALTER TABLE on a
+ partitioned table finds that a partitioned index is reusable (Amit
+ Langote, Tom Lane)
+
+
+
+ This occurs, for example, when ALTER COLUMN TYPE
+ finds that no physical table rewrite is required.
+
+
+
+
+
+
+ Avoid catalog corruption when a temporary table with ON
+ COMMIT DROP and an identity column is created in a
+ single-statement transaction (Peter Eisentraut)
+
+
+
+ This hazard was overlooked because the case is not actually useful,
+ since the temporary table would be dropped immediately after
+ creation.
+
+
+
+
+
+
+ Fix failure in ALTER INDEX ... ATTACH PARTITION
+ if the partitioned table contains more dropped columns than its
+ partition does (Álvaro Herrera)
+
+
+
+
+
+
+ Fix failure to attach a partition's existing index to a newly-created
+ partitioned index in some cases (Amit Langote, Álvaro Herrera)
+
+
+
+ This would lead to errors such as index ... not found in
+ partition in subsequent DDL that uses the partitioned index.
+
+
+
+
+
+
+ Avoid crash when an EPQ recheck is performed for a partitioned query
+ result relation (Amit Langote)
+
+
+
+ This occurs when using READ COMMITTED isolation
+ level and another session has concurrently updated some of the
+ target row(s).
+
+
+
+
+
+
+ Fix tuple routing in multi-level partitioned tables that have dropped
+ attributes (Amit Langote, Michael Paquier)
+
+
+
+
+
+
+ Fix failure when the slow path of foreign key constraint initial
+ validation is applied to partitioned tables (Hadi Moshayedi, Tom
+ Lane, Andres Freund)
+
+
+
+ This didn't manifest except in the uncommon cases where the fast
+ path can't be used (such as permissions problems).
+
+
+
+
+
+
+ Fix behavior for an UPDATE
+ or DELETE on an inheritance tree or partitioned
+ table in which every table can be excluded (Amit Langote, Tom Lane)
+
+
+
+ In such cases, the query did not report the correct set of output
+ columns when a RETURNING clause was present, and
+ if there were any statement-level triggers that should be fired, it
+ didn't fire them.
+
+
+
+
+
+
+ When accessing a partition directly,
+ and constraint_exclusion is set
+ to on, use the partition's partition constraint
+ as well as any CHECK constraints for exclusion
+ checking (Amit Langote, Tom Lane)
+
+
+
+ This change restores the behavior to what it was in v10.
+
+
+
+
+
+
+ Avoid server crash when an error occurs while trying to persist
+ a cursor query across a transaction commit (Tom Lane)
+
+
+
+ If a procedure attempts to commit while it has an open explicit or
+ implicit cursor (for example, a PL/pgSQL FOR-loop
+ query), the cursor must be executed to completion and its results
+ saved before the transaction commit can be performed. An error
+ occurring during such execution led to a crash.
+
+
+
+
+
+
+ Avoid throwing incorrect errors for updates of temporary tables and
+ unlogged tables when a FOR ALL TABLES publication
+ exists (Peter Eisentraut)
+
+
+
+ Such tables should be ignored for publication purposes, but some
+ parts of the code failed to do so.
+
+
+
+
+
+
+ Fix handling of explicit DEFAULT items in
+ an INSERT ... VALUES command with
+ multiple VALUES rows, if the target relation is
+ an updatable view (Amit Langote, Dean Rasheed)
+
+
+
+ When the updatable view has no default for the column but its
+ underlying table has one, a single-row INSERT
+ ... VALUES 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.
+
+
+
+
+
+
+ Fix CREATE VIEW to allow zero-column views
+ (Ashutosh Sharma)
+
+
+
+ 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.
+
+
+
+
+
+
+ Add missing support for CREATE TABLE IF NOT EXISTS ... AS
+ EXECUTE ... (Andreas Karlsson)
+
+
+
+ The combination of IF NOT EXISTS
+ and EXECUTE should work, but the grammar omitted
+ it.
+
+
+
+
+
+
+ Ensure that sub-SELECTs appearing in
+ row-level-security policy expressions are executed with the correct
+ user's permissions (Dean Rasheed)
+
+
+
+ Previously, if the table having the RLS policy was accessed via a
+ view, such checks might be executed as the user calling the view,
+ not as the view owner as they should be.
+
+
+
+
+
+
+ Accept XML documents as valid values of type xml
+ when xmloption is set
+ to content, as required by SQL:2006 and later
+ (Chapman Flack)
+
+
+
+ Previously PostgreSQL followed the
+ SQL:2003 definition, which doesn't allow this. But that creates a
+ serious problem for dump/restore: there is no setting
+ of xmloption that will accept all valid XML data.
+ Hence, switch to the 2006 definition.
+
+
+
+ pg_dump is also modified to emit
+ SET xmloption = content while restoring data,
+ ensuring that dump/restore works even if the prevailing
+ setting is document.
+
+
+
+
+
+
+ Improve server's startup-time checks for whether a pre-existing
+ shared memory segment is still in use (Noah Misch)
+
+
+
+ The postmaster is now more likely to detect that there are still
+ active processes from a previous postmaster incarnation, even if
+ the postmaster.pid file has been removed.
+
+
+
+
+
+
+ Avoid possible division-by-zero in btree index vacuum logic
+ (Piotr Stefaniak, Alexander Korotkov)
+
+
+
+ This could lead to incorrect decisions about whether index cleanup is
+ needed.
+
+
+
+
+
+
+ Avoid counting parallel workers' transactions as separate
+ transactions (Haribabu Kommi)
+
+
+
+
+
+
+ Fix incompatibility of GIN-index WAL records (Alexander Korotkov)
+
+
+
+ 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.
+
+
+
+
+
+
+ Fix possible crash while executing a SHOW command
+ in a replication connection (Michael Paquier)
+
+
+
+
+
+
+ Avoid server memory leak when fetching rows from a portal one at a
+ time (Tom Lane)
+
+
+
+
+
+
+ Avoid memory leak when a partition's relation cache entry is rebuilt
+ (Amit Langote, Tom Lane)
+
+
+
+
+
+
+ Tolerate EINVAL and ENOSYS
+ error results, where appropriate, for fsync calls (Thomas Munro,
+ James Sewell)
+
+
+
+ The previous change to panic on fsync failures turns out to have
+ been excessively paranoid for certain cases where a failure is
+ predictable and essentially means operation not
+ supported.
+
+
+
+
+
+
+ Report correct relation name in
+ autovacuum's pg_stat_activity display
+ during BRIN summarize operations (Álvaro Herrera)
+
+
+
+
+
+
+ Avoid crash when trying to plan a partition-wise join when GEQO
+ is active (Tom Lane)
+
+
+
+
+
+
+ Fix failed to build any N-way
+ joins planner failures with lateral references leading out
+ of FULL outer joins (Tom Lane)
+
+
+
+
+
+
+ Fix misplanning of queries in which a set-returning function is
+ applied to a relation that is provably empty (Tom Lane, Julien
+ Rouhaud)
+
+
+
+ In v10, this oversight only led to slightly inefficient plans, but
+ in v11 it could cause set-valued function called in context
+ that cannot accept a set errors.
+
+
+
+
+
+
+ Fix planner's parallel-safety assessment for grouped queries
+ (Etsuro Fujita)
+
+
+
+ Previously, target-list evaluation work that could have been
+ parallelized might not be.
+
+
+
+
+
+
+ Fix mishandling of included index columns in
+ planner's unique-index logic (Tom Lane)
+
+
+
+ This could result in failing to recognize that a unique index with
+ included columns proves uniqueness of a query result, leading to a
+ poor plan.
+
+
+
+
+
+
+ Fix incorrect strictness check for array coercion expressions
+ (Tom Lane)
+
+
+
+ This might allow, for example, incorrect inlining of a strict SQL
+ function, leading to non-enforcement of the strictness condition.
+
+
+
+
+
+
+ Speed up planning when there are many equality conditions and many
+ potentially-relevant foreign key constraints (David Rowley)
+
+
+
+
+
+
+ Avoid O(N^2) performance issue when rolling back a transaction that
+ created many tables (Tomas Vondra)
+
+
+
+
+
+
+ Fix corner-case server crashes in dynamic shared memory
+ allocation (Thomas Munro, Robert Haas)
+
+
+
+
+
+
+ Fix race conditions in management of dynamic shared memory
+ (Thomas Munro)
+
+
+ These could lead to dsa_area could not attach to
+ segment or cannot unpin a segment that is not
+ pinned errors.
+
+
+
+
+
+
+ Fix race condition in which a hot-standby postmaster could fail to
+ shut down after receiving a smart-shutdown request (Tom Lane)
+
+
+
+
+
+
+ Fix possible crash
+ when pg_identify_object_as_address() is given
+ invalid input (Álvaro Herrera)
+
+
+
+
+
+
+ Fix possible could not access status of transaction
+ failures in txid_status() (Thomas Munro)
+
+
+
+
+
+
+ Fix authentication failure when attempting to use SCRAM
+ authentication with mixed OpenSSL library versions (Michael Paquier,
+ Peter Eisentraut)
+
+
+
+ If libpq is using OpenSSL 1.0.1 or older
+ while the server is using OpenSSL 1.0.2 or newer, the negotiation of
+ which SASL mechanism to use went wrong, leading to a
+ confusing channel binding not supported by this build
+ error message.
+
+
+
+
+
+
+ Tighten validation of encoded SCRAM-SHA-256 and MD5 passwords
+ (Jonathan Katz)
+
+
+
+ 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.
+
+
+
+
+
+
+ Fix handling of lc_time settings that imply an
+ encoding different from the database's encoding (Juan José
+ Santamaría Flecha, Tom Lane)
+
+
+
+ Localized month or day names that include non-ASCII characters
+ previously caused unexpected errors or wrong output in such locales.
+
+
+
+
+
+
+ Create the current_logfiles file with the same
+ permissions as other files in the server's data directory
+ (Haribabu Kommi)
+
+
+
+ Previously it used the permissions specified
+ by log_file_mode, but that can cause problems for
+ backup utilities.
+
+
+
+
+
+
+ Fix incorrect operator_precedence_warning checks
+ involving unary minus operators (Rikard Falkeborn)
+
+
+
+
+
+
+ Disallow NaN as a value for floating-point server
+ parameters (Tom Lane)
+
+
+
+
+
+
+ Rearrange REINDEX processing to avoid assertion
+ failures when reindexing individual indexes
+ of pg_class (Andres Freund, Tom Lane)
+
+
+
+
+
+
+ Fix planner assertion failure for parameterized dummy paths (Tom Lane)
+
+
+
+
+
+
+ Insert correct test function in the result
+ of SnapBuildInitialSnapshot() (Antonin Houska)
+
+
+
+ No core code cares about this, but some extensions do.
+
+
+
+
+
+
+ Fix intermittent could not reattach to shared memory
+ session startup failures on Windows (Noah Misch)
+
+
+
+ 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.
+
+
+
+
+
+
+ Fix error detection in directory scanning on Windows (Konstantin
+ Knizhnik)
+
+
+
+ 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.
+
+
+
+
+
+
+ Fix grammar problems in ecpg (Tom Lane)
+
+
+
+ A missing semicolon led to mistranslation
+ of SET variable =
+ DEFAULT (but
+ not SET variable TO
+ DEFAULT) in ecpg programs,
+ producing syntactically invalid output that the server would reject.
+ Additionally, in a DROP TYPE or DROP
+ DOMAIN command that listed multiple type names, only the
+ first type name was actually processed.
+
+
+
+
+
+
+ Sync ecpg's syntax for CREATE
+ TABLE AS with the server's (Daisuke Higuchi)
+
+
+
+
+
+
+ Fix possible buffer overruns in ecpg's
+ processing of include filenames (Liu Huailing, Fei Wu)
+
+
+
+
+
+
+ Make pg_dump recreate table partitions
+ using ATTACH PARTITION instead
+ of CREATE TABLE ... PARTITION OF (David Rowley)
+
+
+
+ This avoids various corner-case problems, notably that dump and
+ restore might unexpectedly alter a partition's column ordering.
+ It also means that a selective restore of the partition can succeed
+ even if its parent partitioned table isn't restored.
+ (The ATTACH PARTITION will fail of course, but
+ the partition table itself can be created and populated.)
+
+
+
+
+
+
+ Fix pg_rewind failures due to failure to
+ remove some transient files in the target data directory (Michael
+ Paquier)
+
+
+
+
+
+
+ Make pg_verify_checksums verify that the
+ data directory it's pointed at is of the
+ right PostgreSQL version (Michael Paquier)
+
+
+
+
+
+
+ Avoid crash in contrib/postgres_fdw when a
+ query using remote grouping or aggregation has
+ a SELECT-list item that is an uncorrelated
+ sub-select, outer reference, or parameter symbol (Tom Lane)
+
+
+
+
+
+
+ Change contrib/postgres_fdw to report an error
+ when a remote partition chosen to insert a routed row into is
+ also an UPDATE subplan target that will be
+ updated later in the same command (Amit Langote, Etsuro Fujita)
+
+
+
+ Previously, such situations led to server crashes or incorrect
+ results of the UPDATE. Allowing such cases to
+ work correctly is a matter for future work.
+
+
+
+
+
+
+ In contrib/pg_prewarm, avoid indefinitely
+ respawning background worker processes if prewarming fails for some
+ reason (Mithun Cy)
+
+
+
+
+
+
+ Avoid crash in contrib/vacuumlo if
+ an lo_unlink() call failed (Tom Lane)
+
+
+
+
+
+
+ Sync our copy of the timezone library with IANA tzcode release 2019a
+ (Tom Lane)
+
+
+
+ This corrects a small bug in zic that
+ caused it to output an incorrect year-2440 transition in
+ the Africa/Casablanca zone, and adds support
+ for zic's new option.
+
+
+
+
+
+
+ Update time zone data files to tzdata
+ release 2019a for DST law changes in Palestine and Metlakatla,
+ plus historical corrections for Israel.
+
+
+
+ Etc/UCT is now a backward-compatibility link
+ to Etc/UTC, instead of being a separate zone that
+ generates the abbreviation UCT, which nowadays is
+ typically a typo. PostgreSQL will still
+ accept UCT as an input zone abbreviation, but it
+ won't output it.
+
+
+
+
+
+
+
+
Release 11.2
@@ -21,6 +1243,11 @@
A dump/restore is not required for those running 11.X.
+
+
+ However, if you are upgrading from a version earlier than 11.1,
+ see .
+