Commit graph

16 commits

Author SHA1 Message Date
adam
e9ff0aa152 postgresqlNN: updated to 12.1, 11.6, 10.11, 9.6.16, 9.5.20, and 9.4.25
PostgreSQL 12.1, 11.6, 10.11, 9.6.16, 9.5.20, and 9.4.25 Released!

PostgreSQL 9.4 EOL Approaching

PostgreSQL 9.4 will stop receiving fixes on February 13, 2020, which is the next planned cumulative update release. Please see our versioning policy for more information.

Bug Fixes and Improvements

This update also fixes over 50 bugs that were reported in the last several months. Some of these issues affect only version 12, but may also affect all supported versions.

Some of these fixes include:

Fix crash that occurs when ALTER TABLE adds a column without a default value along with other changes that require a table rewrite
Several fixes for REINDEX CONCURRENTLY.
Fix for VACUUM that would cause it to fail under a specific case involving a still-running transaction.
Fix for a memory leak that could occur when VACUUM runs on a GiST index.
Fix for an error that occurred when running CLUSTER on an expression index.
Fix failure for SET CONSTRAINTS ... DEFERRED on partitioned tables.
Several fixes for the creation and dropping of indexes on partitioned tables.
Fix for partition-wise joins that could lead to planner failures.
Ensure that offset expressions in WINDOW clauses are processed when a query's expressions are manipulated.
Fix misbehavior of bitshiftright() where it failed to zero out padding space in the last byte if the bit string length is not a multiple of 8. For how to correct your data, please see the "Updating" section.
Ensure an empty string that is evaluated by the position() functions returns 1, as per the SQL standard.
Fix for a parallel query failure when it is unable to request a background worker.
Fix crash triggered by a case involving a BEFORE UPDATE trigger.
Display the correct error when a query tries to access a TOAST table.
Allow encoding conversion to succeed on strings with output up to 1GB. Previously there was hard limit of 0.25GB on the input string.
Ensure that temporary WAL and history files are removed at the end of archive recovery.
Avoid failure in archive recovery if recovery_min_apply_delay is enabled.
Ignore restore_command, recovery_end_command, and recovery_min_apply_delay settings during crash recovery.
Several fixes for logical replication, including a failure when the publisher and subscriber had different REPLICA IDENTITY columns set.
Correctly timestamp replication messages for logical decoding, which in the broken case would lead to pg_stat_subscription.last_msg_send_time set to NULL.
Several fixes for libpq, including one that improves PostgreSQL 12 compatibility.
Several pg_upgrade fixes.
Fix how a parallel restore handles foreign key constraints on partitioned tables to ensure they are not created too soon.
pg_dump now outputs similarly named triggers and RLS policies in order based on table name, instead of OID.
Fix pg_rewind to not update the contents of pg_control when using the --dry-run option.

This update also contains tzdata release 2019c for DST law changes in Fiji and Norfolk Island. Historical corrections for Alberta, Austria, Belgium, British Columbia, Cambodia, Hong Kong, Indiana (Perry County), Kaliningrad, Kentucky, Michigan, Norfolk Island, South Korea, and Turkey.
2019-11-19 05:54:51 +00:00
rillig
b4f1862849 databases: align variable assignments
pkglint -Wall -F --only aligned -r

No manual corrections.
2019-11-02 15:37:59 +00:00
triaxx
790e5989b7 postgresql11: fix broken gettext detection 2019-10-25 12:16:06 +00:00
triaxx
3d19cae7aa postgresql11: fix nls option support 2019-10-25 08:00:46 +00:00
triaxx
6f0516d1f8 postgresql11: make nls option on by default 2019-10-25 07:15:40 +00:00
triaxx
2c3cdebbe0 postgresql11: make nls support optional 2019-10-25 04:39:18 +00:00
adam
b286a8416a Remove unused files; cleanup 2019-10-07 19:28:28 +00:00
adam
7cec332570 postgresqlNN: updated to 11.5, 10.10, 9.6.15, 9.5.19, 9.4.24
PostgreSQL 11.5, 10.10, 9.6.15, 9.5.19, 9.4.24

Security Issues

Four security vulnerabilities have been closed by this release:

CVE-2019-10208: TYPE in pg_temp executes arbitrary SQL during SECURITY DEFINER execution

Versions Affected: 9.4 - 11

Given a suitable SECURITY DEFINER function, an attacker can execute arbitrary SQL under the identity of the function owner. An attack requires EXECUTE permission on the function, which must itself contain a function call having inexact argument type match. For example, length('foo'::varchar) and length('foo') are inexact, while length('foo'::text) is exact. As part of exploiting this vulnerability, the attacker uses CREATE DOMAIN to create a type in a pg_temp schema. The attack pattern and fix are similar to that for CVE-2007-2138.

Writing SECURITY DEFINER functions continues to require
following the considerations noted in the documentation:


The PostgreSQL project thanks Tom Lane for reporting this problem.

CVE-2019-10209: Memory disclosure in cross-type comparison for hashed subplan

Versions Affected: 11

In a database containing hypothetical, user-defined hash equality operators, an attacker could read arbitrary bytes of server memory. For an attack to become possible, a superuser would need to create unusual operators. It is possible for operators not purpose-crafted for attack to have the properties that enable an attack, but we are not aware of specific examples.

The PostgreSQL project thanks Andreas Seltenreich for reporting this problem.

CVE-2019-10210: EnterpriseDB Windows installer writes PostgreSQL superuser password to unprotected temporary file

Versions Affected: The EnterpriseDB Windows installer for versions 9.4 - 11

The EnterpriseDB Windows installer writes a password to a temporary file in its installation directory, creates initial databases, and deletes the file. During those seconds while the file exists, a local attacker can read the PostgreSQL superuser password from the file.

The PostgreSQL project thanks Noah Misch for reporting this problem.

CVE-2019-10211: EnterpriseDB Windows installer bundled OpenSSL executes code from unprotected directory

Versions Affected: The EnterpriseDB Windows installer for versions 9.4 - 11

When the database server or libpq client library initializes SSL, libeay32.dll attempts to read configuration from a hard-coded directory. Typically, the directory does not exist, but any local user could create it and inject configuration. This configuration can direct OpenSSL to load and execute arbitrary code as the user running a PostgreSQL server or client. Most PostgreSQL client tools and libraries use libpq, and one can encounter this vulnerability by using any of them. This vulnerability is much like CVE-2019-5443, but it originated independently. One can work around the vulnerability by setting environment variable OPENSSL_CONF to "NUL:/openssl.cnf" or any other name that cannot exist as a file.

The PostgreSQL project thanks Daniel Gustafsson of the curl security team for reporting this problem.

Bug Fixes and Improvements

This update also fixes over 40 bugs that were reported in the last several months. Some of these issues affect only version 11, but many affect all supported versions.

Some of these fixes include:

Fix for ALTER TABLE ... ALTER COLUMN TYPE when multiple column types are modified in a single-command. This issue was introduced in the previous cumulative update (11.4, 10.9, 9.6.14, 9.5.18, 9.4.23, and 12 beta 2).
Ensure that partition key columns will not be dropped as the result of an "indirect drop," such as from a cascade from dropping the key column's data type (e.g. a custom data type). This fix is applied only to newly created partitioned tables: if you believe you have an affected partition table (e.g. one where the partition key uses a custom data type), you will need to either create a new table and move your data into it OR use pg_upgrade.
Prevent dropping a partitioned table's trigger if there are pending trigger events in child partitions. This particularly affects foreign key constraints, which are implemented by triggers.
Several additional fixes for partitioning, including a fix for partition pruning that could lead to inefficient queries.
Fix for parallel hash joins that could lead to duplicate result rows in EXISTS queries.
Several fixes for the query planner.
Several fixes for issues that would lead to query deadlocks.
Fix for multi-column foreign keys when rebuilding a foreign key constraint.
Prevent extended statistics from being built for inherited tables.
Fix for the canonicalization of date ranges that include -infinity/infinity endpoints to ensure the behavior matches the documentation.
Fix loss of fractional digits when converting very large money values to numeric.
Fix for PL/pgSQL functions that return composite types.
Make libpq ignore the \r carriage return in connection service files, which was causing connection failures in some edge cases.
Several fixes for psql, which includes avoiding incorrect tab completion options after SET variable =.
Improve reliability of contrib/amcheck's index verification.
Set initdb to prefer the timezone behavior defined by the C library instead of what is defined by localtime or posixrules. This ensures PostgreSQL uses the "real" timezone name instead of an artificial name.
Fix pg_dump to ensure that custom operator classes are dumped in the correct order to prevent creating an unrestorable dump.
Fix possible lockup in pgbench when using -R option.
Fix spinlock assembly code for MIPS CPUs so that it works on MIPS r6.
This update also contains tzdata release 2019b for DST law changes in Brazil, plus historical corrections for Hong Kong, Italy, and Palestine. This update also adds support for zic's new -b slim option to reduce the size of the installed zone files, though it is not currently being used by PostgreSQL.
2019-08-11 11:40:10 +00:00
adam
f26b45242c postgresqlNN: updated to 11.4, 10.9, 9.6.14, 9.5.18, 9.4.23
PostgreSQL 11.4, 10.9, 9.6.14, 9.5.18, 9.4.23, and 12 Beta 2 Released!

The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 11.4, 10.9, 9.6.14, 9.5.18, and 9.4.23, as well as the second beta of PostgreSQL 12. This release fixes one security issue and over 25 bugs since the previous cumulative update in May.

Security Issues

This release closes one security vulnerability:
CVE-2019-10164: Stack-based buffer overflow via setting a password
Versions affected: 10, 11, 12 beta.

Bug Fixes and Improvements

Fix assorted errors in run-time partition pruning that could lead to wrong answers in queries on partitioned tables
pg_dump now recreates table partitions using CREATE TABLE and ALTER TABLE .. ATTACH PARTITION rather than including PARTITION OF in the creation command
Improve how initdb determines which system time zone to select if there are equivalent names for the time zone. Also explicitly prefer UTC over UCT
Fix possible crash while trying to copy trigger definitions to a new partition
Fix failure of ALTER TABLE .. ALTER COLUMN TYPE when the table has a partial exclusion constraint
Fix failure of COMMENT command for comments on domains
Several fixes related to aggregation
Fix faulty generation of merge-append plans that could lead to "could not find pathkey item to sort" errors
Fix failures on dump/restore where views contained queries with duplicate join names
Fix conversion of JSON string literals to JSON-type output columns in json_to_record() and json_populate_record()
Fix incorrect optimization of {1,1} quantifiers in regular expressions
Fix issue for B-tree indexes during edge case failure involving columns covered with the INCLUDE clause, which manifests itself with errors during VACUUM. If you are affected by this issue, you will need to reindex the specific index
Fix race condition in check to see whether a pre-existing shared memory segment is still in use by a conflicting postmaster
Fix for the walreceiver process that avoids a crash or deadlock on shutdown
Avoid possible hang in libpq if using SSL and OpenSSL's pending-data buffer contains an exact multiple of 256 bytes
Fix ordering of GRANT commands emitted by pg_dump and pg_dumpall for databases and tablespaces
Fix misleading error reports from reindexdb
Ensure that vacuumdb returns correct status if an error occurs while using parallel jobs
Fix contrib/auto_explain to not cause problems in parallel queries, which resulted in failures like "could not find key N in shm TOC"
Account for possible data modifications by local BEFORE ROW UPDATE triggers in contrib/postgres_fdw
On Windows, avoid failure when the database encoding is set to SQL_ASCII and we attempt to log a non-ASCII string
2019-06-23 07:55:58 +00:00
adam
0a4f7b2d17 postgresqlNN: updated to the latest
PostgreSQL 11.3, 10.8, 9.6.13, 9.5.17, and 9.4.22 Released!
The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 11.3, 10.8, 9.6.13, 9.5.17, and 9.4.22. This release fixes two security issues in the PostgreSQL server, a security issue found in two of the PostgreSQL Windows installers, and over 60 bugs reported over the last three months.

Security Issues

Four security vulnerabilities have been closed by this release:

CVE-2019-10127: BigSQL Windows installer does not clear permissive ACL entries
CVE-2019-10128: EnterpriseDB Windows installer does not clear permissive ACL entries
Due to both the EnterpriseDB and BigSQL Windows installers not locking down the permissions of the PostgreSQL binary installation directory and the data directory, an unprivileged Windows user account and an unprivileged PostgreSQL account could cause the PostgreSQL service account to execute arbitrary code.

This vulnerability is present in all supported versions of PostgreSQL for these installers, and possibly exists in older versions. Both sets of installers have fixed the permissions for these directories for both new and existing installations. If you have installed PostgreSQL on Windows using other methods, we advise that you check that your PostgreSQL binary directories are writable only to trusted users and that your data directories are only accessible to trusted users.

The PostgreSQL project thanks Conner Jones for reporting this problem.

CVE-2019-10129: Memory disclosure in partition routing
Prior to this release, a user running PostgreSQL 11 can read arbitrary bytes of server memory by executing a purpose-crafted INSERT statement to a partitioned table.

CVE-2019-10130: Selectivity estimators bypass row security policies
PostgreSQL maintains statistics for tables by sampling data available in columns; this data is consulted during the query planning process. Prior to this release, a user able to execute SQL queries with permissions to read a given column could craft a leaky operator that could read whatever data had been sampled from that column. If this happened to include values from rows that the user is forbidden to see by a row security policy, the user could effectively bypass the policy. This is fixed by only allowing a non-leakproof operator to use this data if there are no relevant row security policies for the table.

This issue is present in PostgreSQL 9.5, 9.6, 10, and 11. The PostgreSQL project thanks Dean Rasheed for reporting this problem.

Bug Fixes and Improvements

This update also fixes over 60 bugs that were reported in the last several months. Some of these issues affect only version 11, but many affect all supported versions.

Some of these fixes include:

Several catalog corruption fixes, including one related to running ALTER TABLE on a partitioned table
Several fixes for partitioning
Avoid server crash when an error occurs while trying to persist a cursor query across a transaction commit
Avoid O(N^2) performance issue when rolling back a transaction that created many tables
Fix possible “could not access status of transaction” failures in txid_status()
Fix updatable views to handle explicit DEFAULT items in INSERT .. VALUES statements where there are multiple VALUES rows
Fix CREATE VIEW to allow zero-column views
Add missing support for the CREATE TABLE IF NOT EXISTS .. AS EXECUTE .. statement
Ensure that sub-SELECTs appearing in row-level-security policy expressions are executed with the correct user's permissions
Accept XML documents as valid values of type xml when xmloption is set to content, as required by SQL:2006 and later
Fix incompatibility of GIN-index WAL records that were introduced in 11.2, 10.7, 9.6.12, 9.5.16, and 9.4.21 that affected replica servers running these versions reading in changes to GIN indexes from primary servers of older versions
Several memory leak fixes as well as fixes to management of dynamic shared memory
Relax panics on fsync and sync_file_range failures for certain cases where a failure indicated "operation not supported"
Several fixes to the query planner, several of which should lead to planning improvements
Fix race condition in which a hot-standby postmaster could fail to shut down after receiving a smart-shutdown request
Several fixes for SCRAM authentication
Fix handling of lc_time settings that imply an encoding different from the database's encoding
Create the current_logfiles file with the same permissions as other files in the server's data directory
Several ecpg fixes
Make pg_verify_checksums verify that the data directory it's pointed at is of the right PostgreSQL version
Several fixes for contrib/postgres_fdw, including one for remote partitions where an UPDATE could lead to incorrect results or a crash
Several Windows fixes
This update also contains 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.
2019-05-13 20:38:11 +00:00
ryoon
6fc378bce9 Recursive revbump from textproc/icu 2019-04-03 00:32:25 +00:00
adam
48a6761f85 Reset PKGREVISION 2019-02-17 08:27:51 +00:00
adam
1c3841db67 postgresqlNN: updated to 11.2, 10.7, 9.6.12, 9.5.16, and 9.4.21
PostgreSQL 11.2, 10.7, 9.6.12, 9.5.16, and 9.4.21 Released!
This release changes the behavior in how PostgreSQL interfaces with fsync() and includes fixes for partitioning and over 70 other bugs that were reported over the past three months.

Fix handling of unique indexes with INCLUDE columns on partitioned tables
Ensure that NOT NULL constraints of a partitioned table are honored within its partitions
Several fixes for constraints on partitioned tables
Fix problems with applying ON COMMIT DROP and ON COMMIT DELETE ROWS to partitioned tables and tables with inheritance children
Disallow COPY FREEZE on partitioned tables
Several fixes for the ALTER TABLE .. ADD COLUMN with a non-nullable default feature, including a possible index corruption case
Several fixes in GIN indexes, including avoiding a deadlock with vacuuming and concurrent index insertions (which partially reverts a performance improvement introduced in PostgreSQL 10)
Fix possible crashes in logical replication when index expressions or predicates are in use
Several fixes for the write-ahead log (WAL)
Fix possible crash in UPDATE with a multiple SET clause using a sub-SELECT
Fix crash when zero rows are provided to json[b]_populate_recordset() or json[b]_to_recordset()
Several fixes related to collation handling, including the parsing of collation-sensitive expressions in the arguments of a CALL statement
Several fixes for the query planner, including an improvement to planning speed for large inheritance or partitioning table groups
Several fixes for TRUNCATE
Ensure ALTER TABLE ONLY ADD COLUMN IF NOT EXISTS is processed correctly
Allow UNLISTEN in hot-standby (replica) mode
Fix parsing of space-separated lists of host names in the ldapserver parameter of LDAP authentication entries in pg_hba.conf
Several fixes for ecpg
Several fixes for psql, including having \g target work with COPY TO STDOUT
The random number generation for pgbench is now fully deterministic and platform-independent when --random-seed=N is specified
Fix pg_basebackup and pg_verify_checksums to appropriately ignore temporary files
Several fixes for pg_dump, including having ALTER INDEX SET STATISTICS commands present
Prevent false index-corruption reports from contrib/amcheck caused by inline-compressed data
Support new Makefile variables to help with building extensions
2019-02-17 08:26:11 +00:00
adam
16dd5de231 revbump after updating textproc/icu 2018-12-09 18:51:58 +00:00
adam
9e0a8d968c postgresNN: updated to the latest
The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 11.1, 10.6, 9.6.11, 9.5.15, 9.4.20, and 9.3.25. This release fixes one security issue as well as bugs reported over the last three months.

All users using the affected versions of PostgreSQL should update as soon as possible. Please see the notes on "Updating" below for any post-update steps that may be required if you are using pg_stat_statements in your installation.

This update is also the final release for PostgreSQL 9.3, which is now end-of-life and will no longer receive any bug or security fixes. If your environment still uses PostgreSQL 9.3, please make plans to update to a community supported version as soon as possible. Please see our versioning policy for more information.

Security Issues

One security vulnerability has been closed by this release:

CVE-2018-16850: SQL injection in pg_upgrade and pg_dump, via CREATE TRIGGER ... REFERENCING.
Versions Affected: 10, 11

Using a purpose-crafted trigger definition, an attacker can run arbitrary SQL statements with superuser privileges when a superuser runs pg_upgrade on the database or during a pg_dump dump/restore cycle. This attack requires a CREATE privilege on some non-temporary schema or a TRIGGER privilege on a table. This is exploitable in the default PostgreSQL configuration, where all users have CREATE privilege on public schema.

Bug Fixes and Improvements

This update also fixes numerous bugs that were reported in the last several months. Some of these issues affect only version 11, but many affect all supported versions.

These releases include fixes that:

Ensure that automatically created child indexes are created in the same tablespace as the parent partitioned index
Fix several crashes with triggers
Fix problems with applying ON COMMIT DELETE ROWS to a partitioned temporary table
Fix how NULL values are handled when using LEFT JOIN with a parallelized hash join
Several fixes around using named or defaulted arguments in CALL statements
Fix for strict aggregate functions (i.e. aggregates that cannot accept NULL inputs) with ORDER BY columns that enforces the strictness check
Fix with CASE statements where an expression was cast to an array type
Disable an optimization for updating expression indexes in order to prevent a crash
Fix a memory leak that occurred on a specific case of using a SP-GiST index
Fix for pg_verify_checksums incorrectly reporting on files that are not expected to have checksums
Prevent the PostgreSQL server from starting when wal_level is set to a value that cannot support an existing replication slot
Ensure that the server will process already-received NOTIFY and SIGTERM interrupts before waiting for client input
Allow PL/Ruby to work with newer versions of PostgreSQL
Fix for character-class checks on Windows for Unicode characters above U+FFFF, which affected full-text search as well as contrib/ltree and contrib/pg_trgm
Fix a case where psql would not report the receipt of a message from a NOTIFY call until after the next command
Fix build problems on macOS 10.14 (Mojave)
Several build fixes for the Windows platform
This updates also contains tzdata release 2018g for DST law changes in Chile, Fiji, Morocco, and Russia (Volgograd), plus historical corrections for China, Hawaii, Japan, Macau, and North Korea.
2018-11-09 18:12:23 +00:00
adam
eee51a9821 postgresql11: added version 11.0
PostgreSQL 11 provides users with improvements to overall performance of the database system, with specific enhancements associated with very large databases and high computational workloads. Further, PostgreSQL 11 makes significant improvements to the table partitioning system, adds support for stored procedures capable of transaction management, improves query parallelism and adds parallelized data definition capabilities, and introduces just-in-time (JIT) compilation for accelerating the execution of expressions in queries.
2018-10-23 16:02:51 +00:00