Release Date: 2025-11-12
This release is based on PostgreSQL 18 and includes all the new features introduced in PostgreSQL 18. For their detailed description, see PostgreSQL 18 Release Notes. Other major changes and enhancements are as follows:
Added the new OLD_PASSWORD_TIME and
OLD_PASSWORD_MAX parameters for the CREATE PROFILE
and ALTER PROFILE
commands. These parameters are required to enable authentication with
the previous password. OLD_PASSWORD_TIME specifies
for how long the previous password can be used for authentication
alongside the new one. OLD_PASSWORD_MAX specifies
the number of attempts to authenticate with the previous
password before it is locked. The oid
and passloginattempts fields were added to
the pg_role_password
catalog, and the pfloldpasswordtime
and pfloldpasswordmax fields were added to
the pg_profile
catalog to display information related to previous passwords.
Implemented password masking in the server log by default to protect sensitive data from being revealed.
Added the new compute_plan_id configuration
parameter that allows enabling and disabling in-core computation of
query plan identifiers. Also added the plan_id
field to the
pg_stat_activity
view to display plan identifiers.
Added the new extra_query_transformations
configuration parameter that controls additional transformations of
ANY correlated subqueries into
LATERAL joins. This parameter replaces the
enable_any_to_lateral_transformation and
enable_extra_transformations parameters that
were removed.
Added new values of the
PGPRO_TUNE
environment variable used by initdb.
Inherited the vanilla implementation of automatic removal of some
unnecessary table self-joins. The corresponding
enable_self_join_removal configuration parameter
is removed; use enable_self_join_elimination
instead.
Removed the deprecated pgpro_version,
pgpro_edition, and pgpro_build
functions. Use the pgpro_version,
pgpro_edition, and pgpro_build
configuration parameters instead.
Ended support for Ubuntu 25.04 and Debian 11.
Upgraded aqo to version 4.0 to implement optimizations that improve performance and significantly reduce overhead of query planning.
Upgraded pg_proaudit to provide the following enhancements:
Added support for logging of the following event types:
ANALYZE, DISCARD ALL,
DISCARD PLANS, DISCARD SEQUENCES,
DISCARD TEMP (for temporary tables),
CHECKPOINT, FETCH,
and MOVE.
Added the new event class MISC. This class allows
logging of all events (including those mentioned above) not related
to other event classes.
Added a new event log field: application name.
AUTHENTICATE events now contain the name of the
initiating application alongside the connection parameters.
Upgraded pgpro_pwr to version 4.11, which provides optimizations and bug fixes. Notable changes are as follows:
Improved take_sample time tracking.
Added a possibility to exclude server connection strings from dumps.
Added statistics on restartpoints to the reports when it is available.
Improved the behavior of pgpro_stats similarly to pg_stat_statements. The changes are:
Allow the parameterization of SET values.
This reduces the bloat caused by SET statements with differing constants.
Allow the parameterization of constant lists.
Upgraded orafce to version 4.16.2.
Upgraded pg_filedump to version 18.0.
Upgraded pg_probackup to version 2.8.11, which provides the following new features and optimizations:
Added support for Postgres Pro Standard 18.
Made the host from which a backup was taken to be saved in
backup.control and displayed in the
show command output.
Improved the behavior during restore from read-only media, including more informative warning messages.
For archive-push and archive-get
operations in the remote mode, made SIGQUIT
signals to be ignored to prevent core dumps of helper programs
when the server stops.
Upgraded pgpro_controldata to version 18.1.0.
Upgraded pgvector to version 0.8.1.
Upgraded tds_fdw to version 2.0.5.
Disabled online_analyze. This module is not recommended for use with modern versions of 1C. However, it can be enabled if needed.
For the list of extension modules and utilities specific to Postgres Pro Standard, as well as the main user-visible core changes as compared to vanilla PostgreSQL, see Section 2.
You can migrate to Postgres Pro Standard 18 from the same or a previous version of PostgreSQL (that is supported by the upgrade method chosen) and from a previous version of Postgres Pro Standard or Postgres Pro Standard Certified. The same holds for migration to Postgres Pro Standard Certified 18. See Section 17.6 for the methods to upgrade your database cluster. Consult the Postgres Pro Standard support team if you experience issues during migration. Backward migration is not supported. Note that migration from Postgres Pro Standard to Postgres Pro Standard Certified of the same major version (or vice versa) is an update between Postgres Pro compatible versions (see Section 17.6 for more details).
To migrate from PostgreSQL or a Postgres Pro Standard release based on a previous PostgreSQL major version, make sure to install its latest available minor version and then perform a dump/restore using pg_dumpall or use the pg_upgrade utility.
If you choose to run pg_upgrade, make sure to initialize the new database cluster with compatible parameters. In particular, pay attention to the checksum settings in the cluster you are migrating from. If pg_upgrade creates any SQL files in its current directory, run these files to complete the upgrade.
When upgrading the installation from version 10 or lower, a dump/restore is recommended. In this case, you may have to resolve constraint violations manually. If this option is infeasible, you can still use pg_upgrade, but consult the Postgres Pro Standard support team since the integrity of indexes and constraints might be violated in some cases.
To avoid conflicts, do not use the
postgrespro-std-18
package to install the new Postgres Pro
binaries. Use the individual packages instead. In this case,
server autostart needs to be enabled manually, if required.
For details on the available packages, see Chapter 16.
For upgrade requirements imposed by vanilla PostgreSQL, see Section E.7.