E.1. Postgres Pro Enterprise 15.15.1
Дата выпуска: 2025-12-17
E.1.1. Обзор
Этот выпуск основан на PostgreSQL 15.15 и Postgres Pro Enterprise 15.14.1. Все изменения, унаследованные от PostgreSQL 15.15, описаны в Замечаниях к выпуску PostgreSQL 15.15. По сравнению с Postgres Pro Enterprise 15.14.1 эта версия также содержит следующие изменения:
Улучшен механизм поиска схожих строк типов
mcharиmvarcharс использованием оператораLIKE. Оптимизированное сравнение без учёта регистра значительно ускоряет поиск. Может быть полезно для 1C.Улучшена производительность сбора информации о сбоях сервера за счёт оптимизации служебных функций и команд.
Улучшена производительность для случаев, когда приоритизация ресурсов выключена.
Добавлен параметр конфигурации enable_sorted_merge_join, который включает или отключает использование планировщиком соединений слиянием в планах с сортировкой.
Добавлен параметр конфигурации max_wal_segments_prealloc, который позволяет фоновому процессу записи заранее создавать сегменты WAL в ходе своего основного цикла работы, тем самым снижая нагрузку на обслуживающие процессы. Параметр задаёт максимальное количество таких сегментов.
Ограничено максимальное количество присваиваемых идентификаторов транзакций, теперь оно равняется 263. Кроме того, при достижении порогового значения в 10 миллионов XID теперь выводится предупреждение. При достижении максимального количества XID новые транзакции перестают запускаться, но запросы только на чтение продолжают выполняться.
Устранена проблема CFS со сжатием файлов отношений, в которых OID превышал значение
INT32_MAX. Проблема возникала при переносе таблиц в табличное пространство CFS.Добавлены новые значения переменной окружения
PGPRO_TUNE, используемой initdb.Добавлено расширение auto_dump. Это расширение собирает данные о длительных и проблемных запросах и создаёт файлы с информацией, необходимой для их воспроизведения и устранения неполадок.
Добавлено расширение pg_trgm_mchar, которое обеспечивает быстрый поиск cхожих строк типов
mcharиmvarcharна основе триграмм. Это расширение также обеспечивает поддержку индексов GIN для типовmcharиmvarchar. Может быть полезно для 1C.Добавлено расширение pgpro_cpumeter, которое предоставляет доступ к новой системной функции мониторинга использования процессора. Функция
pgpro_cpumeterнепрерывно собирает и записывает информацию о ядрах процессора, используемых процессами сервера Postgres Pro.Обновлено расширение multimaster. Включены следующие исправления и изменения:
Устранена проблема, из-за которой multimaster возвращал ошибку при выполнении транзакций на чтение и запись, содержавших запросы к сторонним таблицам postgres_fdw. Основная причина ошибки была в том, что postgres_fdw не поддерживает транзакции с двухфазной фиксацией, которые использует multimaster. Для решения проблемы был реализован параметр конфигурации postgres_fdw.read_only_transactions. Если параметр имеет значение
on, включается возможность выполнять запросы на чтение к сторонним таблицам в транзакциях на чтение и запись, что обеспечивает стабильную работу multimaster и postgres_fdw.Устранена проблема возможной задержки при фиксации транзакций вследствие ошибки в логике обмена сообщениями с информацией о применении транзакций на узлах.
Модуль orafce обновлён до версии 4.16.3.
Обновлён модуль pageinspect. В новой версии исправлена ошибка функции
page_header, которая выводила некорректную информацию для страницdouble xmaxи некоторых страниц индексов. В частности, была перепутана последовательность столбцов и значениеprune_xidвыводилось в столбцеxid_base. Теперь информация выводится корректно.Утилита pg_filedump обновлена до версии 18.0.
Модуль pg_hint_plan обновлён до версии 1.5.3, чтобы перечитывать строки с указаниями, если указания были добавлены вне стандартного планировщика. Эта функциональность необходима, чтобы обеспечить совместимость с расширением pgpro_multiplan при работе с планами, которые основаны на наборах указаний.
Расширение pg_portal_modify обновлено до версии 0.3.6.
Обновлено расширение pg_proaudit. Включены следующие исправления и усовершенствования:
Добавлена поддержка регистрации следующих типов событий:
ANALYZE,DISCARD ALL,DISCARD PLANS,DISCARD SEQUENCES,DISCARD TEMP(для временных таблиц),CHECKPOINT,FETCHиMOVE.Добавлен новый класс событий
MISC. Этот класс позволяет регистрировать все события (включая перечисленные выше), не относящиеся к другим классам.Добавлен новый метод регистрации событий безопасности. Теперь события безопасности в формате CEF можно не только записывать в отдельный файл, но и передавать в syslog.
Добавлено новое поле в журнал событий: название приложения. Теперь записи о событиях
AUTHENTICATEсодержат не только параметры подключения, но и название инициирующего приложения.Исправлена проблема, из-за которой pg_proaudit не регистрировал события безопасности в файл CEF.
Исправлена проблема, из-за которой расширение pg_proaudit не регистрировало события для команды
INSERTпослеCREATEв анонимных блоках кода (командаDO) и хранимых процедурах/функциях.Исправлена ошибка, приводившая к чрезмерной нагрузке на ядро процессора из-за сбоя ротации журналов в pg_proaudit.
Приложение pg_probackup обновлено до версии 2.8.11 Enterprise, в которой добавлена новая функциональность, улучшена производительность и исправлены некоторые ошибки:
Обеспечена поддержка Postgres Pro Enterprise 18.
Обеспечена поддержка прозрачного защитного преобразования данных (TDE). Теперь в выводе версии pg_probackup отображается отметка о поддержке TDE.
Добавлено сохранение хоста, с которого была выполнена резервная копия, в
backup.controlи его отображение в выводе командыshow.Улучшено поведение при восстановлении с носителей, доступных только для чтения, включая более информативные предупреждения.
Для операций
archive-pushиarchive-getв удалённом режиме добавлено игнорирование сигналов SIGQUIT для предотвращения дампа памяти вспомогательных программ при остановке сервера.Добавлена проверка соответствия номера порта в
PGDATAи в параметре--pgport. Также добавлен флаг--force, чтобы выполнять резервное копирование, даже если эти значения не совпадают.Исправлена обработка внешних табличных пространств при инкрементальном восстановлении. При использовании флага
--forceих содержимое больше не перезаписывается.Исправлена проблема удержания слота репликации командой
backupпосле успешного завершения.Исправлен конфликт идентификаторов для параметра
--wal-treeпутём добавления проверки уникальности.Исправлен порядок отображения рассчитанного и ожидаемого значений контрольных сумм в предупреждениях.
Модуль pg_repack обновлён до версии 1.5.3.
Обновлён плагин pgpro_bindump. В новой версии исправлена проверка уровня сжатия. Ранее применялся одинаковый диапазон уровней сжатия независимо от выбранного алгоритма.
Утилита pgpro_controldata обновлена до версии 18.1.0.
Утилита pgpro_datactl обновлена до версии 1.2.
Расширение pgpro_multiplan обновлено до версии 1.4, в которую включены следующие исправления и усовершенствования:
Добавлена новая функция pgpro_multiplan_remove_template, которая удаляет указанный план с типом
templateиз постоянного хранилища pgpro_multiplan.Добавлена новая функция pgpro_multiplan_template_hintset_update, которая заменяет сгенерированный набор указаний для плана с типом
templateна указанный пользовательский набор указаний.Улучшены сообщения для ошибок, которые могут возникнуть при регистрации запросов и заморозке планов запросов.
Изменена логика указания значений параметра pgpro_multiplan.wildcards. Теперь этот параметр принимает одно регулярное выражение вместо списка из нескольких выражений, разделённых запятыми.
Устранена проблема, из-за которой план с типом
templateне идентифицировался и не применялся при изменении констант в соответствующем запросе.Устранена проблема в pgpro_multiplan, которая могла приводить к сбою сервера при повторном выполнении того же запроса из-за некорректной обработки значения
sample_string.
Модуль pgpro_pwr обновлён до версии 4.12, в которой улучшена производительность и исправлены некоторые ошибки. Основные изменения перечислены ниже:
Улучшено отслеживание времени функцией
take_sample.Добавлена поддержка pgpro_stats 1.10.
Добавлена возможность исключать из дампов строки подключения к серверу.
В отчёты добавлена доступная статистика по точкам перезапуска.
Устранена проблема в pgpro_scheduler, при которой в служебную таблицу, связанную с функцией
get_log(), некорректно записывались значения временной метки. Теперь значения NULL корректно записываются как отсутствие данных.Приложение pgpro_stats обновлено до версии 1.10, в которой были исправлены некоторые ошибки и появились новые возможности:
В представления
pgpro_stats_statementsиpgpro_stats_totalsвключены новые поля, добавленные в pg_stats_statements в Postgres Pro 18. Также были обновлены соответствующие функции.Добавлена функция
pgpro_stats_statements_filtered, которая фильтрует статистику, аналогичную доступной в представленииpgpro_stats_statements, по одному или нескольким полям:userid,dbid,queryidиplanid. Вызов этой функции работает быстрее, чем запрос к представлениюpgpro_stats_statementsс указанием соответствующих значений этих полей.Улучшено поведение pgpro_stats аналогично pg_stat_statements. Включены следующие изменения:
Добавлена возможность параметризации значений SET. Это позволяет сократить раздувание, которое возникает из-за операторов
SETс разными константами.Добавлена возможность параметризации списков констант.
Устранена проблема, которая могла возникать, когда в pgpro_stats дополнительные метрики изменялись «на лету». Теперь при каждом изменении дополнительных метрик требуется перезапуск сервера.
Расширение pgvector обновлено до версии 0.8.1.
Расширение pldebugger обновлено до версии 1.1.6.
Модуль pljava обновлён до версии 1.6.10.
Расширение plpgsql_check обновлено до версии 2.8.5.
Обновлён модуль rum. Исправлена ошибка обновления модуля, которая возникала из-за того, что в его сборочном файле была указана некорректная переменная.
Расширение tds_fdw обновлено до версии 2.0.5.
Отключён online_analyze. Не рекомендуется использовать этот модуль с современными версиями 1С. Однако при необходимости его можно включить.
Улучшены сообщения в sr_plan для ошибок, которые могут возникнуть при регистрации запросов и заморозке планов запросов.
E.1.2. Миграция на версию 15.15.1
Если вы производите обновление выпуска Postgres Pro Enterprise, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Версия ABI может измениться в корректирующем выпуске Postgres Pro. В таком случае при попытке запустить расширение возникает ошибка ABI mismatch (Несоответствие ABI), поэтому обязательно установите новую версию расширения, поставляемую с новым выпуском Postgres Pro, или перекомпилируйте стороннее расширение, чтобы использовать его с текущей версией Postgres Pro.
Если вы создаёте резервные копии с помощью pg_probackup и ранее обновили его до версии 2.8.0 Enterprise или 2.8.1 Enterprise, обязательно обновите его до версии 2.8.2 Enterprise или выше и сделайте полную резервную копию базы данных после обновления, поскольку резервные копии, созданные с использованием этих версий, могут быть повреждены. Чтобы проверить, повреждены ли резервные копии, созданные с помощью версий 2.8.0 или 2.8.1, можно использовать версию 2.8.2.
Начиная с 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.