Release Date: 2024-02-21
This release is based on PostgreSQL 14.11 and Postgres Pro Enterprise 14.10.1. All changes inherited from PostgreSQL 14.11 are listed in PostgreSQL 14.11 Release Notes. As compared with Postgres Pro Enterprise 14.10.1, this version also provides the following changes:
Added configuration parameters to enable getting information on crashes of a backend. The crash_info parameter turns on this functionality, while crash_info_dump and crash_info_location specify the contents and location of crash information files, respectively.
Added a new configuration parameter cfs_gc_respond_time, which allows specifying the time interval that CFS waits for the lock to be released from a file processed by garbage collector before writing a warning to the log.
Optimized memory consumption during selectivity estimation for each array element as compared to vanilla PostgreSQL.
Updated the default values of
default_toast_compression and
wal_compression to lz4.
It speeds up WAL and TOAST processing and reduces disk
space utilization.
Fixed incorrect HOT chain conversion from 32-bit to 64-bit after upgrading Postgres Pro Enterprise using pg_upgrade. Previously, it resulted in the vacuum infinite loop. The number of vacuum retries is now limited to one per tuple. When exceeded, an error is written to the log.
Fixed segmentation fault that could occur when executing queries or
using the planner with pg_pathman running.
pg_pathman did not pay attention to new
fields in the RangeTblEntry (RTE)
structure, which were not correctly initialized. By making a regular
copy of a parent RTE, pg_pathman also
copied pointers to parent equivalence classes or their members.
This inconsistency affected query planning and caused the error.
Fixed the race condition between the autovacuum worker and backend processes when clearing orphaned tables, which could manifest itself in “cache lookup failed for relation” errors. Now autovacuum locks the namespaces when clearing orphaned tables.
Fixed an issue that could occur during installation of a
Postgres Pro server on Debian-based systems
included in a domain with the postgres user.
Fixed the output of pg-setup, which erroneously
displayed the locale from the LANG environment variable
at cluster initialization. Now the message about locale is not
displayed at this stage.
Fixed an issue that could occur when a CFS garbage collection worker process failed. Because the worker did not restart automatically, the server restart was needed to continue. Now the worker gets restarted after 10 seconds of its unavailability.
Fixed the retention of deleted files in CFS
by reducing the lifetime of temporary CFS files that occur during the
garbage collector work or during the VACUUM FULL
operation.
Ended support for Rosa Enterprise Linux Server 7.
Ended support for ROSA COBALT (server edition) based on Rosa platform 7.
Upgraded apache_age to version 1.5.0.
Upgraded orafce to version 4.9.2.
Upgraded pg_filedump to version 16.1.
Upgraded pg_probackup to version 2.7.2 Enterprise, which provides optimizations and bug fixes. Notable changes are as follows:
Optimized the use of memory during backups in the remote mode.
Fixed an issue that occurred during an incremental backup when a table that was not yet copied got removed from CFS.
Fixed the order of processing WAL files by the
archive-push command when the number of WAL
files exceeds the specified --batch-size.
Fixed an error “WAL segment is absent” that could occur when the size of a WAL record being logged exceeded the size of a WAL segment.
Fixed a bug that occurred when creating a versioned bucket in VK Cloud.
Fixed segmentation fault that occurred during execution of the
merge command in S3.
Upgraded pg_repack to version 1.5.0.
Upgraded pg_variables, which now provides iterator functionality for any collections, as well as functions to work with general collection variables. These functions allow accessing collection elements by a key that can have either integer or text type. These enhancements facilitate migration of Oracle code that processes collections.
Upgraded pg_proaudit to version 2.0, which provides the following major changes and enhancements:
Added new functions pg_proaudit_set_rule
and pg_proaudit_remove_rule that allow
creating and removing logging rules, respectively. These
functions replaced pg_proaudit_set_object,
pg_proaudit_set_role,
pg_proaudit_reset_object,
and pg_proaudit_reset_role.
Implemented the ability to log groups of events by
specifying the respective value in the
event_type argument.
Added the comment column in the
pg_proaudit_settings
view that displays the comment to describe the created
logging rule.
Implemented the ability to log security events related
to objects of the PREPARED STATEMENT
type as well as events of the DEALLOCATE,
EXECUTE, and PREPARE types.
Fixed an issue with incorrect logging of the
CREATE DATABASE,
CREATE GROUP, CREATE ROLE,
CREATE TABLESPACE, and
CREATE USER security events.
Previously, these events were logged as SUCCESS
after the syntax check and before the command execution itself.
Now SUCCESS is written in the log when
the command execution finishes, and if the command fails,
it is marked as FAILURE.
Upgraded pgpro_stats to version 1.7, which provides optimizations and bug fixes:
Similarly to a pg_stat_statements fix, changed pgpro_stats to read its “query texts” file in units of at most 1GB. Such large query text files are very unusual, but if they do occur, the previous coding would fail on Windows 64 (which rejects individual read requests of more than 2GB).
Implemented backward compatibility of
pgpro_stats_statements and
pgpro_stats_totals functions. Now a newer
version of the pgpro_stats shared
library can be safely used with old declarations of SQL functions.
Previously such cases caused a server crash.
Fixed an issue that prevented output of database vacuuming
statistics in the
pgpro_stats_vacuum_database
view.
Upgraded pgpro_pwr to version 4.4, which supports pgpro_stats 1.7, as well as adds more interactive features and substring-based filtering to the report.
Upgraded the PLV8 extension to version 3.2.2.
If you are upgrading from a Postgres Pro Enterprise release based on the same PostgreSQL major version, it is enough to install the new version into your current installation directory.
If you are migrating to the current major version of Postgres Pro Enterprise
using pg_upgrade, and you want to keep the existing visibility map representation
in pageinspect, you should run the VACUUM command before the upgrade.
It is strongly recommended to avoid migrating a cluster with 32-bit transaction IDs to Postgres Pro Enterprise versions below 14.9.2, if there are multitransactions in your database, as it may cause data corruption.
When upgrading to Postgres Pro Enterprise versions starting with 14.8.1, make sure to upgrade pg_probackup Enterprise to version 2.6.4 or higher since lower versions are incompatible with these Postgres Pro Enterprise versions.
To migrate from PostgreSQL, as well as Postgres Pro Standard or Postgres Pro Enterprise based on a previous PostgreSQL major version, see the migration instructions for version 14.