E.21. Postgres Pro Enterprise 13.4.1

Release Date: 2021-09-29

E.21.1. Overview

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

  • Introduced several enhanced security mechanisms:

    • pg_proaudit extension that enables detailed logging of various security events.

    • Advanced authentication policies that provide effective password management and access control. (See CREATE PROFILE and ALTER ROLE).

    • Built-in integrity checks for executable files, configuration files, and system tables. (Certified edition only.)

    • Built-in data security mechanisms that enable sanitizing an object by filling it with zeroes before deletion. Zeroing can be done before purging files in external memory and removing outdated row versions (page vacuum), freeing RAM, and deleting or overwriting WAL files. (Certified edition only.)

  • Fixed a few issues related to upgrading Postgres Pro Enterprise to the current major version using pg_upgrade:

    • Added visibility map conversion in order to fix an issue that could lead to retrieving phantom query results when using btree indexes.

    • Fixed an issue with handling posting list pages in GIN indexes after the upgrade. This issue could lead to GIN index corruption that manifested itself in ERROR: XX000: tuple offset out of range errors on stand-by servers.

    • Fixed incorrect conversion of multixacts from 32-bit to 64-bit transaction ID format during the upgrade, which could result in retrieving out-of-date row versions.

  • Added support for Debian 11.

  • Upgraded mamonsu to version 3.0, which is incompatible with the previous one. Read mamonsu Compatibility Considerations to learn what you need to do to continue using the application.

  • Added support for Red OS Murom 7.3.

  • Fixed an issue in the multimaster extension that could result in an error when updating rows created using a stored procedure. Now sequence values are correctly generated when the sequence object is called within a stored procedure.

  • Fixed an issue with pgpro_scheduler that could result in a failure to stop a stand-by server, e.g. with pg_ctl.

  • Added support for Astra Linux Smolensk 1.7.

  • Fixed the behavior of ALTER TABLE IF EXISTS table RENAME TO table1 command in the case when the source table is missing and the pg_pathman extension was loaded. Previously, ERROR was returned, and now NOTICE is generated, which is how Postgres Pro behaves with no pg_pathman extension loaded.

  • Upgraded amcheck to version 1.3.1, which supports verification of unique constraints in B-tree indexes.

  • Upgraded pg_probackup to version 2.5.1, which added a new catchup command to copy a Postgres Pro instance directly, without using the backup catalog. This allows you to add a new standby server in a parallel mode or to have a fallen-behind standby server catch up with master.

  • Fixed a bug in the query optimizer, which overestimated the cost of index scan using a unique index. This behavior was observed when between index scans using a unique index and using a non-unique one, the non-unique index was chosen, which resulted in excessive disk accesses and a considerable overall slowdown.

  • Implemented I/O buffering in CFS, which can improve performance on HDD.

  • Fixed a corner case of incorrect snapshot handling in parallel workers.

  • Improved stability of the aqo module when processing queries typical for ORM solutions, such as 1C:Enterprise.

E.21.2. Migration to Version 13.4.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.

Important

If you have previously migrated to Postgres Pro Enterprise 13.3.1 or lower, you must run the REINDEX command to rebuild GIN indexes.

If you are upgrading from Postgres Pro Enterprise versions 13.2.2 or lower and take PTRACK backups using pg_probackup, retake a full backup after upgrade.

If you have an installation of Postgres Pro Enterprise 13.2.1 that contains compressed tablespaces created without explicitly specifying the pglz algorithm, perform an upgrade as follows. Before upgrading, make a complete dump using pg_dumpall. Upgrade Postgres Pro Enterprise, re-create your database cluster, and restore the dump. Then you can create compressed tablespaces in the same way as before.

If you have already upgraded your installation with CFS tablespaces from Postgres Pro Enterprise 13.2.1, and you cannot access the compressed data, call the support team.

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 13.