Up to [cvs.NetBSD.org] / pkgsrc / databases / postgresql14-pltcl
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
postgresql: updated to 17.5, 16.9, 15.13, 14.18, 13.21 PostgreSQL 17.5, 16.9, 15.13, 14.18, and 13.21 CVE-2025-4207: PostgreSQL GB18030 encoding validation can read one byte past end of allocation for text that fails validation Bug Fixes and Improvements This update fixes over 60 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 17. Some of these issues may also affect other supported versions of PostgreSQL. Handle self-referential foreign keys on partitioned tables correctly. Creating or attaching partitions failed to make the required catalog entries for a foreign-key constraint if the table referenced by the constraint was the same partitioned table. This resulted in failure to enforce the constraint fully. To fix this, please see the instructions in the "Updating" section. Fix for potential data loss issue when using BRIN bloom indexes (e.g. using the date_bloom_ops operator class). Fix MERGE into a partitioned table with DO NOTHING actions. Prevent failure in INSERT commands when the table has a GENERATED column of a domain type and the domain's constraints disallow NULL values. Fix ALTER TABLE .. ADD COLUMN to correctly handle the case of a domain type that has its own default value and the DEFAULT for the column is not set. Fix issues when performing casts within the keys of JSON constructor expressions. Fix XMLSERIALIZE() so that the INDENT option is correctly dumped out when it's present in views or rules. This was noticeable on restores. Several query planner fixes, including avoiding a premature evaluation of arguments in an aggregate function that has both FILTER and either ORDER BY or DISTINCT clauses that could lead to unnecessary failures. Fix for potentially returning incorrect results when a bitmap scan without output columns is executed while vacuum is also running on the same table. Fix performance issues in GIN index search startup when there are many search keys, for example, jsonbcol ?| array[...] with tens of thousands of array elements. Ensure that I/O statistics of active WAL senders are reported within at most one second. Fix race condition in handling of synchronous_standby_names immediately after startup, where a backend might fail to wait for a synchronous commit. Avoid infinite loop if scram_iterations is set to INT_MAX. Several fixes for logical replication, including handling of vacuum around deleted rows that are still required for logical decoding. Prevent potential data loss when schema modification operations (DDL) that don't take a strong lock affect tables that are being logically replicated. Prevent issues in logical replication that could allow duplicate data to be applied due to apply worker error handling. Improve how reindexdb handles scheduling parallel reindex operations to achieve the expected amount of parallelism. This release also updates time zone data files to tzdata release 2025b for DST law changes in Chile, plus historical corrections for Iran. Additionally, there is a new time zone America/Coyhaique for Chile's Aysén Region, to account for it changing to UTC-03 year-round, which diverges from America/Santiago.
*: recursive bump for default Kerberos implementation switch
*: recursive bump for icu 77 and libxml2 2.14
postgresql: updated to 17.1, 16.5, 15.9, 14.14, 13.17 PostgreSQL 12 is now end-of-life. Security Issues * CVE-2024-10976: PostgreSQL row security below e.g. subqueries disregards user ID changes * CVE-2024-10977: PostgreSQL libpq retains an error message from man-in-the-middle * CVE-2024-10978: PostgreSQL SET ROLE, SET SESSION AUTHORIZATION reset to wrong user ID * CVE-2024-10979: PostgreSQL PL/Perl environment variable changes execute arbitrary code Bug Fixes and Improvements This update fixes over 35 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 17. Some of these issues may also affect other supported versions of PostgreSQL. Fix when attaching or detaching table partitions with foreign key constraints. After upgrade, users impacted by this issue will need to perform manual steps to finish fixing it. Please see the "Upgrading" section and the release notes for more information. Fix when using libc as the default collation provider when LC_CTYPE is C while LC_COLLATE is a different locale. This could lead to incorrect query results. If you have these settings in your database, please reindex any affected indexes after updating to this release. This issue impacted 17.0 only. Several query planner fixes, including disallowing joining partitions (partitionwise join) if the collations of the partitions don't match. Fix possible wrong answers or wrong varnullingrels planner errors for MERGE ... WHEN NOT MATCHED BY SOURCE actions. Fix validation of the COPY FORCE_NOT_NULL and FORCE_NULL. Fix server crash when a json_objectagg() call contains a volatile function. Ensure there's a registered dependency between a partitioned table and a non-built-in access method specified in CREATE TABLE ... USING. This fix only prevents problems for partitioned tables created after this update. Fix race condition in committing a serializable transaction. Fix race condition in COMMIT PREPARED that could require manual file removal after a crash-and-recovery. Fix for pg_cursors view to prevent errors by excluding cursors that aren't completely set up. Reduce logical decoding memory consumption. Fix to prevent stable functions from receiving stale row values when they're called from a CALL statement's argument list and the CALL is within a PL/pgSQL EXCEPTION block. Fix for JIT crashes on ARM (aarch64) systems. The psql \watch now treats values that are less than 1ms to be 0 (no wait between executions). Fix failure to use credentials for a replication user in the password file (pgpass) pg_combinebackup now throws an error if an incremental backup file is present in a directory that should contain a full backup. Fix to avoid reindexing temporary tables and indexes in vacuumdb and parallel reindexdb
*: recursive bump for icu 76 shlib major version bump
*: revbump for icu downgrade
*: recursive bump for icu 76.1 shlib bump
postgresql: updated to 16.4, 15.8, 14.13, 13.16, 12.20 CVE-2024-7348: PostgreSQL relation replacement during pg_dump executes arbitrary SQL CVSS v3.1 Base Score: 8.8 Supported, Vulnerable Versions: 12 - 16. An attacker able to create and drop non-temporary objects could inject SQL code that would be executed by a concurrent pg_dump session with the privileges of the role running pg_dump (which is often a superuser). The attack involves replacing a sequence or similar object with a view or foreign table that will execute malicious code. To prevent this, introduce a new server parameter restrict_nonsystem_relation_kind that can disable expansion of non-builtin views as well as access to foreign tables, and teach pg_dump to set it when available. Note that the attack is prevented only if both pg_dump and the server it is dumping from are new enough to have this fix. Bug Fixes and Improvements Avoid incorrect results from "Merge Right Anti Join" plans, where if the inner relation is known to have unique join keys, the merge could misbehave when there are duplicated join keys in the outer relation. Prevent infinite loop in VACUUM. Fix partition pruning setup during ALTER TABLE DETACH ... PARTITION CONCURRENTLY. Fix behavior of stable functions that are used as an argument to a CALL statement. pg_sequence_last_value() now returns NULL instead of throwing an error when called on unlogged sequences on standby servers and on temporary sequences of other sessions. Fix parsing of ignored operators in websearch_to_tsquery(). Correctly check updatability of view columns targeted by INSERT ... DEFAULT. Lock owned sequences during ALTER TABLE ... SET LOGGED|UNLOGGED. Don't throw an error if a queued AFTER trigger no longer exists. Fix selection of an arbiter index for INSERT ... ON CONFLICT when the desired index has expressions or predicates, for example, through an updatable view. Refuse to modify a temporary table of another session with ALTER TABLE. Fix handling of extended statistics on expressions in CREATE TABLE ... LIKE STATISTICS. Fix failure to recalculate sub-queries generated from MIN() or MAX() aggregates. Disallow underscores in positional parameters. Avoid crashing when a JIT-inlined backend function throws an error. Fix handling of subtransactions of prepared transactions when starting a hot standby server. Prevent incorrect initialization of logical replication slots. Fix memory leak in the logical replication WAL sender when publishing changes to a partitioned table whose partitions have row types that are physically different from the table. Disable creation of stateful TLS session tickets by OpenSSL. Fix how PL/pgSQL handles integer ranges containing underscores (e.g., FOR i IN 1_001..1_002). Fix incompatibility between PL/Perl and Perl 5.40. Several fixes related to recursive PL/Python functions and triggers. Ensure that pg_restore -l reports dependent table of contents entries correctly. pg_stat_statements now passes a query ID for utility (non-SELECT/INSERT/UPDATE) statements that appears in SQL-language functions. Fix for postgres_fdw when mapping a foreign table to a nontrivial remote view. postgres_fdw no longer sends a FETCH FIRST WITH TIES clause to a remote server.
revbump after icu and protobuf updates
postgresql: updated to 16.1, 15.5, 14.10, 13.13, 12.17, and 11.22 Security Issues CVE-2023-5868: Memory disclosure in aggregate function calls CVE-2023-5869: Buffer overrun from integer overflow in array modification CVE-2023-5870: Role pg_signal_backend can signal certain superuser processes Bug Fixes and Improvements This update fixes over 55 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 16. Some of these issues may also affect other supported versions of PostgreSQL. Fix issue where GiST indexes had an incorrect behavior during a "page split" operation that could lead to incorrect results in subsequent index searches. Please reindex GiST indexes after installing this update. Fix issue where B-tree indexes would incorrectly de-duplicate interval columns. Please reindex any B-tree index that includes an interval column after installing this update. Provide more efficient indexing of date, timestamptz, and timestamp values in BRIN indexes when using a minmax_multi opsclass. While not required, we recommend reindexing BRIN indexes that include these data types after installing this update. Fix for bulk table insertion into partitioned tables. Fix for hash-partitioned tables with multiple partition keys during step generation and runtime pruning that could lead to crashes in some cases. Throw the correct error if pgrowlocks() is applied to a partitioned table Fix inconsistent rechecking of concurrently-updated rows during MERGE when using READ COMMITTED mode. Correctly identify the target table in an inherited UPDATE/DELETE/MERGE even when the parent table is excluded by constraints. Fix over-allocation of a constructed tsvector. Fix ALTER SUBSCRIPTION to apply changes in the run_as_owner option. Several fixes for COPY FROM, Several fixes for handling torn reads with pg_control. Fix "could not find pathkey item to sort" errors occurring while planning aggregate functions with ORDER BY or DISTINCT options. When track_io_timing is enabled, include the time taken by relation extension operations as write time. Track the dependencies of cached CALL statements, and re-plan them when needed. Treat out-of-memory failures as FATAL while reading WAL. Fix pg_dump to dump the new run_as_owner option of subscriptions. Fix pg_restore so that selective restores will include both table-level and column-level ACLs for selected tables. Add logic to pg_upgrade to check for use of obsolete data types abstime, reltime, and tinterval. Fix vacuumdb to have multiple -N switches actually exclude tables in multiple schemas. amcheck will no longer report interrupted page deletion as corruption. Fix btree_gin indexes on interval columns to properly return data when using the < and <= operators.
*: recursive bump for icu 74.1
*: bump for openssl 3
postgresql: updated to 15.3, 14.8, 13.11, 12.15, and 11.20 PostgreSQL 15.3, 14.8, 13.11, 12.15, and 11.20 Security Issues CVE-2023-2454: CREATE SCHEMA ... schema_element defeats protective search_path changes. CVE-2023-2455: Row security policies disregard user ID changes after inlining. Bug Fixes and Improvements This update fixes over 80 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 15. Some of these issues may also affect other supported versions of PostgreSQL. Included in this release: Several fixes for CREATE DATABASE when using the STRATEGY = WAL_LOG, including a potential corruption that could lose modifications to a template/source database. Fix crash with CREATE SCHEMA AUTHORIZATION. Several fixes for MERGE. Several fixes for triggers in partitioned tables. Disallow altering composite types that are stored in indexes. Ensure that COPY TO from a parent table with row-level security enabled does not copy any rows from child tables. Adjust text-search-related character classification logic to correctly detect whether the prevailing locale is C when the default collation of a database uses the ICU provider. Re-allow exponential notation in ISO-8601 interval fields. Improve error reporting for various invalid JSON string literals. Fix data corruption due to vacuum_defer_cleanup_age being larger than the current 64-bit xid. Several fixes for the query parser and planner, including better detection of improperly-nested aggregates. Fix partition pruning bug with the boolean IS NOT TRUE and IS NOT FALSE conditions. Prior to this, NULL partitions were accidentally pruned. Fix memory leak in memoize plan execution. Fix buffer refcount leak on foreign tables using partitions when performing batched inserts. Restore support for sub-millisecond vacuum_cost_delay settings. Several fixes for views and rules. Avoid unnecessary work while scanning a multi-column BRIN index with multiple scan keys. Ignore dropped columns and generated columns during logical replication of an UPDATE or DELETE action. Several fixes for naming and availability of wait events. Support RSA-PSS certificates with SCRAM-SHA-256 channel binding. This feature requires building with OpenSSL 1.1.1 or newer. Avoid race condition with process ID tracking on Windows. Fix memory leak within a session for PL/pgSQL DO blocks that use cast expressions. Tighten array dimensionality checks from PL/Perl and PL/Python when converting list structures to multi-dimensional SQL arrays. Fix pg_dump so that partitioned tables that are hash-partitioned on an enumerated type column can be restored successfully. Fix for pg_trgm where an unsatisfiable regular expression could lead to a crash when using a GiST or GIN index. Limit memory usage of pg_get_wal_records_info() in pg_walinspect.
revbump after textproc/icu update
postgresql: updated to 15.2, 14.7, 13.10, 12.14, and 11.19 Security Issues CVE-2022-41862: Client memory disclosure when connecting, with Kerberos, to modified server. Versions Affected: 12 - 15. A modified, unauthenticated server or an unauthenticated man-in-the-middle can send an unterminated string during the establishment of Kerberos transport encryption. When a libpq client application has a Kerberos credential cache and doesn't explicitly disable option gssencmode, a server can cause libpq to over-read and report an error message containing uninitialized bytes from and following its receive buffer. If libpq's caller somehow makes that message accessible to the attacker, this achieves a disclosure of the over-read bytes. We have not confirmed or ruled out viability of attacks that arrange for a crash or for presence of notable, confidential information in disclosed bytes. The PostgreSQL project thanks Jacob Champion for reporting this problem. Bug Fixes and Improvements This update fixes over 60 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 15. Some of these issues may also affect other supported versions of PostgreSQL. Included in this release: Fix for partitioned tables to correctly update GENERATED columns in child tables if the GENERATED column does not exist in the parent table or the child generated column has different dependencies than the parent. Several fixes for the MERGE command. Allow a WITH RECURSIVE ... CYCLE query to access its SET output column. Fix an issue with bulk insertions on foreign tables that could lead to logical inconsistencies, for example, a BEFORE ROW trigger may not process rows that should be available. Reject uses of undefined variables in jsonpath existence checks. Fix for jsonb subscripting that come directly from a text column in a table. Honor updated values of checkpoint_completion_target on reload. Log the correct ending timestamp in recovery_target_xid mode. Fix issue to allow column lists longer than 100 when using logical replication. Prevent "wrong tuple length" failure at the end of VACUUM. Avoid an immediate commit after ANALYZE when using query pipelining. Several fixes to the query planner, including one that provides more opportunities for using memoization with partitionwise joins. Fix for statistics collection to correctly handle when a relation changes type (e.g. a table is converted to a view). Ensure full text search queries can be cancelled while performing phrase matches. Fix deadlock between DROP DATABASE and logical replication worker process. Fix small session-lifespan memory leak when CREATE SUBSCRIPTION fails its connection attempt. Performance improvement for replicas with hot_standby enabled that are processing SELECT queries. Several fixes for logical decoding that improve its stability and bloat handling. Fix the default logical replication plug-in, pgoutput, to not send columns that are not listed in a table's replication column list. Fix possible corruption of very large tablespace map files in pg_basebackup. Remove a harmless warning from pg_dump in --if-exists mode when the public schema has a non-default owner. Fix the psql commands \sf and \ef to handle SQL-language functions that have SQL-standard function bodies (i.e. BEGIN ATOMIC). Fix tab completion of ALTER FUNCTION/PROCEDURE/ROUTINE ... SET SCHEMA. Update the pageinspect extension to mark its disk-accessing functions as PARALLEL RESTRICTED. Fix the seg extension to not crash or print garbage if an input number has more than 127 digits.
massive revision bump after textproc/icu update
postgresql: updated to 14.5, 13.8, 12.12, 11.17, 10.22 This update fixes over 40 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 14. Some of these issues may also affect other supported versions of PostgreSQL. Included in this release: Fix replay of CREATE DATABASE write-ahead log (WAL) records on standby servers when encountering a missing tablespace directory. Add support for tablespaces that are plain directories instead of symbolic links to other directories. Fix permission checks in CREATE INDEX to use the user's permissions. This fixes broken dump/restore scenarios that relied on the behavior prior to the fix for CVE-2022-1552. In the extended query protocol, force an immediate commit after CREATE DATABASE and other commands that can't run in a transaction block. Fix a race condition around checking transaction visibility that was more likely to happen when using synchronous replication. Fix incorrect permission-checking code for extended statistics. Fix extended statistics machinery to handle most common value (MCV)-type statistics on boolean-valued expressions. Avoid planner core dump with constant = ANY(array) clauses when there are MCV-type extended statistics on the array variable. Allow cancellation of ANALYZE while it is computing extended statistics. Fix ALTER TABLE ... ENABLE/DISABLE TRIGGER to handle recursion for triggers on partitioned tables. Reject ROW() expressions and functions in FROM that have more than 1600 columns. Fix memory leak in logical replication subscribers. Fix checks in logical replication of replica identity when the target table is partitioned. Arrange to clean up after commit-time errors within SPI_commit(), rather than expecting callers to do that. This includes a fix for the same scenario in PL/Python, which had reported crashes on Python 3.11 and memory leaks on older versions of Python 3. Improve handling in libpq of idle states in pipeline mode. In the psql \watch command, echo a newline after cancellation with control-C. Fix pg_upgrade to detect non-upgradable usages of functions accepting anyarray parameters. Several postgres_fdw fixes, including prevention of batch insertions when there are WITH CHECK OPTION constraints present.
*: recursive bump for perl 5.36
postgresqlNN: updated to 14.3, 13.7, 12.11, 11.16, and 10.21 The PostgreSQL Global Development Group has released an update to all supported versions of PostgreSQL, including 14.3, 13.7, 12.11, 11.16, and 10.21. This release closes one security vulnerability and fixes over 50 bugs reported over the last three months. CVE-2022-1552: Autovacuum, REINDEX, and others omit "security restricted operation" sandbox. Versions Affected: 10 - 14. The security team typically does not test unsupported versions, but this problem is quite old. Autovacuum, REINDEX, CREATE INDEX, REFRESH MATERIALIZED VIEW, CLUSTER, and pg_amcheck made incomplete efforts to operate safely when a privileged user is maintaining another user's objects. Those commands activated relevant protections too late or not at all. An attacker having permission to create non-temp objects in at least one schema could execute arbitrary SQL functions under a superuser identity. While promptly updating PostgreSQL is the best remediation for most users, a user unable to do that can work around the vulnerability by disabling autovacuum, not manually running the above commands, and not restoring from output of the pg_dump command. Performance may degrade quickly under this workaround. VACUUM is safe, and all commands are fine when a trusted user owns the target object. Bug Fixes and Improvements This update fixes over 50 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 14. Some of these issues may also affect other supported versions of PostgreSQL. Included in this release: Fix issue that could lead to corruption of GiST indexes on ltree columns. After upgrading, you will need to reindex any GiST indexes on ltree columns. Column names in tuples produced by a whole-row variable (e.g. tbl.*) outside of a top-level of a SELECT list are now always associated with those of the associated named composite type, if there is one. The release notes detail a workaround if you depend on the previous behavior. Fix incorrect rounding when extracting epoch values from interval types. Prevent issues with calling pg_stat_get_replication_slot(NULL). Fix incorrect output for types timestamptz and timetz in table_to_xmlschema(). Fix errors related to a planner issue that affected asynchronous remote queries. Fix planner failure if a query using SEARCH or CYCLE features contains a duplicate common-table expression (WITH) name. Fix ALTER FUNCTION to support changing a function's parallelism property and its SET-variable list in the same command. Fix incorrect sorting of table rows when using CLUSTER on an index whose leading key is an expression. Prevent data loss if a system crash occurs shortly after a sorted GiST index build. Fix risk of deadlock failures while dropping a partitioned index. Fix race condition between DROP TABLESPACE and checkpointing that could fail to remove all dead files from the tablespace directory. Fix potential issue in crash recovery after a TRUNCATE command that overlaps with a checkpoint. Re-allow _ as the first character in a custom configuration parameter name. Fix PANIC: xlog flush request is not satisfied failure during standby promotion when there is a missing WAL continuation record. Fix possibility of self-deadlock in hot standby conflict handling. Ensure that logical replication apply workers can be restarted when the server is near the max_sync_workers_per_subscription limit. Disallow execution of SPI functions during PL/Perl function compilation. libpq now accepts root-owned SSL private key files, which matches the rules the server has used since the 9.6 release. Re-allow database.schema.table patterns in psql, pg_dump, and pg_amcheck. Several fixes for pageinspect to improve overall stability. Disable batch insertion in postgres_fdw when BEFORE INSERT ... FOR EACH ROW triggers exist on the foreign table. Update JIT code to work with LLVM 14.
Add lz4 to postgresql14 options (enabled by default) Bump PKGREVISION on all including packages just to be on the safe side
revbump for textproc/icu update
postgresql1N: updated to 14.2, 13.6, 12.10, 11.15, and 10.20 PostgreSQL 14.2, 13.6, 12.10, 11.15, and 10.20 Released! This update fixes over 55 bugs that were reported in the last several months. The issues listed below affect PostgreSQL 14. Some of these issues may also affect other supported versions of PostgreSQL. Included in this release: Fix for a low probability scenario of index corruption when a HOT (heap-only tuple) chain changes state during VACUUM. Encountering this issue is unlikely, but if you are concerned, please consider reindexing. Fix for using REINDEX CONCURRENTLY on TOAST table indexes to prevent corruption. You can fix any TOAST indexes by reindexing them again. The psql \password command now defaults to setting the password for the role defined by CURRENT_USER. Additionally, the role name is now included in the password prompt. Build extended statistics for partitioned tables. If you previously added extended statistics to a partitioned table, you should run ANALYZE on those tables. As autovacuum currently does not process partitioned tables, you must periodically run ANALYZE on any partitioned tables to update their statistics. Fix crash with ALTER STATISTICS when the statistics object is dropped concurrently. Fix crash with multiranges when extracting variable-length data types. Several fixes to the query planner that lead to incorrect query results. Several fixes for query plan memoization. Fix startup of a physical replica to tolerate transaction ID wraparound. When using logical replication, avoid duplicate transmission of a partitioned table's data when the publication includes both the child and parent tables. Disallow altering data type of a partitioned table's columns when the partitioned table's row type is used as a composite type elsewhere. Disallow ALTER TABLE ... DROP NOT NULL for a column that is part of a replica identity index. Several fixes for caching that correct logical replication behavior and improve performance. Fix memory leak when updating expression indexes. Avoid leaking memory during REASSIGN OWNED BY operations that reassign ownership of many objects. Fix display of whole-row variables appearing in INSERT ... VALUES rules. Fix race condition that could lead to failure to localize error messages that are reported early in multi-threaded use of libpq or ecpglib. Fix psql \d command for identifying parent triggers. Fix failures on Windows when using the terminal as data source or destination. This affected the psql \copy command and using pg_recvlogical with -f -. Fix the pg_dump --inserts and --column-inserts modes to handle tables that contain both generated and dropped columns. Fix edge cases in how postgres_fdw handles asynchronous queries. These errors could lead to crashes or incorrect results when attempting to run parallel scans of foreign tables. For the full list of changes available, please review the release notes.
revbump for icu and libffi
postgresql14: added version 14.0 PostgreSQL 14 contains many new features and enhancements, including: Stored procedures can now return data via OUT parameters. The SQL-standard SEARCH and CYCLE options for common table expressions have been implemented. Subscripting can now be applied to any data type for which it is a useful notation, not only arrays. In this release, the jsonb and hstore types have gained subscripting operators. Range types have been extended by adding multiranges, allowing representation of noncontiguous data ranges. Numerous performance improvements have been made for parallel queries, heavily-concurrent workloads, partitioned tables, logical replication, and vacuuming. B-tree index updates are managed more efficiently, reducing index bloat. VACUUM automatically becomes more aggressive, and skips inessential cleanup, if the database starts to approach a transaction ID wraparound condition. Extended statistics can now be collected on expressions, allowing better planning results for complex queries. libpq now has the ability to pipeline multiple queries, which can boost throughput over high-latency connections.