E.4. Postgres Pro Enterprise 14.10.1

Release Date: 2023-11-23

E.4.1. Overview

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

  • Added new configuration parameters pgpro_build, pgpro_edition, and pgpro_version, which report the Postgres Pro source code commit ID, edition, and server version respectively.

  • Optimized memory consumption and time of performing a large number of expressions x=c_i (c_i are constants, i>= 500) joined by OR. The optimization is based on a replacement with ANY, such as replacement of x=1 OR x=2 OR x=3 with x=ANY([1,2,3]).

  • Restricted the privileges of CREATEROLE and its ability to modify other roles. Previously roles with CREATEROLE privileges could change many aspects of any non-superuser role. Such changes, including adding members, now require the role requesting the change to have ADMIN OPTION permission. For example, they can now change the CREATEDB, REPLICATION, and BYPASSRLS properties only if they also have those permissions.

  • Fixed an issue with physical replication, which could cause PANIC-level errors on replicas. Previously, pages with tuples recreated by a multitransaction were erroneously reinitialized, which resulted in pd_multi_base being set to zero.

  • Fixed an issue with page pruning after upgrading Postgres Pro Enterprise cluster using pg_upgrade, which could manifest itself in cannot fit xid into page errors. Now updating transactions in multitransactions are taken in account so pd_xid_base for pages is calculated correctly.

  • Fixed displaying client connection information in pg_stat_activity when using the built-in connection pooler. Previously, the client_addr values were not updated for new sessions.

  • Fixed an internal issue that could arise when an index relation was moved to a different namespace similarly to a plain relation.

  • Fixed too long planning that could take place when JOIN and index increased the number of variants to consider. Planning time was reduced by indexing equivalence classes and members of them.

  • Added support for ALT SP Release 10.

  • Added the apache-age extension that provides graph database functionality.

  • Upgraded oracle_fdw to version 2.6.0.

  • Upgraded orafce to version 4.6.1.

  • Upgraded pg_filedump to version 16.0.

  • Upgraded pgbouncer to version 1.20.1.

  • Upgraded pg_integrity_check, which now provides three new options.

  • Upgraded pg_proaudit to version 1.2, which provides the following changes:

    • Changed the name of the CONNECT events recorded by pg_proaudit to AUTHENTICATE.

    • Removed the pg_proaudit.syslog_facility and pg_proaudit.syslog_ident configuration parameters. Instead, the syslog_ident and syslog_facility parameters can be used.

    • Records in the syslog are now marked with AUDIT for clear identification.

    • Added the db_name argument for functions that add and delete the logging settings. This argument allows specifying the name of the database for which security events need to be logged. Also, the role_oid argument can now be passed with NULL to enable logging actions for all users.

  • Upgraded pgpro_controldata to version 16.1.0.

  • Upgraded pg_hint_plan to version 1.4.2.

  • Upgraded pgpro_stats to version 1.6.3, which in particular fixed a code issue that prevented data generation for the pgpro_stats_vacuum_tables view. Accordingly the Database vacuum statistics table was not included in the pgpro_pwr report.

  • Upgraded pg_probackup to version 2.6.7 Enterprise, which in particular improved stability of the catchup command.

  • Upgraded PTRACK to version 2.5.1 Enterprise.

  • Fixed a segmentation fault, which could occur when the background worker of the database manager type was not created, but pgpro_scheduler assumed the opposite and continued operation.

  • Upgraded tds_fdw to version 2.0.3.

E.4.2. Migration to Version 14.10.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.

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.