Date: 2026-06-11
This release is based on PostgreSQL 17.10 and Postgres Pro Standard 17.9.1. All improvements inherited from PostgreSQL 17.10 are listed in PostgreSQL 17.10 Release Notes. Other major changes and enhancements are as follows:
Added the log_parameter_types configuration
parameter that controls whether each bind parameter value for a
prepared statement in log messages is prefixed with its data
type. For example, [integer] $1 = '42'.
Optimized the mechanism for join selectivity estimation to work with large MCV lists (most common values). Its algorithmic complexity was quadratic and caused poor performance while working with large target values for table column statistics. This optimization can be useful for 1C workloads.
Restricted changes to the hba_file configuration parameter in the certified edition of Postgres Pro Standard. For enhanced security, it is also recommended to use pg_integrity_check, which automatically verifies the integrity of critical files before server startup.
Added build IDs of executables and shared libraries to crash_info output files.
Improved planning for self-comparison conditions, such as
col = col. Previously, these constructions
could lead to incorrect cardinality estimation and cause a
sequential scan to be chosen instead of a more optimal plan. Such
strict comparisons are now transformed into an equivalent
IS NOT NULL check when it is safe to do so,
resulting in better plan choices and more accurate cardinality
estimation.
Fixed an issue that could cause a backend to stop when calling the pg_diagdump function with the disabled crash_info configuration parameter. Now an error message is returned.
Fixed an issue with restoring a cluster using
pg_dump/pg_dumpall.
Previously,
pg_dump/pg_dumpall
could generate an invalid CREATE DATABASE command
with a duplicated locale_provider parameter.
Now, the parameter is produced only once, avoiding restore and upgrade
errors.
Fixed an issue with estimating the number of join rows when the
enable_compound_index_stats parameter is
set to on.
Removed the functionality of the optimizer for adding
Index Only Scan plan nodes below Append
nodes that are generated for OR clauses if the
enable_appendorpath parameter is set to on.
This functionality could cause incorrect query execution plans and
resulting data.
Added the pgbouncer_exporter utility to export Prometheus metrics for pgbouncer.
Added the pg_hint_plan module that allows managing query execution plans by providing hints to the planner. Previously, this module was only available with Postgres Pro Enterprise.
Added the pgpro_validate utility to check data integrity of a Postgres Pro instance.
Upgraded aqo to version 3.2, which provides the following enhancements and bug fixes:
Added the new aqo_storage_usage function that allows you to get current and maximum sizes of aqo storage and allocated dynamic shared memory.
Optimized the internal structure of the
aqo_data storage, as well as improved the
mechanisms for allocating dynamic shared memory and lock usage
when working with storage data. These enhancements allowed
fixing an issue with updating aqo_data
storage that was caused by exclusive locks on the underlying
hash table and resulted in constant growing of idle
in transaction sessions and unstable
aqo operation.
Fixed a segmentation fault that could occur after aborting a nested autonomous transaction for which aqo was used. Now aqo checks the nesting level of autonomous transactions and does not clear its local cache when aborting nested transactions.
Upgraded the BiHA solution to provide the following features, optimizations, and bug fixes:
Upgraded biha to version 1.8.
Stabilized the multi-level geographical distribution and disaster resilience functionality. It is no longer considered experimental.
Added the --username option of the bihactl utility. You can use the new option in the following cases:
When you initialize a BiHA cluster from scratch
and want to set the bootstrap superuser name other than postgres.
When you convert an existing node where the bootstrap superuser
name is not postgres.
Implemented a set of optimizations and fixes for the multi-level geographical distribution and disaster resilience functionality connected with replication, manual leader nomination, and autorewind.
Implemented a set of internal optimizations and fixes for the cascading replication functionality to improve its reliability.
Added the biha.ssl_certificate and biha.ssl_private_key configuration parameters. You can use these parameters to change paths to the SSL public certificate and private key used to secure service connections between nodes of the initialized BiHA cluster. For more information, refer to Managing SSL for Service Connections.
Added the biha_replication_user role presence
check when converting a node using
bihactl cluster init --convert.
Enhanced the bihactl error message clarity when executing the bihactl node add --convert-standby command with an empty --pgdata value.
Fixed a bug where BIHA_CLUSTER_MANAGEMENT_ROLE had
no privileges to execute BiHA functions after update
of the biha extension version during the cluster upgrade.
Fixed a bug where failover was not executed because the LSN of the referee in the
referee mode was considered
during elections if it was higher than the follower's LSN.
Fixed an issue where the “[BiHA BC] NC config list getter failed”
warning frequently appeared in the log when calling the biha.config function
or querying the biha.status_v view.
Fixed a bug where an attempt to remove a running node from the cluster caused a process termination on a node being removed.
Fixed a bug where an attempt to delete a segment caused a process termination.
Fixed a bug where the leader could not be
manually set using the biha.set_leader function if
there was a node in the NODE_ERROR state in the cluster.
Fixed an issue of the pg_rewind tool where
a BiHA cluster node failed to be recovered
correctly in the single user mode if the node was stopped in
the immediate mode.
Fixed incorrect behavior of the --use-leader
option of bihactl where the utility accessed
all cluster nodes instead of the leader only.
Fixed a bug where adding a follower using pg_probackup failed.
Fixed a bug where the password_encryption
value was not considered by bihactl when
creating the pg_hba.biha.conf file.
Upgraded the ODBC driver to version 18.00.0001.
Upgraded orafce to version 4.16.5.
Upgraded pg_query_state to fix an issue that could cause the module to hang while waiting for the response from the backend that executes the investigated query.
Upgraded pg_proaudit to provide the following enhancements and bug fixes:
Added the pg_proaudit.log_file_mode configuration parameter that specifies permissions for new event log files created by pg_proaudit. Note that regardless of this parameter, the server owner always retains access to the log files.
Added a new event field for all types of events logged in
CSV files and syslog:
IP address of the event source. Previously, this field was
displayed only for AUTHENTICATE events logged
in the CEF format.
Extended the use of the pg_proaudit.log_rows configuration parameter that enables or disables logging of the number of rows affected by an SQL command. Now the number of affected rows is written for all formats of logged events.
Added validation of the unique ID of the event (UUID) to avoid invalid memory access.
Fixed an issue with incorrect filling of the dst
field for events logged in CEF format.
Fixed an issue with excessive memory usage when processing
DISCONNECT events. Previously, a hash table
sized proportionally to max_connections
caused unnecessary memory consumption when the value was large.
The data is now stored more efficiently.
Fixed a parser error in pg_proaudit. Previously, pg_proaudit left some characters unescaped when logging events in the CEF format. Now, symbols are escaped correctly in accordance with the CEF specification.
Upgraded pg_probackup to version 2.8.14 to provide the following improvements and bug fixes:
Added support for absolute paths in the
--wal-file-path option.
Fixed incremental backups in PAGE mode with the
--stream option. With this combination of parameters,
WAL files are now correctly saved both inside the backup and in a
separate archive.
Upgraded the pgpro_bindump module to include the following improvements and bug fixes:
Added support for the --exclude-path option
to exclude specific files or directories from backup in
PRO mode.
Optimized the backup performance by excluding temporary files
of the postmaster process.
Fixed an incorrect package name in the error message that appeared
when the pgpro_bindump failed to load
libpb3_encoder.so. The message now correctly
recommends installing the libpb3-encoder package
instead of the erroneous libpgprobackup3.
Upgraded pgpro_datactl to version 1.5.
Upgraded pgpro_pwr to version 4.13, which adds support for cluster-wide Postgres Pro Shardman statistics and provides optimizations and bug fixes.
Upgraded pgpro_stats
to fix excessive memory consumption by a query that used
pgpro_stats with
pgpro_stats.track set to all.
With this setting, a function that assigned plan IDs was called
multiple times, and the accumulated memory was not optimally released.
Upgraded pgpro_tune to provide the following enhancements:
Improved the utility output to include the used preset and display the correct format of date and time when configuration parameters were applied.
Updated presets to improve performance of Postgres Pro.
Fixed an issue where the shared_buffers configuration parameter was calculated incorrectly when using initdb with the enabled pgpro_tune extension. This issue could cause the command to run slower.
Upgraded pg_variables to support Postgres Pro/ PostgreSQL 18.
Upgraded pgvector to version 0.8.2.
Upgraded rum to
improve performance of RUM index search using the
index operators
<=| and |=> when the
order_by_attach index storage
parameter is set to true.
If you are upgrading from Postgres Pro Standard based on the same PostgreSQL major version, it is enough to install the new version into your current installation directory.
To upgrade your BiHA cluster from Postgres Pro Standard 17.9 to Postgres Pro Standard 17.10, refer to the upgrade and migration instructions for BiHA.
If you used a previous version of aqo and need to upgrade it, after the upgrade of the primary server, the standby servers may have a different aqo version.
To avoid any related issues, disable aqo
by setting aqo.enable and aqo.wal_rw
to off first on the primary server and then on the
standby servers. After the upgrade completes successfully, re-enable
aqo by setting aqo.wal_rw
and aqo.enable to on first on the
standby servers and then on the primary server.
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.
To migrate from PostgreSQL or a Postgres Pro Standard release based on a previous PostgreSQL major version, see the instructions in Postgres Pro Standard 17.0.1 Release Notes.