E.16. Postgres Pro Enterprise 13.5.1

Release Date: 2021-12-27

E.16.1. Overview

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

  • Upgraded pg_probackup to version 2.5.4, which fixes several issues:

    • One of the issues was related to the behavior of catchup in DELTA and PTRACK modes. It could occur when pg_probackup operated remotely via SSH and --destination-pgdata was the same as --source-pgdata, caused corruption of the source instance (at least the global/pg_control, global/pg_filenode.map and base/*/pg_filenode.map files got deleted) and resulted in the error Could not open file "/pgwal/test/global/pg_control" for reading: No such file or directory.

    • Another issue could occur when the source database was not on the timeline 1, and the destination database did not fall behind: probackup sanity checks on catchup timeline history failed with the error Destination is not in source timeline history.

    • Yet another issue affected archiving WAL from a directory outside of the data directory. Previously, multi-threaded and batch optimizations of archive-push prevented such archiving; now it is possible to archive WAL from any directory, but if it is outside of the data directory, multi-threaded and batch optimizations are automatically turned off.

  • Fixed small memory leaks in the postmaster for each connection.

  • Improved performance of index-only scans with the large tables by increasing the size of the cached visibility map. Now such plan nodes can be executed several times faster with tables larger than 256 MB.

  • Fixed pg_dump to handle 64-bit XID statistics correctly, which is important when upgrading Postgres Pro Enterprise using pg_upgrade. Previously, values over 232 in XID statistics were incorrectly transferred, which led to the launch of autovacuum to prevent transaction ID wraparound.

  • Fixed two issues with an upgrade of Postgres Pro Enterprise 9.6 cluster to the current major version using pg_upgrade: it incorrectly converted free space maps of tables larger than 4 TB, and it could crash when processing the free space map of a very large table.

  • Dropped support for the sr_plan extension.

  • Upgraded mamonsu to version 3.1.0. Notable changes are as follows:

    • A new option for bootstrap is added. With this option, if -dbname is not explicitly specified, its value will be automatically set to the database name defined in the [postgres] section of the mamonsu configuration file.

    • A critical issue is fixed that could arise when the bootstrap step was skipped. In this case, although a user can work with mamonsu under superuser permissions, the special mamonsu schema is not created, but after creating the auxiliary extension pg_buffercache in any other schema, running mamonsu resulted in errors ERROR: relation "mamonsu.pg_buffercache" does not exist....

  • Added support for ALT Linux 10.

  • Forbade access to temporary namespaces from autonomous transactions to ensure predictable behavior.

  • Added support for autopreparing statements submitted via the extended query protocol. You can use the autoprepare_for_protocol parameter to control autopreparing on the protocol level.

  • Changed the minimum supported Windows versions to Windows 10 and Windows Server 2012 R2.

  • Fixed pg_dumpall to avoid using an insecure search path.

  • Upgraded pgpro_pwr. Major enhancements are as follows:

    • Added the Load distribution section to the report, which shows load distribution of different resources (for example, total time or shared blocks written) for heavily loaded objects, such as databases, applications, hosts, or users, in graphics, as stacked bar charts.

    • Added the Session statistics by database and WAL statistics report tables, based on new views and fields made available in Postgres Pro 14.

  • Deprecated WAITLSN command.

  • Leveraged sparse file functionality in Windows for CFS, which optimizes on-disk size of *.cfm files, up to 1MB each.

E.16.2. Migration to Version 13.5.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 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.