E.14. Postgres Pro Enterprise 15.1.1

Дата выпуска: 2023-02-01

E.14.1. Обзор

Этот выпуск основан на PostgreSQL 15.1 и включает все новые возможности, появившиеся в PostgreSQL 15, а также исправления ошибок, вошедшие в корректирующий выпуск PostgreSQL 15.1. Подробное описание этих новшеств вы можете найти в замечаниях к выпускам PostgreSQL 15 и PostgreSQL 15.1 соответственно.

Список дополнительных модулей и утилит, добавленных в Postgres Pro Enterprise, а также перечень ключевых видимых пользователям изменений в ядре сервера по сравнению с ванильным PostgreSQL вы можете найти в Разделе 2. Ниже перечислены значимые отличия этой версии от Postgres Pro Enterprise 14.6.1:

  • Добавлена поддержка пакетов, которые по существу представляют собой расширенные схемы, помогающие организовать взаимосвязанные именованные объекты. Эта функциональность, знакомая пользователям Oracle, расширяет возможности PL/pgSQL, где появились новые модификаторы функций и соглашения, а также новые команды CREATE PACKAGE и DROP PACKAGE.

  • Добавлена поддержка передачи именованных и позиционных аргументов скриптам, вызываемым командой \i в psql.

  • Выпущено приложение pg_probackup версии 2.6 Enterprise. Эта версия pg_probackup обладает следующими отличиями от предыдущей:

    • Оптимизирован механизм ввода/вывода pg_probackup для повышения производительности.

    • Добавлена поддержка Simple Storage Service (S3) для хранения данных в частных облачных хранилищах. Интерфейс S3 был протестирован с объектным хранилищем MinIO и хранилищем VK Cloud. Обратите внимание, что pg_probackup обеспечивает полную обработку журналов интерфейса S3.

    • Добавлена поддержка CFS (сжатой файловой системы) для инкрементального копирования в режимах DELTA, PAGE и PTRACK. Рекомендуется использовать режим PTRACK как самый быстрый способ инкрементального копирования, но учтите, что для его работы необходимо расширение PTRACK версии 2.4.0 или выше.

    • Добавлена поддержка алгоритмов сжатия lz4 и zstd.

    • Прекращена поддержка Postgres Pro 9.6.

  • Добавлено расширение pgpro_anonymizer, позволяющее маскировать или заменять конфиденциальные коммерческие данные или информацию, по которой можно установить личность, в БД Postgres Pro.

  • Унаследована ванильная реализация усовершенствования pgbench, которая поддерживает повторное выполнение транзакций после сбоев сериализации и взаимоблокировок.

  • Расширение PLV8 обновлено до версии 3.1.5.

  • Включена временная ознакомительная версия расширения multimaster, которую не следует использовать в производственной среде.

E.14.2. Миграция на версию 15

Вы можете перейти на Postgres Pro Enterprise 15 с той же или предыдущей версии PostgreSQL (которая поддерживается выбранным способом обновления) или Postgres Pro Standard/Postgres Pro Standard Certified, а также с предыдущей версии Postgres Pro Enterprise/Postgres Pro Enterprise Certified. То же самое справедливо для перехода на Postgres Pro Enterprise Certified 15. Способы обновления кластера базы данных описаны в Разделе 18.6. Если у вас возникнут проблемы при переходе на новую версию, обратитесь в службу поддержки Postgres Pro Enterprise. Обратный переход не поддерживается. Обратите внимание, что переход с Postgres Pro Enterprise на Postgres Pro Enterprise Certified той же основной версии (или наоборот) — это обновление на совместимую версию Postgres Pro (за подробным описанием обратитесь к Разделу 18.6).

Для перехода с PostgreSQL, Postgres Pro Standard или выпуска Postgres Pro Enterprise, основанного на предыдущей основной версии PostgreSQL, сначала установите его последний корректирующий выпуск, а затем выполните выгрузку/восстановление данных, применив pg_dumpall, или воспользуйтесь pg_upgrade.

Если вы решите использовать pg_upgrade, важно инициализировать новый кластер баз данных с совместимыми параметрами. В частности, обратите внимание на характеристику контрольных сумм и выбор провайдера основного правила сортировки в кластере, который вы будете обновлять. Понять, какое правило сортировки является основным в старом кластере и какой провайдер оно использует, можно по значению datcollate для базы данных template0 в каталоге pg_database. Если вы производите обновление с версии, в которой провайдер основного правила сортировки не задан, опустите указание провайдера при переходе с предыдущих версий Postgres Pro или выберите провайдер libc при переходе с ванильного PostgreSQL. Если вы обновляете Postgres Pro версии 9.6 или ниже и хотите сохранить существующие правила сортировки ICU, задайте для параметра --icu-locale значение lc_collate старого кластера. Если pg_upgrade создаст какие-либо скрипты SQL в текущем каталоге, выполните их для завершения обновления.

При переходе с PostgreSQL или Postgres Pro Standard обязательно уделите внимание особенностям реализации, связанным с 64-битными идентификаторами транзакций. Если вы ранее использовали явные приведения идентификаторов транзакций к 32-битным целым, вы должны заменить их на приведения к типу bigint, так как 64-битные идентификаторы транзакций имеют такой тип.

Примечание

Во избежание конфликтов не используйте пакет postgrespro-ent-15 для установки исполняемых файлов Postgres Pro, а установите вместо него отдельные пакеты компонентов продукта. В этом случае режим автозапуска сервера, если он требуется, нужно будет включить вручную. Подробнее о предоставляемых пакетах и вариантах установки вы можете узнать в Главе 17.

Другие особенности обновления, присущие и ванильной версии PostgreSQL, описаны в Разделе E.23.