E.12. Postgres Pro Enterprise 15.5.1
Дата выпуска: 2023-11-24
E.12.1. Обзор
Этот выпуск основан на PostgreSQL 15.5 и Postgres Pro Enterprise 15.4.3. Все изменения, унаследованные от PostgreSQL 15.5, описаны в Замечаниях к выпуску PostgreSQL 15.5. По сравнению с Postgres Pro Enterprise 15.4.3 эта версия также содержит следующие изменения:
- Добавлены новые параметры конфигурации pgpro_build, pgpro_edition и pgpro_version, сообщающие идентификатор состояния исходного кода Postgres Pro, редакцию и версию сервера соответственно. 
- Добавлен параметр конфигурации vacuum_update_datfrozenxid_only_when_needed для повышения производительности при очистке большого количества таблиц. 
- Реализованы доступные только в Postgres Pro расширения стандарта пути SQL/JSON: конструктор последовательностей, конструктор массивов, конструктор объектов и индексация объектов. Их можно включить, указав дополнительный модификатор - pgpro.
- Оптимизировано потребление памяти и время выполнения большого количества выражений x=c_i (где c_i — константы и i>= 500), объединённых оператором OR. Оптимизация основана на преобразовании выражений OR в ANY, например x=1 OR x=2 OR x=3 преобразуется в x=ANY([1,2,3]). 
- Ограничены права ролей с атрибутом - CREATEROLEи их возможность изменять другие роли. Ранее роли с правом- CREATEROLEмогли изменять разные свойства обычных ролей (не суперпользователей). Теперь для изменения некоторых свойств других ролей, включая назначение членства, требуется наличие права- ADMIN OPTION. Например, теперь роли с правом- CREATEROLEмогут изменять атрибуты- CREATEDB,- REPLICATIONи- BYPASSRLS, только если у них есть соответствующие права.
- Исправлена проблема с очисткой страниц при обновлении кластера Postgres Pro Enterprise с помощью pg_upgrade. Эта проблема могла проявляться в виде ошибок «cannot fit xid into page» (xid не помещается на странице). Теперь учитываются транзакции в мультитранзакциях, изменяющие данные, и - pd_xid_baseдля страниц рассчитывается правильно.
- Исправлено отображение информации о подключении клиента в - pg_stat_activityпри использовании встроенного пула соединений. Ранее значения поля- client_addrне изменялись для новых сеансов.
- Исправлена внутренняя ошибка, которая могла возникать из-за того, что индексное отношение переносилось в другое пространство имён так же, как простое отношение. 
- Устранено слишком долгое планирование, потенциально происходившее в случаях, когда из-за наличия - JOINи индекса увеличивалось количество рассматриваемых вариантов. Время планирования сократилось за счёт построения индексов классов эквивалентности и их членов.
- Добавлена поддержка ОС Альт СП релиз 10. 
- Добавлено расширение apache_age, предоставляющее функциональность для работы с графовыми базами данных. 
- Добавлена поддержка драйвера открытого соединения с базами данных (ODBC). 
- Расширение oracle_fdw обновлено до версии 2.6.0. 
- Модуль orafce обновлён до версии 4.6.1. 
- pg_filedump обновлён до версии 16.0. 
- pgbouncer обновлён до версии 1.20.1. 
- Обновлена утилита pg_integrity_check, в ней появилось три новых параметра. 
- Расширение pg_proaudit обновлено до версии 1.2, в которую были включены следующие изменения: - Имя событий - CONNECT, регистрируемых- pg_proaudit, изменено на- AUTHENTICATE.
- Удалены параметры конфигурации - pg_proaudit.syslog_facilityи- pg_proaudit.syslog_ident. Вместо них можно использовать параметры syslog_ident и syslog_facility.
- Записи - pg_proauditв syslog теперь имеют метку- AUDIT, что позволяет однозначно их определять.
- Добавлен аргумент - db_nameдля функций, которые добавляют и удаляют правила регистрации событий. Этот аргумент позволяет указать имя базы данных, для которой необходимо регистрировать события безопасности. Кроме того, аргумент- role_oidтеперь может передаваться со значением- NULL, чтобы включить регистрацию действий для всех пользователей.
 
- Утилита pgpro_controldata обновлена до версии 16.1.0. 
- Расширение pg_hint_plan обновлено до версии 1.5.2. 
- Расширение pgpro_stats обновлено до версии 1.6.3, в которой была устранена проблема в коде, препятствовавшая созданию данных для представления - pgpro_stats_vacuum_tables. Соответственно, таблица «Database vacuum statistics» (Статистика очистки баз данных) теперь включается в отчёт pgpro_pwr.
- Приложение pg_probackup обновлено до версии 2.6.7 Enterprise, в которой улучшена стабильность команды - catchup.
- Расширение PTRACK обновлено до версии 2.5.1 Enterprise. 
- Исправлена ошибка сегментации, которая могла возникать, когда фоновый рабочий процесс типа - database managerне создавался, но pgpro_scheduler предполагал обратное и продолжал работу.
- В расширение sr_plan добавлено представление - sr_plan_local_cache. Оно содержит подробную информацию о зарегистрированных и замороженных операторах в локальном кеше.
- Расширение tds_fdw обновлено до версии 2.0.3. 
E.12.2. Миграция на версию 15.5.1
Если вы производите обновление выпуска Postgres Pro Enterprise, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Начиная с Postgres Pro Enterprise 15.5.1, права ролей с атрибутом CREATEROLE ограничены, и для изменения свойств других ролей требуется наличие права ADMIN OPTION.
Настоятельно не рекомендуется обновлять кластер с 32-битными идентификаторами транзакций на версии Postgres Pro Enterprise ниже 15.4.2 при наличии мультитранзакций в базе данных, поскольку это может вызвать повреждение данных.
При обновлении до версии Postgres Pro Enterprise 15.3.1 и выше обязательно обновите pg_probackup Enterprise до версии 2.6.4 или выше, поскольку более ранние версии pg_probackup несовместимы с этими версиями Postgres Pro Enterprise.
Для перехода с PostgreSQL, а также с выпуска Postgres Pro Standard или Postgres Pro Enterprise, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям по миграции на версию 15.