Movatterモバイル変換


[0]ホーム

URL:



Facebook
Postgres Pro
Facebook
Downloads
E.27. Postgres Pro Standard 11.1.1
Prev UpAppendix E. Release NotesHome Next

E.27. Postgres Pro Standard 11.1.1

Release Date: 2018-11-20

E.27.1. Overview

This release is based onPostgreSQL 11.1 and includes all the new features introduced in PostgreSQL 11, as well as bug fixes implemented in PostgreSQL 11.1. For their detailed description, seePostgreSQL 11 Release Notes andPostgreSQL 11.1 Release Notes, respectively. Other major changes and enhancements are as follows:

  • Added support for Ubuntu 18.10, Astra Linux Smolensk 1.6, and Red OS Murom 7 operating systems.

  • Modified ICU usage specifics: ICU collation version is no longer stored in the cluster and therefore it is not checked when connecting to a database. For upgrade implications of this change, seeSection E.27.2.

  • Updated planner/optimizer to improve planning speed and accuracy for several query types:

    • When estimating the sorting cost, the planner now takes into account comparison complexity, field width, and the number of comparison function calls required for each column, which results in fewer estimation errors.

    • For queries with several columns in theGROUP BY clause, it is now possible to choose the order of columns when sorting the data if it does not affect query accuracy. The more unique values the first sorted column contains, the less sorting is required for other columns. If all values in one of the columns are unique, it may be enough to sort data by that column only. The planner can also take advantage of the existing sorting results of index scans or theORDER BY clause.

    • If all tables to be joined have indexes, they are now used to estimate the number of rows in the joined result.

    • Self-joins are now eliminated from plans if it does not affect query results.

    • Planning for queries with multipleOR operators in theWHERE clause has been improved.

  • Added support for Just-in-Time (JIT) compilation on Debian and Ubuntu systems, Astra Linux 1.6, ALT Linux 8, and CentOS 7. To use this functionality, you must install a separateJIT package and set up your environment as explained inChapter 16. To learn more aboutJIT, seeChapter 31.

  • Updatedpg_probackup module to version 2.0.24. As compared to version 2.0.19 provided in the previousPostgres Pro releases, the following enhancements were introduced:

    • If unchanged since the previous backup, files that do not store relation data are now skipped in incremental backups.

    • Version number specified inpg_probackup.conf is now preserved when this file gets updated, which allows to correctly identifypg_probackup version used to take the backup.

    • Fixed an issue with restoring compressed file blocks and enhanced checks for compression errors. Previously,pg_probackup could not restore file blocks that thezlib algorithm failed to compress during backup. This issue could not be detected by the built-inpg_probackup validation mechanism as it occurs on a lower level that validation itself. You are recommended to re-validate existing backups using thispg_probackup version.

    • Improved validation algorithm. Files are now validated block by block by default, not only in case of file-level checksum mismatch. You can disable this behavior using the--skip-block-validation option.

    • Allowed restarting a backup merge if the previous attempt has been interrupted.

    • Allowed taking backups from standby servers without connecting to the master. Besides,pg_probackup now uses its built-in mechanism to determine the consistency point, so there is no risk that backups from standby contain any inconsistent data.

  • Updatedpg_pathman module to version 1.5.2. As compared to version 1.4.14 provided in the previousPostgres Pro releases, the following enhancements were introduced:

    • Added support for multilevel partitioning.

    • Eliminated update triggers and addedpg_pathman.enable_partitionrouter parameter to enable/disable cross-partition updates.

    • Renamedget_pathman_lib_version() topathman_version().

    • Provided other miscellaneous bug fixes and improvements. For a full list of changes, seepg_pathman Wiki.

  • Enabled NUL byte replacement with the specified ASCII code while loading data using theCOPY FROM command. Seenul_byte_replacement_on_import parameter description for details.

  • Improvedplantuner stability and fixed a memory leak.

  • Fixed an issue in index search that caused a slowdown when using complexjsquery values.

  • Updatedpg-setup:

    • This script can now initialize the database cluster in a non-default location and store the correspondingPGDATA value in a system configuration file.

    • You can now runpg-setup with theset option to modify cluster configuration.

  • Introduced the following changes for Windows version ofPostgres Pro:

    • PL/Perl now requires ActivePerl 5.26.

    • 32-bitPostgres Pro version is no longer provided.

All the features developed forPostgres Pro Standard 10 releases have also been ported, including core patches and extension modules.

The main user-visible changes introduced by the applied core patches as compared to vanillaPostgreSQL are as follows:

Extension modules and utilities ported fromPostgres Pro Standard 10 are:

E.27.2. Migration to Version 11

To migrate fromPostgreSQL or aPostgres Pro Standard release based on a previousPostgreSQL major version, make sure to install its latest available minor version and then perform a dump/restore usingpg_dumpall or use thepg_upgrade utility:

  • If you choose to runpg_upgrade, make sure to initialize the new database cluster with compatible parameters. In particular, pay attention to the provider of the default collation and thechecksum settings in the cluster you are migrating from. Ifpg_upgrade creates any SQL files in its current directory, run these files to complete the upgrade.

  • If you are opting for a dump/restore, do not forget to use the--add-collprovider option to correctly choose the provider for the default collation of the migrated database.

To find out the default collation and its provider in the original cluster, see thedatcollate value for thetemplate0 database in thepg_database catalog. If you are upgrading from a version where provider of the default collation is not specified, uselibc provider if upgrading from vanillaPostgreSQL, and omit the provider if upgrading from earlier versions ofPostgres Pro.

Besides, note the following collation-related upgrade specifics described below.

On Windows,Postgres Pro Standard installations could contain databases with default collations provided by ICU, where the name of the database default collation used a syntactically correct BCP 47 language tag format, but had a wrong language code or other parameters, which invalidated the database default collation name for ICU.

If this issue affects thetemplate0 database, you will get the following error message when trying to initialize the cluster with the same collation:failed to get the canonical name for collation locale. In this case, you can only use dump/restore for upgrade, specifying a valid locale for the selected collation provider.

If this issue affects other databases, you will get the same error message whenPostgres Pro tries to create these databases with invalid collation in the new cluster. In this case, you can try the following:

  1. Make a dump of the database usingpg_dump; it is required to use--create and--format=plain options.

  2. Change the provider for the default collation of the database in the dump file from'@icu' to'@libc'.

  3. Inpsql, restore the modified dump to complete the upgrade. This operation may fail if any constraints depending on the database collations are violated. In this case, you can try resolving the issues manually or call the support team.

In some corner cases, using dump/restore could lead to invalid constraints in the restored databases, so you should usepg_upgrade. For example:

  • If the installation ofPostgres Pro Standard 9.6 or lower contained any indexes or constraints depending on collations other than the default collation of the database,C, orPOSIX in databases with multibyte encodings, indexes and constraints in such databases could become inconsistent when these databases are migrated toPostgres Pro 10 or higher. On Windows, this situation can also happen if the database with a multibyte encoding contained any indexes or constraints depending on the default collation with a verbose name, such as"Russian_Russia[.encoding]" or"English_United States[.encoding]".

  • For upgrades fromPostgres Pro Standard 10, if the cluster has no information about the ICU library version, the ICU collation versions are checked to ensure that indexes and constraints remain valid after the upgrade. However, for clusters that contain databases with default ICU collations but have no information about the ICU library version and/or its collation versions, it is impossible to check that the current version ofPostgres Pro uses the same version of the ICU library.

  • On Windows, inPostgres Pro Standard 10 clusters with default collations provided by ICU, the ICU collation locale may not match the correspondinglibc collation locale.

If you usepg_upgrade, it declares such indexes and constraints invalid and createsreindex_text_indexes.sql andvalidate_text_contraints.sql, respectively. You have to run these files to complete the upgrade.

Note

To avoid conflicts on Linux systems, do not use thepostgrespro-std-11 package to install the newPostgres Pro binaries. Use the individual packages instead. In this case, server autostart needs to be enabled manually, if required. For details on the available packages, seeChapter 16.

Note

ForPostgreSQL 9.5 and 9.5.1, as well asPostgres Pro Standard 9.5.0.1 and 9.5.1.2, you cannot perform an upgrade toPostgres Pro Standard 11 directly. If you are using one of these versions, upgrade your installation to an intermediate version first, such asPostgres Pro Standard 9.5.2.1.

Similarly, if you are runningPostgres Pro Standard 9.6.10.x on Windows, you have to upgrade toPostgres Pro Standard 9.6.11.1 or higher.

Important

When upgrading from versions 10.3.2 or lower, you must call theREINDEX command for indexes that usedmchar ormvarchar types.

For other upgrade requirements imposed by vanillaPostgreSQL, seeSection E.50.


Prev Up Next
E.26. Postgres Pro Standard 11.2.1 Home E.28. Release 11.22
epubpdf
Go to Postgres Pro Standard 11
By continuing to browse this website, you agree to the use of cookies. Go toPrivacy Policy.

[8]ページ先頭

©2009-2025 Movatter.jp