E.1. Postgres Pro Enterprise 14.24.1

Date: 2026-09-17

E.1.1. Overview

Important

The final release of Postgres Pro 14 is scheduled for November 2026. No further updates (including CVE patches and bug fixes) will be provided for this version as of December 1, 2026. If you are using version 14, we recommend that you upgrade to the latest major version no later than November 30, 2026.

This release is based on PostgreSQL 14.24 and Postgres Pro Enterprise 14.24.0. All changes inherited from PostgreSQL 14.24 are listed in PostgreSQL 14.24 Release Notes. As compared with Postgres Pro Enterprise 14.24.0, this version also provides the following changes:

  • Introduced the following changes to autopreparing:

    • Optimized autopreparing for queries with a large number of parameters.

    • Fixed an issue with incorrect calculation of the memory limit for autopreparing.

  • Fixed a deadlock issue that could occur under write-heavy workloads and was caused by the CFS file lock not being released by server processes. The issue could lead to both primary and standby server hanging.

  • Fixed an issue with autonomous transactions that could cause incorrect index creation after executing the CREATE INDEX or REINDEX CONCURRENTLY command. Now when these commands are executed, Postgres Pro waits for the end of the autonomous transaction and all its parent transactions.

  • Fixed excessive memory usage that could occur in subtransactions when working with the in_memory extension.

  • Returned the vanilla implementation of the hba_file configuration parameter, as the previous fix interfered with Patroni and caused server startup failures.

  • Inherited the PostgreSQL fix that prevents truncation of CLOG that is still needed by unread NOTIFY messages. This fix prevents could not access status of transaction errors when a backend is slow to absorb NOTIFY messages.

  • Fixed recovery failures caused by missing intermediate relation segments in backups taken with pg_basebackup. Gaps between the segments are now detected and filled during the recovery process.

  • Fixed an issue that could cause the pg_pathman extension with the enabled pg_pathman.enable_partitionrouter parameter to fail when trying to execute the UPDATE ... FROM command using common table expressions.

  • Fixed an issue in postgres_fdw where UPDATE and DELETE commands on a partitioned table could select tuples for processing only by their IDs without taking into account a partition to which the tuples belong.

  • Updated aqo to fix an issue with statistics collection in the intelligent mode, which caused incorrect aqo learning.

  • Upgraded mamonsu to version 3.5.17.

  • Updated multimaster to provide the following enhancements:

    • Implemented the ability to skip replication of DDL commands targeting temporary objects. Temporary objects are not replicated to other nodes which helps to accelerate operation with temporary objects. The new logic is available with the version 2 of the DDL replication protocol. You can switch to this version using the new multimaster.ddl_replication_protocol_version configuration parameter. Use the protocol version 2 only after upgrading multimaster to the latest version on all nodes of your cluster.

  • Upgraded orafce to version 4.16.7.

  • Upgraded pg_proaudit to version 2.1 to provide the following enhancements and bug fixes:

    • Added the exclude_role_name parameter to the pg_proaudit_set_rule(), pg_proaudit_remove_rule(), and pg_proaudit_reload() functions, which allows excluding specific roles from logging. This is useful for filtering out actions of technical roles that would otherwise make the audit log overly verbose.

    • Added the pg_proaudit.csv_split_messages configuration parameter that controls whether security events in CSV and syslog output are written as a single line or multiple lines. When disabled, each security event is written on a single line, which simplifies log analysis and parsing.

    • Fixed an issue with unreadable characters in CSV, CEF, and syslog log entries when using a database with a non-UTF-8 encoding. All string fields in the log output are now converted to UTF-8 regardless of the database encoding.

  • Upgraded pg_probackup to version 2.8.15 Enterprise to provide the following improvements and bug fixes:

    • Added multithreading support for the delete command via the j/--threads option. Backup deletion according to the retention policy and WAL archive cleanup are now executed in parallel.

    • Fixed an issue where S3 operations that returned retryable status codes were erroneously reported as successful. Now an error is returned, and any unrecognized server response body is written to the log.

    • Fixed infinite looping on corrupted backups by adding loop detection. ID order is now validated when reading the backup catalog or searching for the parent full backup.

    • Fixed handling of incorrect S3 XML responses, eliminating crashes on empty documents and memory leaks.

    • Optimized Postgres Pro port validation. Instead of reading from postgresql.conf and postgresql.auto.conf, which may contain outdated information, the port is now read from the postmaster.pid file of the running server. If the instance port does not match the configuration, pg_probackup issues a warning.

    • Fixed the checkdb and catchup command termination that could occur when an instance was specified without setting the backup catalog path via the -B/--backup-path or the BACKUP_PATH environment variable. Now a clear error message is displayed.

    • Improved diagnostics of remote connection errors. Previously, specifying an incorrect port that was already in use would cause the process to terminate without an error. Now, the reason for termination is displayed, along with a recommendation to check connection parameters.

    • Fixed a memory leak that could occur when reading the server configuration files.

    • Eliminated a potential null pointer dereference by adding out-of-memory handling when parsing the recovery target name in WAL.

    • Added the --write-rate-limit option to the catchup command help output. In other command descriptions, this option's argument, baudrate, is renamed to bitrate.

  • Upgraded pgpro_pwr to version 4.15, which provides enhancements and bug fixes. Notable changes are as follows:

    • Added support for statistics of the PostgreSQL 19 core.

    • Added support for pg_stat_statements 1.13.

    • Added support for pg_stat_kcache 2.3.2.

    • Added new report sections and fields.

    • Fixed the missing integrity constraint, which prevented the cascade deletion of subsample data due to retention policy and thus caused remaining of now-redundant rows in the session statistics table.

  • Upgraded pgpro_scheduler to version 2.14 to fix an issue with the clean_log() and clean_at_jobs_done() functions, which failed with an error when called after SET ROLE to a superuser role. The redundant session_user check is now removed, so the functions work as expected.

  • Upgraded pgpro_stats to version 1.11 to provide the following enhancements and bug fixes:

    • Added the pgpro_stats.enable_warnings configuration parameter that adds a warning to the plan field of the pgpro_stats_statements view if the plan was executed with partition pruning.

    • Fixed a plan normalization issue that could be observed for queries executed using the EXPLAIN EXECUTE command by adding a hook for saving information needed for the plan normalization. As a result, sensitive information is no longer exposed in query plans displayed in pgpro_stats views and pgpro_pwr reports.

  • Upgraded pg_wait_sampling to version 1.1.1 to extend its wait event statistics functionality, previously available only in pgpro_stats, and to provide the following enhancements and bug fixes:

    • Added the pg_wait_sampling.history_dimensions and pg_wait_sampling.profile_dimensions configuration parameters that allow you to customize the set of dimensions recorded in the history and the profile.

    • Extended the pg_wait_sampling_current, pg_wait_sampling_history, and pg_wait_sampling_profile views with additional wait event dimensions.

    • Added the pg_wait_sampling_statements view that provides wait event statistics grouped by query and plan identifiers.

    • Added the pg_wait_sampling_objects view that provides wait event statistics for configurable dimensions, such as database, user, client address, application, backend, or session.

    • Fixed an issue that caused queries to pg_wait_sampling_profile to hang when the collector process stopped. Hung queries could not be cancelled normally, and the cluster required an emergency restart. The collector now restarts automatically, and queries return an error when the collector is unavailable.

    • Fixed handling of the pg_wait_sampling.profile_period configuration parameter, which was previously ignored in the collector's timing calculation. Sampling interval accuracy has also been improved.

  • Updated rum to fix a crash that could occur during a RUM index scan if a concurrent VACUUM removed all items from a posting tree leaf page.

E.1.2. Migration to Version 14.24.1

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.

ABI versions may change between minor releases of Postgres Pro. If this is the case, and you see the ABI mismatch error when trying to run your extension, make sure to install a new version of the extension supplied with a new release of Postgres Pro, or recompile your third-party extension to be able to use it with the current version of Postgres Pro.

When upgrading your high-availability cluster from Postgres Pro Enterprise versions 14.12.x or lower, first disable automatic failover if it was enabled and upgrade all the standby servers, then upgrade the primary server, promote a standby, and restart the former primary (possibly with pg_rewind).

If you take backups using pg_probackup and you have previously upgraded it to version 2.8.0 Enterprise or 2.8.1 Enterprise, make sure to upgrade it to version 2.8.2 Enterprise or higher and retake a full backup after upgrade, since backups taken using those versions might be corrupted. If you suspect that your backups taken with versions 2.8.0 or 2.8.1 may be corrupted, you can validate them using version 2.8.2.

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.

Starting from Postgres Pro Enterprise 14.10.1, the privileges of CREATEROLE are restricted, and modification of other roles requires the role requesting the change to have the ADMIN OPTION permission.

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.

FAQ