E.13. Postgres Pro Enterprise 13.13.1
Дата выпуска: 2023-11-22
E.13.1. Обзор
Этот выпуск основан на PostgreSQL 13.13 и Postgres Pro Enterprise 13.12.3. Все изменения, унаследованные от PostgreSQL 13.13, описаны в Замечаниях к выпуску PostgreSQL 13.13. По сравнению с Postgres Pro Enterprise 13.12.3 эта версия также содержит следующие изменения:
Добавлены новые параметры конфигурации pgpro_build, pgpro_edition и pgpro_version, сообщающие идентификатор состояния исходного кода Postgres Pro, редакцию и версию сервера соответственно.
Ограничены права ролей с атрибутом
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не изменялись для новых сеансов.Исправлена внутренняя ошибка, которая могла возникать из-за того, что индексное отношение переносилось в другое пространство имён так же, как простое отношение.
Добавлена поддержка ОС Альт СП релиз 10.
Прекращена поддержка обновления корректирующих версий без перезагрузки сервера: удалён параметр pg-setup
--enable-online-upgrade, и командаpg_ctl updateпризнана устаревшей. Обратите внимание: даже если в сборке было отключено обновление «на лету», в ней может присутствовать дополнительный тип общей памяти POSIX, который сейчас также признан устаревшим, и вместо него следует использоватьmmap(см. shared_memory_type).Расширение 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.3.9.
Расширение 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 предполагал обратное и продолжал работу.
E.13.2. Миграция на версию 13.13.1
Если вы производите обновление выпуска Postgres Pro Enterprise, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Если вы хотите сохранить существующее представление карт видимости в pageinspect при миграции на текущую основную версию Postgres Pro Enterprise с использованием pg_upgrade, выполните команду VACUUM, прежде чем начинать обновление.
Начиная с Postgres Pro Enterprise 13.13.1, права ролей с атрибутом CREATEROLE ограничены, и для изменения свойств других ролей требуется наличие права ADMIN OPTION.
Настоятельно не рекомендуется обновлять кластер с 32-битными идентификаторами транзакций на версии Postgres Pro Enterprise ниже 13.12.2 при наличии мультитранзакций в базе данных, поскольку это может вызвать повреждение данных.
При обновлении до версии Postgres Pro Enterprise 13.11.1 и выше обязательно обновите pg_probackup до версии 2.6.4 или выше, поскольку более ранние версии pg_probackup несовместимы с этими версиями Postgres Pro Enterprise.
Если вы ранее мигрировали на Postgres Pro Enterprise версии 13.3.1 или ниже, обязательно перестройте индексы GIN, выполнив команду REINDEX.
Если вы используете PTRACK в процедуре резервного копирования, реализуемой c помощью утилиты pg_probackup, и обновляетесь с Postgres Pro Enterprise версии 13.2.2 или ниже, сделайте полную резервную копию базы данных после обновления.
Если в вашей инсталляции Postgres Pro Enterprise 13.2.1 имеются сжатые табличные пространства, созданные без явного выбора алгоритма pglz, произведите обновление следующим образом. До обновления выгрузите полный дамп, используя pg_dumpall. Обновите Postgres Pro Enterprise, пересоздайте кластер баз данных и восстановите все данные из дампа. Затем вы можете создать табличные пространства CFS по прежней схеме.
Если вы уже обновили инсталляцию Postgres Pro Enterprise 13.2.1 с табличными пространствами CFS и потеряли доступ к сжатым данным, обратитесь к службе поддержки.
Для перехода с PostgreSQL, а также с выпуска Postgres Pro Standard или Postgres Pro Enterprise, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям по миграции на версию 13.
E.13. Postgres Pro Enterprise 13.13.1
Release Date: 2023-11-22
E.13.1. Overview
This release is based on PostgreSQL 13.13 and Postgres Pro Enterprise 13.12.3. All changes inherited from PostgreSQL 13.13 are listed in PostgreSQL 13.13 Release Notes. As compared with Postgres Pro Enterprise 13.12.3, this version also provides the following changes:
Added new configuration parameters pgpro_build, pgpro_edition, and pgpro_version, which report the Postgres Pro source code commit ID, edition, and server version respectively.
Restricted the privileges of
CREATEROLEand its ability to modify other roles. Previously roles withCREATEROLEprivileges could change many aspects of any non-superuser role. Such changes, including adding members, now require the role requesting the change to haveADMIN OPTIONpermission. For example, they can now change theCREATEDB,REPLICATION, andBYPASSRLSproperties only if they also have those permissions.Fixed an issue with page pruning after upgrading Postgres Pro Enterprise cluster using pg_upgrade, which could manifest itself in “cannot fit xid into page” errors. Now updating transactions in multitransactions are taken in account so
pd_xid_basefor pages is calculated correctly.Fixed displaying client connection information in
pg_stat_activitywhen using the built-in connection pooler. Previously, theclient_addrvalues were not updated for new sessions.Fixed an internal issue that could arise when an index relation was moved to a different namespace similarly to a plain relation.
Added support for ALT SP Release 10.
Dropped support for minor version upgrades without a server restart: the pg-setup
--enable-online-upgradeoption is removed, and thepg_ctl upgradecommand is deprecated. Note that even if you did not have online upgrade previously, you may have an additional POSIX shared memory type, which is now also deprecated, consider usingmmapinstead (see shared_memory_type).Upgraded oracle_fdw to version 2.6.0.
Upgraded orafce to version 4.6.1.
Upgraded pg_filedump to version 16.0.
Upgraded pgbouncer to version 1.20.1.
Upgraded pg_integrity_check, which now provides three new options.
Upgraded pg_proaudit to version 1.2, which provides the following changes:
Changed the name of the
CONNECTevents recorded bypg_proaudittoAUTHENTICATE.Removed the
pg_proaudit.syslog_facilityandpg_proaudit.syslog_identconfiguration parameters. Instead, the syslog_ident and syslog_facility parameters can be used.Records in the syslog are now marked with
AUDITfor clear identification.Added the
db_nameargument for functions that add and delete the logging settings. This argument allows specifying the name of the database for which security events need to be logged. Also, therole_oidargument can now be passed withNULLto enable logging actions for all users.
Upgraded pgpro_controldata to version 16.1.0.
Upgraded pg_hint_plan to version 1.3.9.
Upgraded pgpro_stats to version 1.6.3, which in particular fixed a code issue that prevented data generation for the
pgpro_stats_vacuum_tablesview. Accordingly the “Database vacuum statistics” table was not included in the pgpro_pwr report.Upgraded pg_probackup to version 2.6.7 Enterprise, which in particular improved stability of the
catchupcommand.Upgraded PTRACK to version 2.5.1 Enterprise.
Fixed a segmentation fault, which could occur when the background worker of the
database managertype was not created, but pgpro_scheduler assumed the opposite and continued operation.
E.13.2. Migration to Version 13.13.1
If you are upgrading from a Postgres Pro Enterprise release based on the same PostgreSQL major version, it is enough to install the new version into your current installation directory.
If you are migrating to the current major version of Postgres Pro Enterprise using pg_upgrade, and you want to keep the existing visibility map representation in pageinspect, you should run the VACUUM command before the upgrade.
Starting from Postgres Pro Enterprise 13.13.1, the privileges of CREATEROLE are restricted, and modification of other roles requires the role requesting the change to have the ADMIN OPTION permission.
It is strongly recommended to avoid migrating a cluster with 32-bit transaction IDs to Postgres Pro Enterprise versions below 13.12.2, if there are multitransactions in your database, as it may cause data corruption.
When upgrading to Postgres Pro Enterprise versions starting with 13.11.1, make sure to upgrade pg_probackup to version 2.6.4 or higher since lower versions are incompatible with these Postgres Pro Enterprise versions.
If you have previously migrated to Postgres Pro Enterprise 13.3.1 or lower, you must run the REINDEX command to rebuild GIN indexes.
If you are upgrading from Postgres Pro Enterprise versions 13.2.2 or lower and take PTRACK backups using pg_probackup, retake a full backup after upgrade.
If you have an installation of Postgres Pro Enterprise 13.2.1 that contains compressed tablespaces created without explicitly specifying the pglz algorithm, perform an upgrade as follows. Before upgrading, make a complete dump using pg_dumpall. Upgrade Postgres Pro Enterprise, re-create your database cluster, and restore the dump. Then you can create compressed tablespaces in the same way as before.
If you have already upgraded your installation with CFS tablespaces from Postgres Pro Enterprise 13.2.1, and you cannot access the compressed data, call the support team.
To migrate from PostgreSQL, as well as Postgres Pro Standard or Postgres Pro Enterprise based on a previous PostgreSQL major version, see the migration instructions for version 13.