Release notes for 12.1, 11.6, 10.11, 9.6.16, 9.5.20, 9.4.25.
authorTom Lane
Sun, 10 Nov 2019 23:31:13 +0000 (18:31 -0500)
committerTom Lane
Sun, 10 Nov 2019 23:31:13 +0000 (18:31 -0500)
doc/src/sgml/release-12.sgml

index 577a5d7173f106a5164592c9f1d0b31cccd0b50a..68949b2026652bac0c4ccc855d859088743c44aa 100644 (file)
@@ -46,56 +46,6 @@ Branch: REL_12_STABLE [3b25de620] 2019-10-16 02:38:13 -0700
     
 
-     
-      Fix failure of ALTER TABLE SET with a custom
-      relation option (Michael Paquier)
-     
-    
-
-    
-
-     
-      Disallow changing a multiply-inherited column's type if not all
-      parent tables were changed (Tom Lane)
-     
-
-     
-      Previously, this was allowed, whereupon queries on the
-      now-out-of-sync parent would fail.
-     
-    
-
-    
-
-     
-      Avoid failure if the same target table is specified twice in
-      an ANALYZE command inside a transaction block
-      (Tom Lane)
-     
-    
-
-    
-
-     
-      Fix planner's test for case-foldable characters
-      in ILIKE with an ICU collation (Tom Lane)
-     
-
-     
-      This mistake caused the planner to treat too much of the pattern as
-      being a fixed prefix, so that indexscans derived from
-      an ILIKE clause might miss entries that they
-      should find.
-     
-    
-
-    
-
-     
-      Fix handling of whole-row variables in WITH CHECK
-      OPTION expressions and row-level-security policy expressions
-      (Andres Freund)
-     
-
-     
-      Previously, such usage might result in bogus errors about row type
-      mismatches.
-     
-    
-
-    
-
-     
-      Prevent possible double-free if a BEFORE UPDATE
-      trigger returns the old tuple as-is, and it is not the last such
-      trigger (Thomas Munro)
-     
-    
-
-    
-
-     
-      Fix crash if x = ANY
-      (array), or related operations,
-      contains a constant-null array (Tom Lane)
-     
-    
-
-    
-
-     
-      In serializable mode, ensure that row-level predicate locks are
-      acquired on the correct version of the row (Thomas Munro, Heikki
-      Linnakangas)
-     
-
-     
-      If the visible version of the row is HOT-updated, the lock might be
-      taken on its now-dead predecessor, resulting in subtle failures to
-      guarantee serialization.
-     
-    
-
-    
-
-     
-      Avoid an unnecessary catalog lookup during heap page pruning
-      (Thomas Munro)
-     
-
-     
-      It's no longer necessary to check for unlogged indexes here, and the
-      check caused significant performance problems in some workloads.
-      There's also at least a theoretical possibility of deadlock.
-     
-    
-
-    
-
-     
-      Fix failure to JIT-compile equality comparisons for grouping hash
-      tables, leading to performance loss (Andres Freund)
-     
-    
-
-    
-
+     
+      Fix logical replication failure when publisher and subscriber have
+      different ideas about a table's replica identity columns
+      (Jehan-Guillaume de Rorthais, Peter Eisentraut)
+     
+
+     
+      Declaring a column as part of the replica identity on the
+      subscriber, when it does not exist at all on the publisher, led
+      to negative bitmapset member not allowed errors.
+     
+    
+
+    
+
-     
-      In logical decoding, ensure that sub-transactions are correctly
-      accounted for when reconstructing a snapshot (Masahiko Sawada)
-     
-
-     
-      This error leads to assertion failures; it's unclear whether any
-      bad effects exist in production builds.
-     
-    
-
-    
-
-     
-      Fix ALTER SYSTEM to cope with duplicate entries
-      in postgresql.auto.conf (Ian Barwick)
-     
-
-     
-      ALTER SYSTEM itself will not generate such a state,
-      but external tools that modify postgresql.auto.conf
-      could do so.  Duplicate entries for the target variable will now be
-      removed, and then the new setting (if any) will be appended at the end.
-     
-    
-
-    
-
-     
-      Reject include directives with empty file names in configuration
-      files, and report include-file recursion more clearly
-      (Ian Barwick, Tom Lane)
-     
-    
-
-    
-
-     
-      Fix some cases where an incomplete date specification is not
-      detected in time with time zone input (Alexander Lakhin)
-     
-
-     
-      If a time zone is provided, a date must be as well (since the UTC
-      offset implied by the zone might be time-varying).  Depending on the
-      syntax used, this check was not enforced in all cases.
-     
-    
-
-    
-
-     
-      Restore the ability to take type information from
-      an AS clause
-      in json[b]_populate_record()
-      and json[b]_populate_recordset()
-      (Tom Lane)
-     
-
-     
-      If the record argument is NULL and has no declared composite type,
-      try to use the AS clause instead.  This isn't
-      recommended usage, but it used to work, and now does again.
-     
-    
-
-    
-
-     
-      Avoid crash when selecting a namespace node
-      in XMLTABLE (Chapman Flack)
-     
-    
-
-    
-
      
       Fix detection of edge-case integer overflow in interval
@@ -938,22 +660,6 @@ Branch: REL9_4_STABLE [8d380864a] 2019-11-07 11:23:06 -0500
 
     
 
-     
-      Fix memory leaks
-      in lower()upper(),
-      and initcap() functions when using ICU
-      collations (Konstantin Knizhnik)
-     
-    
-
-    
-
-     
-      Fix incorrect compression logic for GIN posting lists
-      (Heikki Linnakangas)
-     
-
-     
-      A GIN posting list item can require 7 bytes if the distance between
-      adjacent indexed TIDs exceeds 16TB.  One step in the logic was out
-      of sync with that, and might try to write the value into a 6-byte
-      buffer.  In principle this could cause a stack overrun, but on most
-      architectures it's likely that the next byte would be unused
-      alignment padding, making the bug harmless.  In any case the bug
-      would be very difficult to hit.
-     
-    
-
-    
-
-     
-      Fix handling of infinity, NaN, and NULL values in KNN-GiST
-      (Alexander Korotkov)
-     
-
-     
-      The query's output order could be wrong (different from a plain
-      sort's result) if some distances computed for non-null column values
-      are infinity or NaN.
-     
-    
-
-    
-
-     
-      Fix handling of searches for NULL in KNN-SP-GiST (Nikita Glukhov)
-     
-    
-
-    
-
-     
-      In psql, resynchronize internal state
-      about the server after an unexpected connection loss and successful
-      reconnection (Peter Billen, Tom Lane)
-     
-
-     
-      Ordinarily this is unnecessary since the state would be the same
-      anyway.  But it can matter in corner cases, such as where the
-      connection might lead to one of several servers.  This change
-      causes psql to re-issue any interactive
-      messages that it would have issued at startup, for example about
-      whether SSL is in use.
-     
-    
-
-    
-
-     
-      Avoid platform-specific null pointer dereference
-      in psql (Quentin Rameau)
-     
-    
-
-    
-
-     
-      Fix pg_dump's handling of circular
-      dependencies in views (Tom Lane)
-     
-
-     
-      In some cases a view may depend on an object
-      that pg_dump needs to dump later than the
-      view; the most common example is that a query using GROUP
-      BY on a primary-key column may be semantically invalid
-      without the primary key.  This is now handled by emitting a
-      dummy CREATE VIEW command that just establishes
-      the view's column names and types, and then later
-      emitting CREATE OR REPLACE VIEW with the full
-      view definition.  Previously, the dummy definition was actually
-      a CREATE TABLE command, and this was
-      automagically converted to a view by a later CREATE
-      RULE command.  The new approach has been used successfully
-      in PostgreSQL version 10 and later.  We
-      are back-patching it into older releases now because of reports that
-      the previous method causes bogus error messages about the view's
-      replica identity status.  This change also avoids problems when
-      trying to use the  option during a restore
-      involving such a view.
-     
-    
-
-    
-
-     
-      Fix pg_dump to again work with pre-8.3
-      source servers (Tom Lane)
-     
-
-     
-      A previous fix caused pg_dump to always
-      try to query pg_opfamily, but that catalog
-      doesn't exist before 8.3.
-     
-    
-
-    
-
-     
-      In pg_restore, treat
-       as meaning output to stdout
-      (Álvaro Herrera)
-     
-
-     
-      This synchronizes pg_restore's behavior
-      with some other applications, and in particular makes pre-v12 branches
-      act similarly to v12's pg_restore,
-      simplifying creation of dump/restore scripts that work across
-      multiple PostgreSQL versions.  Before this
-      change, pg_restore interpreted such a
-      switch as meaning output to a file
-      named -, but few people would want that.
+      than sorting them by table name.  Likewise for RLS policies.
      
     
 
@@ -1319,7 +818,7 @@ Branch: REL_12_STABLE [702fd3b71] 2019-10-15 00:35:51 +0200
      
       In pg_upgrade, reject tables with
       columns of type sql_identifier, as that has changed
-      representation in v12 (Tomas Vondra)
+      representation in version 12 (Tomas Vondra)
      
     
 
@@ -1350,42 +849,7 @@ Branch: REL_10_STABLE [e86ece221] 2019-10-16 13:26:56 +0200
 
      
       The previous coding could be fooled by cases where the data type of
-      interest underlies a domain or composite type.
-     
-    
-
-    
-
-     
-      Detect file read errors
-      during pg_basebackup (Jeevan Chalke)
-     
-    
-
-    
-
-     
-      In pg_basebackup, don't fsync output files
-      until the end of backup (Michael Paquier)
-     
-
-     
-      The previous coding could result in timeout failures if fsync was slow.
+      interest underlies a stored column of a domain or composite type.
      
     
 
@@ -1410,23 +874,6 @@ Branch: REL_12_STABLE [c2e3b311d] 2019-10-04 09:16:03 +0900
 
     
 
-     
-      In pg_rewind with an online source
-      cluster, disable timeouts, much
-      as pg_dump does (Alexander Kukushkin)
-     
-    
-
-    
-
-     
-      In pg_waldump,
-      include the newitemoff field in btree page split
-      records (Peter Geoghegan)
-     
-    
-
-    
-
-     
-      Fix vacuumdb with a
-      high  option to handle running out of file
-      descriptors better (Michael Paquier)
-     
-    
-
-    
-
-     
-      Fix PL/pgSQL to handle replacements of composite types better
-      (Tom Lane)
-     
-
-     
-      Cover the case where a composite type is dropped entirely, and
-      then a new type of the same name is created, between executions
-      of a PL/pgSQL function.  Variables of the composite type will now
-      update to match the new definition.
-     
-    
-
-    
-
-     
-      Fix contrib/amcheck to skip unlogged indexes
-      during hot standby (Andrey Borodin, Peter Geoghegan)
-     
-
-     
-      An unlogged index won't necessarily contain valid data in this
-      context, so don't try to check it.
-     
-    
-
-    
-
-     
-      Fix contrib/intarray's GiST opclasses to not
-      fail for empty arrays with <@ (Tom Lane)
-     
-
-     
-      A clause like array_column
-      <@ constant_array is
-      considered indexable, but the index search may not find index
-      entries for empty arrays in the array column; of course, such
-      entries should trivially match the search.
-     
-
-     
-      The only practical back-patchable fix for this requires
-      making <@ index searches scan the whole index,
-      which is what this patch does.  This is unfortunate: it means that
-      the query performance is likely worse than a plain sequential scan
-      would be.
-     
-
-     
-      Applications whose performance is adversely impacted by this change
-      have a couple of options.  They could switch to a GIN index, which
-      doesn't have this bug, or they could replace
-      array_column
-      <@ constant_array
-      with array_column
-      <@ constant_array
-      AND array_column
-      && constant_array.
-      That will provide about the same performance as before, and it will
-      find all non-empty subsets of the given constant array, which is all
-      that could reliably be expected of the query before.
-     
-    
-
-    
-
-     
-      Allow configure --with-python to succeed when
-      only python3 or
-      only python2 can be found (Peter Eisentraut,
-      Tom Lane)
-     
-
-     
-      Search for python,
-      then python3,
-      then python2, so
-      that configure will succeed in the
-      increasingly more common situation where no executable named
-      simply python exists.  It's still possible to
-      override the choice by setting the PYTHON environment
-      variable.
-     
-    
-
-    
-
-     
-      On PowerPC, avoid depending on the xlc
-      compiler's __fetch_and_add() function
-      (Noah Misch)
-     
-
-     
-      xlc 13 and newer interpret this function in a way incompatible with
-      our usage, resulting in an unusable build
-      of PostgreSQL.  Fix by using custom
-      assembly code instead.
+      trying to build modified PostgreSQL code
+      or use atypical compiler options.
      
     
 
@@ -1765,26 +1035,6 @@ Branch: REL9_4_STABLE [8f8809091] 2019-10-04 15:38:36 -0400
      
     
 
-    
-
-     
-      Update time zone data files to tzdata
-      release 2019c for DST law changes in Fiji and Norfolk Island, plus
-      historical corrections for Alberta, Austria, Belgium, British
-      Columbia, Cambodia, Hong Kong, Indiana (Perry County), Kaliningrad,
-      Kentucky, Michigan, Norfolk Island, South Korea, and Turkey.
-     
-    
-