Дата выпуска: 2025-05-26
Этот выпуск основан на PostgreSQL 14.18 и Postgres Pro Standard 14.17.1. Все усовершенствования, унаследованные от PostgreSQL 14.18, перечислены в Замечаниях к выпуску PostgreSQL 14.18. Другие важные изменения и улучшения перечислены ниже:
Добавлен параметр конфигурации enable_alternative_sorting_cost_model, который позволяет включать или отключать использование планировщиком альтернативной модели подсчёта стоимости сортировки кортежей.
Добавлены следующие изменения в реализацию crash_info:
Добавлена обработка сигналов SIGILL в процесс обработки crash_info.
В выходные файлы crash_info добавлены новые сведения: время запуска процесса и текст запроса при планировании.
Исправлены некорректные имена функций в первых 2-3 строках трассировки стека crash_info.
Исправлено возможное усечение данных в конце файлов выгрузки SQL-запросов. Ранее переполнение буфера при выгрузке SQL-запроса могло приводить к тому, что записывались не все данные, в результате чего в конце файлов, создаваемых crash_info, могли содержаться усечённые данные.
Исправлена обработка сигналов о сбоях (отправленных командой kill) обслуживающими процессами. Ранее с первым сигналом информация crash_info отправлялась в журнал, но процесс продолжал работу без создания дампа памяти, даже если он был настроен. И только со вторым сигналом обслуживающий процесс завершался и создавался дамп памяти так, как ожидалось.
Исправлена проблема с недостающей статистикой об очистке при использовании нескольких рабочих процессов очистки индексов.
Добавлено расширение daterange_inclusive, которое позволяет добавлять в вывод верхнюю границу временного диапазона.
Добавлено решение pg_probackup3 для резервного копирования и восстановления кластеров баз данных Postgres Pro. За подробной информацией обратитесь к Замечаниям к выпускам pg_probackup3.
Добавлен модуль pgpro_bindump для управления операциями резервного копирования и восстановления. В модуле реализованы специализированные команды репликации для расширенного протокола репликации и собственный формат архивирования. Модуль не требует подключения по SSH. Новый модуль разработан специально для использования вместе с утилитой pg_probackup3.
Добавлена утилита pgpro_tune, которая позволяет устанавливать параметры конфигурации Postgres Pro автоматически для всех операционных систем, за исключением Windows.
В initdb добавлена новая переменная окружения PGPRO_TUNE, которая указывает, нужно ли использовать утилиту pgpro_tune без изменения параметров в командной строке.
Удалён параметр --tune программы pg-setup. Вместо этого используйте новую утилиту pgpro_tune.
Обновлён модуль oracle_fdw. Включены следующие исправления и усовершенствования:
Увеличена длина строк вывода EXPLAIN для соответствия условиям фильтров некоторых запросов к каталогам Oracle. Новое значение — 3000 символов.
Устранён сбой, который мог возникать, если для несуществующих столбцов были определены параметры. Если у таблицы Oracle было меньше столбцов, чем у таблицы Postgres Pro, и для одного из таких дополнительных столбцов был определён параметр, oracle_fdw при записи данных выходил за границы массива, что приводило к повреждению памяти и сбоям. Теперь параметры для таких столбцов игнорируются.
Обновлено расширение pg_proaudit. Включены следующие исправления и усовершенствования:
Добавлены новые типы объектов: CATALOG RELATION и CATALOG FUNCTION.
Добавлены новые поля событий: UUID, XID и VXID. Теперь стало возможно определить событие по его UUID и идентификатору транзакции (если применимо).
Исправлено поведение параметра конфигурации pg_proaudit.log_catalog_access, теперь оно отражает новую логику регистрации событий для объектов системного каталога.
Исправлена логика обработки событий отключения от баз данных. Теперь такие события связаны с соответствующими событиями аутентификации, что позволяет регистрировать события отключения, даже когда соответствующее правило регистрации удаляется после аутентификации, но до непосредственного отключения.
Исправлена проблема, из-за которой тип события DISCONNECT не регистрировался для пользователя, который являлся членом роли, заданной в правиле регистрации события.
Исправлена ошибка, из-за которой запись журнала делалась не в правильном файле, если была настроена ротация файлов журнала.
Исправлена проблема, из-за которой pg_proaudit не регистрировал события создания схем.
Исправлено поведение процесса logger при удалении роли из параллельного сеанса, настроенного в правиле регистрации событий.
Приложение pg_probackup обновлено до версии 2.8.9, в которой добавлена новая функциональность, улучшена производительность и исправлены некоторые ошибки:
Добавлена команда maintain, предназначенная для устранения проблем, которые могут возникать при принудительном завершении резервного копирования.
Добавлен параметр --lock-lifetime, который позволяет задавать тайм-аут для блокировок и может быть полезен для вычислительных сред с низкой скоростью соединения.
Стабилизировано сохранение первоначальных прав доступа к каталогам при запуске команды init.
Стабилизирована работа команды checkdb на удалённом сервере.
Повышена стабильность восстановления с валидацией на момент времени (PITR).
Исправлено некорректное поведение, которое могло наблюдаться при запуске ожидания потока передачи WAL в режиме доставки ARCHIVE.
Модуль pgpro_pwr обновлён до версии 4.9, в которой в основном улучшена производительность и исправлены некоторые ошибки. Основные изменения перечислены ниже:
Добавлена поддержка pgpro_stats 1.9.
Добавлена возможность определять режим сбора информации о размере отношений глобально при помощи параметра конфигурации pgpro_pwr.relsize_collect_mode расширения или для сервера при помощи функции set_server_size_sampling.
Добавлена возможность тонкой настройки сбора статистики сервера, которая включается вызовом функции set_server_setting. Она позволяет определять статистику для сбора.
Добавлена возможность предварительного просмотра параметров хранения таблиц и индексов в разделе отчёта «Schema object statistics» (Статистика по объектам схемы).
Расширение pgpro_stats обновлено до версии 1.9, в которую включены следующие усовершенствования и исправления:
Улучшена трассировка сеансов, которая теперь предоставляет больше информации. В частности, новый атрибут фильтра time_info управляет включением дополнительной информации в вывод трассировки сеансов, а новый параметр конфигурации pgpro_stats.trace_query_text_size позволяет ограничивать размер запроса в таком выводе.
Имена атрибутов фильтра explain_* трассировщика сеансов приведены в соответствие с именами параметров конфигурации трассировки сеансов.
Изменён формат файла выгрузки статистики и соответствующие процедуры сохранения/загрузки.
Реализовано отключение функциональности трассировки сеансов, если не указаны соответствующие фильтры.
Запрещено одновременно указывать pgpro_stats и pg_stat_statements в shared_preload_libraries. Если они указаны вместе, сервер баз данных не запустится.
Обновлено расширение pg_wait_sampling. Включены следующие исправления:
Исправлена проблема, из-за которой переменные GUC могли перезаписываться при использовании параллельных рабочих процессов.
Исправлена проблема с некорректными показаниями, которая могла возникать из-за условий гонки при выключенном параметре конфигурации pg_wait_sampling.sample_cpu.
Если вы производите обновление выпуска Postgres Pro Standard, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Версия ABI может измениться в корректирующем выпуске Postgres Pro. В таком случае при попытке запустить расширение возникает ошибка ABI mismatch (Несоответствие ABI), поэтому обязательно установите новую версию расширения, поставляемую с новым выпуском Postgres Pro, или перекомпилируйте стороннее расширение, чтобы использовать его с текущей версией Postgres Pro.
Если вы создаёте резервные копии с помощью pg_probackup и ранее обновили его до версии 2.8.0 или 2.8.1, обязательно обновите его до версии 2.8.2 или выше и сделайте полную резервную копию базы данных после обновления, поскольку резервные копии, созданные с использованием этих версий, могут быть повреждены. Чтобы проверить, повреждены ли резервные копии, созданные с помощью версий 2.8.0 или 2.8.1, можно использовать версию 2.8.2.
Начиная с Postgres Pro Standard 14.10.1, права ролей с атрибутом CREATEROLE ограничены, и для изменения свойств других ролей требуется наличие права ADMIN OPTION.
При обновлении до версии Postgres Pro 14.8.1 и выше обязательно обновите pg_probackup до версии 2.6.3 или выше, поскольку более ранние версии pg_probackup несовместимы с этими версиями Postgres Pro.
Для перехода с PostgreSQL или выпуска Postgres Pro Standard, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям в Замечаниях к выпуску Postgres Pro Standard 14.1.1.