E.3. Postgres Pro Standard 16.2.1 #

Release Date: 2024-02-16

E.3.1. Overview #

This release is based on PostgreSQL 16.2 and Postgres Pro Standard 16.1.1. All improvements inherited from PostgreSQL 16.2 are listed in PostgreSQL 16.2 Release Notes. Other major changes and enhancements are as follows:

  • Updated the default values of default_toast_compression and wal_compression to lz4. It speeds up WAL and TOAST processing and reduces disk space utilization.

  • Added configuration parameters to enable getting information on crashes of a backend. The crash_info parameter turns on this functionality, while crash_info_dump and crash_info_location specify the contents and location of crash information files, respectively.

  • Added -m, -o, and -x options to initdb for testing database upgrades with custom initial xid, multixid and multixid offset values. These options were previously available only in Postgres Pro Enterprise.

  • Optimized memory consumption during selectivity estimation for each array element as compared to vanilla PostgreSQL.

  • Fixed segmentation fault that could occur when executing queries or using the planner with pg_pathman running. pg_pathman did not pay attention to new fields in the RangeTblEntry (RTE) structure, which were not correctly initialized. By making a regular copy of a parent RTE, pg_pathman also copied pointers to parent equivalence classes or their members. This inconsistency affected query planning and caused the error.

  • Fixed the race condition between the autovacuum worker and backend processes when clearing orphaned tables, which could manifest itself in cache lookup failed for relation errors. Now autovacuum locks the namespaces when clearing orphaned tables.

  • Fixed an issue that could occur during installation of a Postgres Pro server on Debian-based systems included in a domain with the postgres user.

  • Fixed the output of pg-setup, which erroneously displayed the locale from the LANG environment variable at cluster initialization. Now the message about locale is not displayed at this stage.

  • Ended support for Rosa Enterprise Linux Server 7.

  • Ended support for ROSA COBALT (server edition) based on Rosa platform 7.

  • Upgraded orafce to version 4.9.1.

  • Upgraded pg_filedump to version 16.1.

  • Upgraded pg_proaudit to version 2.0, which provides the following major changes and enhancements:

    • Added new functions pg_proaudit_set_rule and pg_proaudit_remove_rule that allow creating and removing logging rules, respectively. These functions replaced pg_proaudit_set_object, pg_proaudit_set_role, pg_proaudit_reset_object, and pg_proaudit_reset_role.

    • Implemented the ability to log groups of events by specifying the respective value in the event_type argument.

    • Added the comment column in the pg_proaudit_settings view that displays the comment to describe the created logging rule.

    • Implemented the ability to log security events related to objects of the PREPARED STATEMENT type as well as events of the DEALLOCATE, EXECUTE, and PREPARE types.

    • Fixed an issue with incorrect logging of the CREATE DATABASE, CREATE GROUP, CREATE ROLE, CREATE TABLESPACE, and CREATE USER security events. Previously, these events were logged as SUCCESS after the syntax check and before the command execution itself. Now SUCCESS is written in the log when the command execution finishes, and if the command fails, it is marked as FAILURE.

  • Upgraded pg_probackup to version 2.7.2, which provides optimizations and bug fixes:

    • Fixed an issue that occurred during an incremental backup when a table that was not yet copied got removed from CFS.

    • Fixed the order of processing WAL files by the archive-push command when the number of WAL files exceeds the specified --batch-size.

    • Fixed an error WAL segment is absent that could occur when the size of a WAL record being logged exceeded the size of a WAL segment.

  • Upgraded pg_repack to version 1.5.0.

  • Upgraded pg_variables, which now provides iterator functionality for any collections, as well as functions to work with general collection variables. These functions allow accessing collection elements by a key that can have either integer or text type. These enhancements facilitate migration of Oracle code that processes collections.

  • Upgraded pgpro_stats to version 1.7, which provides optimizations and bug fixes:

    • Similarly to a pg_stat_statements fix, changed pgpro_stats to read its query texts file in units of at most 1GB. Such large query text files are very unusual, but if they do occur, the previous coding would fail on Windows 64 (which rejects individual read requests of more than 2GB).

    • Implemented backward compatibility of pgpro_stats_statements and pgpro_stats_totals functions. Now a newer version of the pgpro_stats shared library can be safely used with old declarations of SQL functions. Previously such cases caused a server crash.

    • Fixed an issue that prevented output of database vacuuming statistics in the pg_stats_vacuum_database view. The fix requires updating this view every time you upgrade your server just by replacing the executables, as explained in a note right under the description of the view.

  • Upgraded pgpro_pwr to version 4.4, which supports pgpro_stats 1.7, as well as adds more interactive features and substring-based filtering to the report.

  • Upgraded the PLV8 extension to version 3.2.2.

E.3.2. Migration to Version 16.2.1 #

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 migrate from PostgreSQL or a Postgres Pro Standard release based on a previous PostgreSQL major version, see the instructions in Postgres Pro Standard 16.0.1 Release Notes.