## Appendix E. Release Notes

The release notes contain the significant changes in each Postgres Pro release, with major features and migration issues listed at the top. The release notes do not contain changes that affect only a few users or changes that are internal and therefore not user-visible. For example, the optimizer is improved in almost every release, but the improvements are usually observed by users as simply faster queries.

## E.1. Postgres Pro 9.5.16.1

Release date: 2019-03-05

### E.1.1. Overview

This release is based on PostgreSQL 9.5.16 and Postgres Pro Standard 9.5.15.1. All improvements inherited from PostgreSQL 9.5.16 are listed in PostgreSQL 9.5.16 Release Notes.

Major enhancements over Postgres Pro Standard 9.5.15.1 include:

- Changed the default authentication method for installations on SUSE Linux Enterprise Server systems, as well as Red Hat Enterprise Linux 7 and its derivatives. Now local connections use the `peer` method, while network connections use `md5`. For details on supported authentication methods, see Section 19.3.

- Backported the patch that addresses `dsm_attach()` race condition when DSM handles are reused; in vanilla PostgreSQL, this fix is targeted for the future updates only. The patch is hoped to resolve issues when the server reports the following error message: `ERROR: dsa_area could not attach to segment`.

- Ended support for ALT Linux SPT 6.0 and Windows 7 SP1.

- Updated `pg_pathman` module to version 1.5.5. As compared to version 1.5.2 provided in the previous Postgres Pro releases, the following enhancements were introduced:

  - Fixed `pg_pathman` upgrade scripts to avoid issues caused by a different the number of `pg_config` attributes in `pg_pathman` 1.4 and 1.5 major versions.

  - Improved `pg_pathman` stability:

    - Trying to call `pg_pathman` functions when this extension is disabled does not cause server failures anymore; now an error is raised instead.

    - Different partitioning strategies can now be successfully applied to the same table.

- Updated `pg_variables` module to version 1.2. As compared to the version provided in the previous Postgres Pro releases, the following enhancements were introduced:

  - Added support for array types.

  - Improved module stability.

  - Changed empty package handling. An empty package is now removed only after the transaction that emptied it has ended.

  (See Section F.37.)

### E.1.2. Migration to Version 9.5.16.1

Depending on your current installation, the upgrade procedure will differ.

If you are running Postgres Pro Standard version 9.5.3.2 or higher, it is enough to install the 9.5.15.1 version into the same directory. However, if you are upgrading from PostgreSQL 9.5.x or lower versions of Postgres Pro Standard, some catalog changes should be applied, so pgpro_upgrade script is required to complete the upgrade:

- If you are upgrading your installation from a binary package, and your database is in the default location, `pgpro_upgrade` is run automatically, unless you are prompted to run it manually.

- If you compiled Postgres Pro from source code or created your database in a non-default location, you must run `pgpro_upgrade` script manually.

### Important

Before launching `pgpro_upgrade` manually, you must stop the `postgres` service. The script must be run on behalf of the user owning the database (typically postgres). Running `pgpro_upgrade` as root will result in an error. For details, see pgpro_upgrade.

To migrate to this version from vanilla PostgreSQL 9.5.4 or lower, perform a dump/restore using pg_dumpall.