Change logs for postgresql-9.5 source package in Xenial

  • postgresql-9.5 (9.5.25-0ubuntu0.16.04.1) xenial; urgency=medium
    
      * New upstream version (LP: #1915254)
        + Fix CREATE INDEX CONCURRENTLY to wait for
          concurrent prepared transactions (Andrey Borodin)
    
          At the point where CREATE INDEX CONCURRENTLY
          waits for all concurrent transactions to complete so that it can see
          rows they inserted, it must also wait for all prepared transactions
          to complete, for the same reason.  Its failure to do so meant that
          rows inserted by prepared transactions might be omitted from the new
          index, causing queries relying on the index to miss such rows.
          In installations that have enabled prepared transactions
          (max_prepared_transactions > 0),
          it's recommended to reindex any concurrently-built indexes in
          case this problem occurred when they were built.
    
        + Details about this and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-25.html
    
     -- Christian Ehrhardt <email address hidden>  Wed, 10 Feb 2021 11:47:36 +0100
  • postgresql-9.5 (9.5.24-0ubuntu0.16.04.1) xenial-security; urgency=medium
    
      * New upstream version.
        + Block DECLARE CURSOR ... WITH HOLD and firing of deferred triggers
          within index expressions and materialized view queries (Noah Misch)
    
          This is essentially a leak in the security restricted operation sandbox
          mechanism.  An attacker having permission to create non-temporary SQL
          objects could parlay this leak to execute arbitrary SQL code as a
          superuser.
    
          The PostgreSQL Project thanks Etienne Stalmans for reporting this
          problem. (CVE-2020-25695)
    
        + Fix usage of complex connection-string parameters in pg_dump,
          pg_restore, clusterdb, reindexdb, and vacuumdb (Tom Lane)
    
          The -d parameter of pg_dump and pg_restore, or the --maintenance-db
          parameter of the other programs mentioned, can be a connection string
          containing multiple connection parameters rather than just a database
          name.  In cases where these programs need to initiate additional
          connections, such as parallel processing or processing of multiple
          databases, the connection string was forgotten and just the basic
          connection parameters (database name, host, port, and username) were
          used for the additional connections.  This could lead to connection
          failures if the connection string included any other essential
          information, such as non-default SSL or GSS parameters. Worse, the
          connection might succeed but not be encrypted as intended, or be
          vulnerable to man-in-the-middle attacks that the intended connection
          parameters would have prevented. (CVE-2020-25694)
    
        + When psql's \connect command re-uses connection parameters, ensure that
          all non-overridden parameters from a previous connection string are
          re-used (Tom Lane)
    
          This avoids cases where reconnection might fail due to omission of
          relevant parameters, such as non-default SSL or GSS options. Worse, the
          reconnection might succeed but not be encrypted as intended, or be
          vulnerable to man-in-the-middle attacks that the intended connection
          parameters would have prevented. This is largely the same problem as
          just cited for pg_dump et al, although psql's behavior is more complex
          since the user may intentionally override some connection parameters.
          (CVE-2020-25694)
    
        + Prevent psql's \gset command from modifying specially-treated variables
          (Noah Misch)
    
          \gset without a prefix would overwrite whatever variables the server
          told it to.  Thus, a compromised server could set specially-treated
          variables such as PROMPT1, giving the ability to execute arbitrary shell
          code in the user's session.
    
          The PostgreSQL Project thanks Nick Cleaton for reporting this problem.
          (CVE-2020-25696)
    
        + Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-24.html
    
     -- Christian Ehrhardt <email address hidden>  Thu, 12 Nov 2020 12:13:20 +0100
  • postgresql-9.5 (9.5.23-0ubuntu0.16.04.1) xenial-security; urgency=medium
    
      * New upstream release (LP: #1892335).
        - Make contrib modules' installation scripts more secure (Tom Lane)
    
          Attacks similar to those described in CVE-2018-1058 could be carried out
          against an extension installation script, if the attacker can create
          objects in either the extension's target schema or the schema of some
          prerequisite extension.  Since extensions often require superuser
          privilege to install, this can open a path to obtaining superuser
          privilege.  To mitigate this risk, be more careful about the search_path
          used to run an installation script; disable check_function_bodies within
          the script; and fix catalog-adjustment queries used in some contrib
          modules to ensure they are secure.  Also provide documentation to help
          third-party extension authors make their installation scripts secure.
          This is not a complete solution; extensions that depend on other
          extensions can still be at risk if installed carelessly.
          CVE-2020-14350
    
        - Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-22.html
          https://www.postgresql.org/docs/9.5/static/release-9-5-23.html
    
     -- Christian Ehrhardt <email address hidden>  Thu, 20 Aug 2020 11:29:10 +0200
  • postgresql-9.5 (9.5.21-0ubuntu0.16.04.1) xenial; urgency=medium
    
      * New upstream release (LP: #1863108)
        - A dump/restore is not required however, if you use the contrib/intarray
          extension with a GiST index, and you rely on indexed searches for the <@
          operator, see the release notes for details in regard to a related fix.
        - Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-20.html
          https://www.postgresql.org/docs/9.5/static/release-9-5-21.html
    
     -- Christian Ehrhardt <email address hidden>  Thu, 13 Feb 2020 15:18:20 +0100
  • postgresql-9.5 (9.5.19-0ubuntu0.16.04.1) xenial-security; urgency=medium
    
      * SECURITY UPDATE: New upstream release (LP: #1839058)
        - Require schema qualification to cast to a temporary type when using
          functional cast syntax (CVE-2019-10208)
        - Fix failure of ALTER TABLE ... ALTER COLUMN TYPE when altering multiple
          columns' types in one command. This fixes a regression introduced in the
          most recent minor releases
        - Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-19.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 06 Aug 2019 08:54:29 +0200
  • postgresql-9.5 (9.5.18-0ubuntu0.16.04.1) xenial; urgency=medium
    
       * New upstream release (LP: #1833211)
        - Fix failure of ALTER TABLE ... ALTER COLUMN TYPE when the table has
          a partial exclusion constraint
        - Fix failure of COMMENT command for comments on domain constraints
        - Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-18.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 18 Jun 2019 13:11:33 +0200
  • postgresql-9.5 (9.5.17-0ubuntu0.16.04.1) xenial-security; urgency=medium
    
      * New upstream release(s) (LP: #1828012)
        - Prevent row-level security policies from being bypassed via
          selectivity estimators.
          CVE-2019-10130
        - Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-17.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 07 May 2019 11:20:37 +0200
  • postgresql-9.5 (9.5.16-0ubuntu0.16.04.1) xenial; urgency=medium
    
      * New upstream release(s) (LP: #1815665)
        - By default, panic instead of retrying after fsync() failure, to avoid
          possible data corruption. A new server parameter "guc-data-sync-retry"
          has been added to control this;
        - d/p/pg-9.5-Disallow-setting-client_min_messages-higher-than-ERR.patch:
          to retain SRU stability this patch reverts one of the changes which
          disabled the error suppression by setting client_min_messages to
          fatal or panic. Overall that means no change to the handling of
          client_min_messages due to this upload.
        - Details about these and many further changes can be found at:
          https://www.postgresql.org/docs/9.5/static/release-9-5-15.html
          https://www.postgresql.org/docs/9.5/static/release-9-5-16.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 12 Feb 2019 21:25:00 +0100
  • postgresql-9.5 (9.5.14-0ubuntu0.16.04) xenial-security; urgency=medium
    
      * New upstream release (LP: #1786938)
        - Fix failure to reset libpq's state fully between connection attempts
          .
          An unprivileged user of dblink or postgres_fdw could bypass the checks
          intended to prevent use of server-side credentials, such as a ~/.pgpass
          file owned by the operating-system user running the server.  Servers
          allowing peer authentication on local connections are particularly
          vulnerable.  Other attacks such as SQL injection into a postgres_fdw
          session are also possible. Attacking postgres_fdw in this way requires
          the ability to create a foreign server object with selected connection
          parameters, but any user with access to dblink could exploit the
          problem. In general, an attacker with the ability to select the
          connection parameters for a libpq-using application could cause
          mischief, though other plausible attack scenarios are harder to think
          of. Our thanks to Andrew Krasichkov for reporting this issue.
          (CVE-2018-10915)
        - Fix INSERT ... ON CONFLICT UPDATE through a view that isn't just SELECT
          FROM ...
          .
          Erroneous expansion of an updatable view could lead to crashes or
          attribute ... has the wrong type errors, if the view's SELECT list
          doesn't match one-to-one with the underlying table's columns.
          Furthermore, this bug could be leveraged to allow updates of columns
          that an attacking user lacks UPDATE privilege for, if that user has
          INSERT and UPDATE privileges for some other column(s) of the table. Any
          user could also use it for disclosure of server memory.
          (CVE-2018-10925)
        - d/libecpg-dev.install: Add new pgtypes header.
        - d/libpgtypes3.symbols: Add new pgtypes symbol.
        - Details about these and changes can be found at
          https://www.postgresql.org/docs/9.5/static/release-9-5-14.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 14 Aug 2018 14:49:16 +0200
  • postgresql-9.5 (9.5.13-0ubuntu0.16.04) xenial; urgency=medium
    
      * New upstream release (LP: #1769888)
        - A dump/restore is not required for those running 9.5.X.
          However, if the function marking mistakes mentioned in the first
          changelog entry affect you, you will want to take steps to
          correct your database catalogs.
        - Details about changes can be found at
          https://www.postgresql.org/docs/9.5/static/release-9-5-13.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 08 May 2018 15:17:49 +0200
  • postgresql-9.5 (9.5.12-0ubuntu0.16.04) xenial-security; urgency=medium
    
      * New upstream release (LP: #1752271)
        If you run an installation in which not all users are mutually
        trusting, or if you maintain an application or extension that is
        intended for use in arbitrary situations, it is strongly recommended
        that you read the documentation changes described in the first changelog
        entry below, and take suitable steps to ensure that your installation or
        code is secure.
    
        Also, the changes described in the second changelog entry below may
        cause functions used in index expressions or materialized views to fail
        during auto-analyze, or when reloading from a dump.  After upgrading,
        monitor the server logs for such problems, and fix affected functions.
    
        - Document how to configure installations and applications to guard
          against search-path-dependent trojan-horse attacks from other users
    
          Using a search_path setting that includes any schemas writable by a
          hostile user enables that user to capture control of queries and then
          run arbitrary SQL code with the permissions of the attacked user. While
          it is possible to write queries that are proof against such hijacking,
          it is notationally tedious, and it's very easy to overlook holes.
          Therefore, we now recommend configurations in which no untrusted schemas
          appear in one's search path.
          (CVE-2018-1058)
    
        - Avoid use of insecure search_path settings in pg_dump and other client
          programs
    
          pg_dump, pg_upgrade, vacuumdb and other PostgreSQL-provided applications
          were themselves vulnerable to the type of hijacking described in the
          previous changelog entry; since these applications are commonly run by
          superusers, they present particularly attractive targets.  To make them
          secure whether or not the installation as a whole has been secured,
          modify them to include only the pg_catalog schema in their search_path
          settings. Autovacuum worker processes now do the same, as well.
    
          In cases where user-provided functions are indirectly executed by these
          programs -- for example, user-provided functions in index expressions --
          the tighter search_path may result in errors, which will need to be
          corrected by adjusting those user-provided functions to not assume
          anything about what search path they are invoked under.  That has always
          been good practice, but now it will be necessary for correct behavior.
          (CVE-2018-1058)
    
        - Details about other changes can be found at
          https://www.postgresql.org/docs/9.5/static/release-9-5-12.html
    
     -- Christian Ehrhardt <email address hidden>  Wed, 28 Feb 2018 09:59:08 +0100
  • postgresql-9.5 (9.5.11-0ubuntu0.16.04) xenial-security; urgency=medium
    
      * New upstream release (LP: #1747676)
        - Ensure that all temporary files made by pg_upgrade are non-world-readable
          (CVE-2018-1053)
        - Details about other changes at full changelog:
          https://www.postgresql.org/docs/9.5/static/release-9-5-11.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 06 Feb 2018 15:20:02 +0100
  • postgresql-9.5 (9.5.10-0ubuntu0.16.04) xenial-security; urgency=medium
    
      * New upstream release (LP: #1730661)
        - Previously, a race condition allowed some table rows to be omitted from
          the index. It may be necessary to reindex existing BRIN indexes to
          recover from past occurrences of this problem.
        - Details about other changes at full changelog:
          https://www.postgresql.org/docs/9.5/static/release-9-5-10.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 07 Nov 2017 14:33:50 +0100
  • postgresql-9.5 (9.5.9-0ubuntu0.16.04) xenial; urgency=medium
    
      * New upstream release (LP: #1713979)
        - fix upgrade regressions of the former security release
        - Details about other changes at full changelog:
          https://www.postgresql.org/docs/9.5/static/release-9-5-9.html
    
     -- Christian Ehrhardt <email address hidden>  Wed, 30 Aug 2017 13:01:13 +0200
  • postgresql-9.5 (9.5.8-0ubuntu0.16.04.1) xenial-security; urgency=medium
    
      * SECURITY UPDATE: Update to 9.5.8 to fix security issues
        - Further restrict visibility of pg_user_mappings.umoptions, to protect
          passwords stored as user mapping options (CVE-2017-7547)
        - Disallow empty passwords in all password-based authentication methods
          (CVE-2017-7546)
        - Make lo_put() check for UPDATE privilege on the target large object
          (CVE-2017-7548)
    
     -- Marc Deslauriers <email address hidden>  Mon, 14 Aug 2017 08:45:32 -0400
  • postgresql-9.5 (9.5.7-0ubuntu0.16.04) xenial; urgency=medium
    
      * New upstream release (LP: #1690730)
        - Restrict visibility of pg_user_mappings.umoptions, to protect passwords
          stored as user mapping options (CVE-2017-7486)
        - Prevent exposure of statistical information via leaky operators
          (CVE-2017-7484)
        - Restore libpq's recognition of the PGREQUIRESSL environment variable
          (CVE-2017-7485)
    
        - A dump/restore is not required for those running 9.5.X.
        - However, if you use foreign data servers that make use of user passwords
          for authentication, see the first changelog entry.
        - Also, if you are using third-party replication tools that depend on
          "logical decoding", see the fourth changelog entry.
    
        - Details about other changes at full changelog:
          https://www.postgresql.org/docs/9.5/static/release-9-5-7.html
    
     -- Christian Ehrhardt <email address hidden>  Mon, 15 May 2017 08:46:07 +0200
  • postgresql-9.5 (9.5.6-0ubuntu0.16.04) xenial; urgency=medium
    
      * New upstream release (LP: #1664478)
        - Fix a race condition that could cause indexes built with CREATE INDEX
          CONCURRENTLY to be corrupt (Pavan Deolasee, Tom Lane).
          If CREATE INDEX CONCURRENTLY was used to build an index that depends on
          a column not previously indexed, then rows inserted or updated by
          transactions that ran concurrently with the CREATE INDEX command could
          have received incorrect index entries.  If you suspect this may have
          happened, the most reliable solution is to rebuild affected indexes
          after installing this update
    
        - Details about other changes:
          http://www.postgresql.org/docs/9.5/static/release-9-5-6.html
    
     -- Christian Ehrhardt <email address hidden>  Tue, 14 Feb 2017 09:29:09 +0100
  • postgresql-9.5 (9.5.5-0ubuntu0.16.04) xenial-proposed; urgency=medium
    
      * New upstream bug fix release (LP: #1637236)
        - Fix WAL-logging of truncation of relation free space maps and visibility
          maps.
          It was possible for these files to not be correctly restored during
          crash recovery, or to be written incorrectly on a standby server. Bogus
          entries in a free space map could lead to attempts to access pages that
          have been truncated away from the relation itself, typically producing
          errors like "could not read block XXX: read only 0 of 8192 bytes".
          Checksum failures in the visibility map are also possible, if
          checksumming is enabled.
    
          Procedures for determining whether there is a problem and repairing it
          if so are discussed at
             https://wiki.postgresql.org/wiki/Free_Space_Map_Problems.
    
        - Details about other changes:
          http://www.postgresql.org/docs/9.5/static/release-9-5-5.html
    
     -- Martin Pitt <email address hidden>  Thu, 27 Oct 2016 18:03:43 +0200
  • postgresql-9.5 (9.5.4-0ubuntu0.16.04) xenial-security; urgency=medium
    
      * New upstream security/bug fix release (LP: #1614113)
        - Fix possible mis-evaluation of nested CASE-WHEN expressions
          A CASE expression appearing within the test value subexpression of
          another CASE could become confused about whether its own test value was
          null or not.  Also, inlining of a SQL function implementing the equality
          operator used by a CASE expression could result in passing the wrong
          test value to functions called within a CASE expression in the SQL
          function's body.  If the test values were of different data types, a
          crash might result; moreover such situations could be abused to allow
          disclosure of portions of server memory.  (CVE-2016-5423)
    
        - Fix client programs' handling of special characters in database and role
          names
          Numerous places in vacuumdb and other client programs could become
          confused by database and role names containing double quotes or
          backslashes.  Tighten up quoting rules to make that safe. Also, ensure
          that when a conninfo string is used as a database name parameter to
          these programs, it is correctly treated as such throughout.
    
          Fix handling of paired double quotes in psql's \connect and \password
          commands to match the documentation.
    
          Introduce a new -reuse-previous option in psql's \connect command to
          allow explicit control of whether to re-use connection parameters from a
          previous connection.  (Without this, the choice is based on whether the
          database name looks like a conninfo string, as before.)  This allows
          secure handling of database names containing special characters in
          pg_dumpall scripts.
    
          pg_dumpall now refuses to deal with database and role names containing
          carriage returns or newlines, as it seems impractical to quote those
          characters safely on Windows.  In future we may reject such names on the
          server side, but that step has not been taken yet.
    
          These are considered security fixes because crafted object names
          containing special characters could have been used to execute commands
          with superuser privileges the next time a superuser executes pg_dumpall
          or other routine maintenance operations.  (CVE-2016-5424)
    
        - Details about other fixes:
          https://www.postgresql.org/docs/9.5/static/release-9-5-4.html
    
     -- Martin Pitt <email address hidden>  Wed, 17 Aug 2016 16:12:33 +0200
  • postgresql-9.5 (9.5.3-0ubuntu0.16.04) xenial-proposed; urgency=medium
    
      * New upstream bug fix release (LP: #1581016)
        - Details: http://www.postgresql.org/docs/9.5/static/release-9-5-3.html
    
     -- Martin Pitt <email address hidden>  Thu, 12 May 2016 14:57:49 +0200
  • postgresql-9.5 (9.5.2-1) unstable; urgency=medium
    
      * New upstream version.
    
        + Disable abbreviated keys for string sorting in non-C locales
          (Robert Haas)
    
          PostgreSQL 9.5 introduced logic for speeding up comparisons of string
          data types by using the standard C library function strxfrm() as a
          substitute for strcoll().  It now emerges that most versions of glibc
          (Linux's implementation of the C library) have buggy implementations of
          strxfrm() that, in some locales, can produce string comparison results
          that do not match strcoll().  Until this problem can be better
          characterized, disable the optimization in all non-C locales.  (C locale
          is safe since it uses neither strcoll() nor strxfrm().)
    
          Unfortunately, this problem affects not only sorting but also entry
          ordering in B-tree indexes, which means that B-tree indexes on text,
          varchar, or char columns may now be corrupt if they sort according to an
          affected locale and were built or modified under PostgreSQL 9.5.0 or
          9.5.1. Users should REINDEX indexes that might be affected.
    
          It is not possible at this time to give an exhaustive list of
          known-affected locales.  C locale is known safe, and there is no
          evidence of trouble in English-based locales such as en_US, but some
          other popular locales such as de_DE are affected in most glibc versions.
    
        + Maintain row-security status properly in cached plans (Stephen Frost)
    
          In a session that performs queries as more than one role, the plan cache
          might incorrectly re-use a plan that was generated for another role ID,
          thus possibly applying the wrong set of policies when row-level security
          (RLS) is in use. (CVE-2016-2193)
    
        + Add must-be-superuser checks to some new contrib/pageinspect functions
          (Andreas Seltenreich)
    
          Most functions in the pageinspect extension that inspect bytea values
          disallow calls by non-superusers, but brin_page_type() and
          brin_metapage_info() failed to do so.  Passing contrived bytea values to
          them might crash the server or disclose a few bytes of server memory.
          Add the missing permissions checks to prevent misuse. (CVE-2016-3065)
    
      * 02-relax-sslkey-permscheck.patch: Replace with what went upstream in 9.6.
      * Stop suggesting the use of identd.
      * Modernize server package description.
      * Recommend sysstat.
    
     -- Christoph Berg <email address hidden>  Tue, 29 Mar 2016 12:22:08 +0200
  • postgresql-9.5 (9.5.1-1) unstable; urgency=medium
    
      * New upstream version.
        + Fix infinite loops and buffer-overrun problems in regular expressions.
          Very large character ranges in bracket expressions could cause infinite
          loops in some cases, and memory overwrites in other cases.
          (CVE-2016-0773)
    
      * Fix installation path of contrib examples.
    
     -- Christoph Berg <email address hidden>  Wed, 10 Feb 2016 13:04:39 +0100
  • postgresql-9.5 (9.5.0-3) unstable; urgency=medium
    
      * Move spinlock flag to common configure flags, the python3 build needs that
        as well.
      * Update debian/copyright to please DEP-5.
    
     -- Christoph Berg <email address hidden>  Thu, 04 Feb 2016 13:08:13 +0100
  • postgresql-9.5 (9.5.0-2) unstable; urgency=medium
    
      * Disable spinlocks on alpha. Performance will be poor, but at least they
        will have a libpq package.
      * Add logrotate to test dependencies.
    
     -- Christoph Berg <email address hidden>  Wed, 13 Jan 2016 11:12:10 +0100
  • postgresql-9.5 (9.5.0-1) unstable; urgency=medium
    
      * First 9.5 release.
      * src/bin/pg_xlogdump/Makefile: Sort list of objects to make build
        reproducible.
    
     -- Christoph Berg <email address hidden>  Mon, 04 Jan 2016 23:00:37 +0100
  • postgresql-9.5 (9.5~rc1-1) experimental; urgency=medium
    
      * First 9.5 release candidate.
    
     -- Christoph Berg <email address hidden>  Thu, 17 Dec 2015 16:10:44 +0100