postgresql: updated to 13.3, 12.7, 11.12, 10.17, 9.6.22
PostgreSQL 13.3, 12.7, 11.12, 10.17, and 9.6.22 Released!
Posted on 2021-05-13 by PostgreSQL Global Development Group
PostgreSQL Project Security
The PostgreSQL Global Development Group has released an update to all supported versions of our database system, including 13.3, 12.7, 11.12, 10.17, and 9.6.22. This release closes three security vulnerabilities and fixes over 45 bugs reported over the last three months.
For the full list of changes, please review the release notes.
Security Issues
CVE-2021-32027: Buffer overrun from integer overflow in array subscripting calculations
Versions Affected: 9.6 - 13. The security team typically does not test unsupported versions, but this problem is quite old.
While modifying certain SQL array values, missing bounds checks let authenticated database users write arbitrary bytes to a wide area of server memory.
The PostgreSQL project thanks Tom Lane for reporting this problem.
CVE-2021-32028: Memory disclosure in INSERT ... ON CONFLICT ... DO UPDATE
Versions Affected: 9.6 - 13. The security team typically does not test unsupported versions. The feature first appeared in 9.5.
Using an INSERT ... ON CONFLICT ... DO UPDATE command on a purpose-crafted table, an attacker can read arbitrary bytes of server memory. In the default configuration, any authenticated database user can create prerequisite objects and complete this attack at will. A user lacking the CREATE and TEMPORARY privileges on all databases and the CREATE privilege on all schemas cannot use this attack at will.
The PostgreSQL project thanks Andres Freund for reporting this problem.
CVE-2021-32029: Memory disclosure in partitioned-table UPDATE ... RETURNING
Versions Affected: 11 - 13
Using an UPDATE ... RETURNING on a purpose-crafted partitioned table, an attacker can read arbitrary bytes of server memory. In the default configuration, any authenticated database user can create prerequisite objects and complete this attack at will. A user lacking the CREATE and TEMPORARY privileges on all databases and the CREATE privilege on all schemas typically cannot use this attack at will.
The PostgreSQL project thanks Tom Lane for reporting this problem.
Bug Fixes and Improvements
This update fixes over 45 bugs that were reported in the last several months. Some of these issues only affect version 13, but could also apply to other supported versions.
Some of these fixes include:
Fix potential incorrect computation of UPDATE ... RETURNING outputs for joined, cross-partition updates.
Fix ALTER TABLE ... ALTER CONSTRAINT when used on foreign-key constraints on partitioned tables. The command would fail to adjust the DEFERRABLE and/or INITIALLY DEFERRED properties of the constraints and triggers of leaf partitions, leading to unexpected behavior. After updating to this version, you can execute the ALTER TABLE ... ALTER CONSTRAINT command to fix any misbehaving partitioned tables.
Ensure that when a child table is attached with ALTER TABLE ... INHERIT that generated columns in the parent are generated in the same way in the child.
Forbid marking an identity column as NULL.
Allow ALTER ROLE ... SET/ALTER DATABASE ... SET to set the role, session_authorization, and temp_buffers parameters.
Ensure that REINDEX CONCURRENTLY preserves any statistics target set for the index.
Fix an issue where, in some cases, saving records within AFTER triggers could cause crashes.
Fix how to_char() handles Roman-numeral month format codes with negative intervals.
Fix use of uninitialized value while parsing an \{m,n\} quantifier in a BRE-mode regular expression.
Fix "could not find pathkey item to sort" planner errors that occur in some situations when the sort key involves an aggregate or window function.
Fix issue with BRIN index bitmap scans that could lead to "could not open file" errors.
Fix potentially wrong answers from GIN tsvector index searches when there are many matching records.
Fixes for COMMIT AND CHAIN functionality on both the server and psql.
Avoid incorrect timeline change while recovering uncommitted two-phase transactions from WAL, which could lead to consistency issues and the inability to restart the server.
Ensure thatwal_sync_method is set to fdatasync by default on newer FreeBSD releases.
Disable the vacuum_cleanup_index_scale_factor parameter and storage option.
Fix several memory leaks in the server, including one with SSL/TLS parameter initialization.
Restore the previous behavior of \connect service=XYZ to psql, i.e. disallow environmental variables (e.g. PGPORT) from overriding entries in the service file.
Fix how pg_dump handles generated columns in partitioned tables.
Add additional checks to pg_upgrade for user tables containing non-upgradable data types.
On Windows, initdb now prints instructions about how to start the server with pg_ctl using backslash separators.
Fix pg_waldump to count XACT records correctly when generating per-record statistics.
2021-05-18 13:56:16 +02:00
|
|
|
#$ $NetBSD: Makefile,v 1.12 2021/05/18 11:56:18 adam Exp $
|
2018-10-23 18:02:51 +02:00
|
|
|
|
postgresqlNN: updated to 12.2, 11.7, 10.12, 9.6.17, 9.5.21, and 9.4.26
PostgreSQL 12.2, 11.7, 10.12, 9.6.17, 9.5.21, and 9.4.26
PostgreSQL 9.4 Now EOL
This is the last release for PostgreSQL 9.4, which will no longer receive security updates and bug fixes. PostgreSQL 9.4 introduced new features such as JSONB support, the ALTER SYSTEM command, the ability to stream logical changes to an output plugin, and more.
While we are very proud of this release, these features are also found in newer versions of PostgreSQL. Many of these features have also received improvements, and, per our versioning policy, it is time to retire PostgreSQL 9.4.
To receive continued support, we suggest that you make plans to upgrade to a newer, supported version of PostgreSQL. Please see the PostgreSQL versioning policy for more information.
Security Issues
CVE-2020-1720: ALTER ... DEPENDS ON EXTENSION is missing authorization checks.
Versions Affected: 9.6 - 12
The ALTER ... DEPENDS ON EXTENSION sub-commands do not perform authorization checks, which can allow an unprivileged user to drop any function, procedure, materialized view, index, or trigger under certain conditions. This attack is possible if an administrator has installed an extension and an unprivileged user can CREATE, or an extension owner either executes DROP EXTENSION predictably or can be convinced to execute DROP EXTENSION.
Bug Fixes and Improvements
This update also fixes over 75 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 for partitioned tables with foreign-key references where TRUNCATE ... CASCADE would not remove all data. If you have previously used TRUNCATE ... CASCADE on a partitioned table with foreign-key references please see the "Updating" section for verification and cleanup steps.
Fix failure to add foreign key constraints to table with sub-partitions (aka a multi-level partitioned table). If you have previously used this functionality, you can fix it by either detaching and re-attaching the affected partition, or by dropping and re-adding the foreign key constraint to the parent table. You can find more information on how to perform these steps in the ALTER TABLE documentation.
Fix performance issue for partitioned tables introduced by the fix for CVE-2017-7484 that now allows the planner to use statistics on a child table for a column that the user is granted access to on the parent table when the query contains a leaky operator.
Several other fixes and changes for partitioned tables, including disallowing partition key expressions that return pseudo-types, such as RECORD.
Fix for logical replication subscribers for executing per-column UPDATE triggers.
Fix for several crashes and failures for logical replication subscribers and publishers.
Improve efficiency of logical replication with REPLICA IDENTITY FULL.
Ensure that calling pg_replication_slot_advance() on a physical replication slot will persist changes across restarts.
Several fixes for the walsender processes.
Improve performance of hash joins with very large inner relations.
Fix placement of "Subplans Removed" field in EXPLAIN output by placing it with its parent Append or MergeAppend plan.
Several fixes for parallel query plans.
Several fixes for query planner errors, including one that affected joins to single-row subqueries.
Several fixes for MCV extend statistics, including one for incorrect estimation for OR clauses.
Improve efficiency of parallel hash join on CPUs with many cores.
Ignore the CONCURRENTLY option when performing an index creation, drop, or reindex on a temporary table.
Fall back to non-parallel index builds when a parallelized CREATE INDEX has no free dynamic shared memory slots.
Several fixes for GiST & GIN indexes.
Fix possible crash in BRIN index operations with box, range and inet data types.
Fix support for BRIN hypothetical indexes.
Fix failure in ALTER TABLE when a column referenced in a GENERATED expression is added or changed in type earlier in the same ALTER TABLE statement.
Fix handling of multiple AFTER ROW triggers on a foreign table.
Fix off-by-one result for EXTRACT(ISOYEAR FROM timestamp) for BC dates.
Prevent unwanted lowercasing and truncation of RADIUS authentication parameters in the pg_hba.conf file.
Several fixes for GSSAPI support, including having libpq accept all GSS-related connection parameters even if the GSSAPI code is not compiled in.
Several fixes for pg_dump and pg_restore when run in parallel mode.
Fix crash with postgres_fdw when trying to execute a remote query on the remote server such as UPDATE remote_tab SET (x,y) = (SELECT ...).
Disallow NULL category values in the crosstab() function of contrib/tablefunc to prevent crashes.
Several fixes for Windows, including a race condition that could cause timing oddities with NOTIFY.
Several ecpg fixes.
2020-02-14 18:06:40 +01:00
|
|
|
PKGNAME= ${DISTNAME:S/-/11-plperl-/}
|
2018-10-23 18:02:51 +02:00
|
|
|
COMMENT= PL/Perl procedural language for the PostgreSQL backend
|
|
|
|
|
|
|
|
DEPENDS+= postgresql11-server>=${PKGVERSION_NOREV}:../../databases/postgresql11-server
|
|
|
|
|
|
|
|
.include "../../databases/postgresql11/Makefile.common"
|
|
|
|
|
|
|
|
USE_TOOLS+= perl
|
|
|
|
PERL5_CONFIGURE= no
|
|
|
|
CONFIGURE_ARGS+= --with-perl
|
|
|
|
BUILD_MAKE_FLAGS= PGXS=1
|
|
|
|
|
|
|
|
BUILD_DIRS= src/pl/plperl
|
|
|
|
MAKE_FILE= GNUmakefile
|
|
|
|
|
|
|
|
# There is some dependency ordering problem in the Makefile,
|
|
|
|
# so force the headers to be generated first.
|
|
|
|
BUILD_TARGET= perlchunks.h plperl_opmask.h all
|
|
|
|
|
|
|
|
.include "../../databases/postgresql11-client/buildlink3.mk"
|
|
|
|
.include "../../lang/perl5/module.mk"
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|