E.3. Postgres Pro Standard 17.4.1 #
Дата выпуска: 2025-03-03
E.3.1. Обзор #
Этот выпуск основан на PostgreSQL 17.4 и Postgres Pro Standard 17.2.1. Все усовершенствования, унаследованные от PostgreSQL 17.4, перечислены в Замечаниях к выпуску PostgreSQL 17.4. Другие важные изменения и улучшения перечислены ниже:
- В выходные файлы - crash_infoдобавлены новые сведения, например текущий рабочий каталог, каталог- PGDATAи т. д.
- Добавлены повышенные требования безопасности для команды CREATE PROFILE. Теперь при использовании параметра - PASSWORD_REQUIRE_COMPLEXпароли должны содержать символы из трёх разных групп. Также все буквы или их аналоги в языках без разделения на регистры (хинди, китайский и т.п.) в кодировке UTF-8 считаются строчными буквами.
- Устранена проблема, из-за которой при включённом параметре - crash_infoмогли не записываться диагностические файлы во время обработки переполнения стека. Ранее обработчик сигналов запускался на стеке с переполнением, что могло помешать его запуску из-за нехватки памяти. Теперь обработчик использует альтернативный стек.
- Устранена проблема при пользовательском сканировании, которая могла приводить к некорректному состоянию плана запроса и возникновению ошибки при использовании pgpro_stats. 
- Устранена проблема, из-за которой роли без явно заданного атрибута - VALID UNTILи связанные с профилем, у которого для PASSWORD_GRACE_TIME установлено значение 0, а для- PASSWORD_LIFE_TIME—- UNLIMITED, некорректно получали предупреждения об истечении срока действия пароля. Теперь пароли корректно считаются действительными бесконечно.
- Обновлён модуль aqo. Реализован режим - auto, который работает как режим- learn, но предотвращает переполнение памяти, реализуя механизм вытеснения из кеша давно неиспользуемых (LRU, least recently used) данных.
- Оптимизирован модуль fasttrun для пропуска ненужных операций усечения пустых временных отношений. 
- Приложение mamonsu обновлено до версии 3.5.11, в которую включена поддержка pgpro_stats версии 1.8. 
- Приложение pgbadger обновлено до версии 13.0. 
- pgbouncer обновлён до версии 1.24.0. 
- Расширение pg_portal_modify обновлено до версии 0.3.5. 
- Обновлено расширение pg_proaudit. Включены следующие исправления и усовершенствования: - Добавлено новое поле событий: имя пользователя сеанса. Теперь события содержат информацию об атрибутах - session_userи- current_userSQL-сеанса.
- Добавлена поддержка новых классов событий: - ALL_DDL_NONTEMPи- ALL_DML_NONTEMP. Область действия этих классов ограничена объектами, не находящимися во временных схемах- pg_temp_.- nnn
- Исправлено внесение в журнал событий - SELECT FOR UPDATEи- SELECT FOR KEY SHARE: теперь они корректно указываются как команды- SELECT, а не- UPDATE.
 
- Приложение pg_probackup обновлено до версии 2.8.7, в которой улучшена производительность и исправлены некоторые ошибки: - Устранена проблема с механизмом многопоточного копирования файлов, предотвращающим многократное копирование одного файла. Ранее из-за этой проблемы могла не создаваться резервная копия при высокой нагрузке на сервер. 
- Уровень записи в журнал сообщений вида «checking WAL file name» (проверка имени файла WAL), выдающихся при выполнении команды - showс параметром- --archive, понижен с- INFOдо- VERBOSE.
- Изменена логика команды - add-instance: теперь обязательно использовать параметр- -D, указывающий путь к каталогу. Команда- add-instanceбольше не использует переменную среды- PGDATAкак расположение каталога, а требует явного указания пути к каталогу в параметре команды.
 
- Модуль pgpro_pwr обновлён до версии 4.8, в которой добавлены новые возможности и исправлены некоторые ошибки. Основные изменения перечислены ниже: - Добавлено отслеживание версий расширений, установленных в кластере, в новом разделе отчёта. 
- Добавлена возможность скрыть данные для определённых баз данных в отчёте. Для этого в функции формирования отчёта добавлен новый параметр, принимающий массив исключаемых баз данных. 
 
- Расширение pgpro_stats обновлено до версии 1.8.1, в которую включены следующие усовершенствования и исправления: - Устранена проблема, которая могла возникнуть во время трассировки сеанса и вызвать ошибки «could not write file ""pg_stat/pgpro_stats_filters.trace.tmp"": No such file or directory» (не удалось записать файл ""pg_stat/pgpro_stats_filters.trace.tmp"": Такого файла или каталога не существует). Параллельная запись из разных сеансов в файл трассировки теперь работает корректно, и процессы могут выполнять запись в файл трассировки параллельно без конфликтов. 
- Реализована оптимизация, которая в некоторых случаях снижает время блокировки при копировании метрик из локальной памяти в общую. 
 
- Обновлён модуль pg_variables. Команда - DISCARD ALLтеперь очищает все пакеты и переменные в pg_variables.
- Обновлён модуль rum: изменено сообщение об ошибках, возникающих в случаях, когда в запросе - SELECTиспользуется- ORDER BY.
E.3.2. Миграция на версию 17.4.1 #
Если вы производите обновление выпуска Postgres Pro Standard, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Версия ABI может измениться в корректирующем выпуске Postgres Pro. В таком случае при попытке запустить расширение возникает ошибка ABI mismatch (Несоответствие ABI), поэтому обязательно установите новую версию расширения, поставляемую с новым выпуском Postgres Pro, или перекомпилируйте стороннее расширение, чтобы использовать его с текущей версией Postgres Pro.
Для перехода с PostgreSQL или выпуска Postgres Pro Standard, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям в Замечаниях к выпуску Postgres Pro Standard 17.0.1.