E.1. Postgres Pro Standard 17.0.1 #
Дата выпуска: 2024-11-02
E.1.1. Обзор #
Этот выпуск основан на PostgreSQL 17 и включает все новые возможности, появившиеся в PostgreSQL 17. Их подробное описание вы можете найти в Замечаниях к выпуску PostgreSQL 17. Ниже перечислены другие основные изменения и усовершенствования:
Добавлены подкоманды
SPLIT PARTITION
иMERGE PARTITIONS
в командуALTER TABLE
. Подкоманды позволяют улучшить управление секционированными таблицами: первая разделяет одну секцию на несколько, вторая объединяет несколько секций в одну.Удалена возможность создания конструкций с вызовом функции
JSON_EXISTS()
с предложениемRETURNING
, которое в более ранних версиях позволяло возвращать значения любого типа. Этот синтаксис не поддерживается стандартом SQL/JSON, согласно которому предикатJSON_EXISTS()
должен возвращать только TRUE, FALSE или UNKNOWN.Добавлено расширение pgpro_autopart, обеспечивающее динамическое создание секций с помощью триггеров для представлений секционированных таблиц.
Драйвер ODBC обновлён до версии 17.00.0002.
Модуль aqo обновлён до версии 3.0, в которую включены следующие основные изменения и усовершенствования:
Реализован режим «песочницы», позволяющий работать в изолированной среде, не затрагивая основную базу знаний aqo. Этот режим можно включить как на ведущем, так и на резервном узле, установив для параметра aqo.sandbox значение
on
.Добавлен механизм обучения, при котором aqo корректирует оценку количества строк планировщика с помощью собственных предсказаний. Его можно включить с помощью параметра aqo.delta_rows.
Расширение oracle_fdw обновлено до версии 2.7.0.
Модуль orafce обновлён до версии 4.13.5.
Утилита pgpro_controldata обновлена до версии 17.1.0.
Утилита pg_filedump обновлена до версии 17.1.
Приложение pg_probackup обновлено до версии 2.8.4.
Модуль pgpro_pwr обновлён до версии 4.7, в которой улучшена производительность и добавлены новые возможности. Основные изменения перечислены ниже:
Механизм промежуточных выборок для сбора относительно быстро меняющихся данных.
Новые таблицы отчётов, в частности касающиеся состояний сеансов.
Поддержка новых статистик Postgres Pro 17.
Возможность не сбрасывать статистику расширения по сбору статистики при получении выборки.
Расширение pgpro_stats обновлено до версии 1.8, в которой добавлена поддержка Postgres Pro 17. Основные изменения перечислены ниже:
Обновлены представления
pgpro_stats_statements
иpgpro_stats_totals
, чтобы включить новые поля, добавленные в модуль pg_stat_statements. Также были обновлены соответствующие функции.Упорядочен доступ к представлениям и функциям. В частности, доступ к представлениям
pgpro_stats_archiver
,pgpro_stats_vacuum_database
,pgpro_stats_vacuum_tables
иpgpro_stats_vacuum_indexes
был предоставлен всем пользователям. Ранее для этих представлений требовалось явное предоставление прав доступа. Доступ к выполнению функцииpgpro_stats_trace_reset
, которая ранее могла быть выполнена любым пользователем, ограничен суперпользователями.
Модуль pg_repack обновлён до версии 1.5.1.
Расширение PLV8 обновлено до версии 3.2.3.
Расширение tds_fdw обновлено до версии 2.0.4.
Удалено признанное устаревшим расширение pg_pathman.
Список расширений и дополнительных утилит Postgres Pro Standard, а также основных видимых пользователю отличий от ванильной версии PostgreSQL приведён в Разделе 2.
E.1.2. Миграция на версию 17 #
Вы можете перейти на Postgres Pro Standard 17 с той же или предыдущей версии PostgreSQL (которая поддерживается выбранным способом обновления) и с предыдущей версии Postgres Pro Standard. То же самое справедливо для перехода на Postgres Pro Standard Certified 17. Способы обновления кластера баз данных описаны в Разделе 17.6. Если у вас возникнут проблемы при переходе на новую версию, обратитесь в службу поддержки Postgres Pro Standard. Обратный переход не поддерживается. Обратите внимание, что переход с Postgres Pro Standard на Postgres Pro Standard Certified той же основной версии (или наоборот) — это обновление на совместимую версию Postgres Pro (за подробным описанием обратитесь к Разделу 17.6).
Для перехода с PostgreSQL или выпуска Postgres Pro Standard, базирующегося на предыдущей основной версии PostgreSQL, сначала установите его последний корректирующий выпуск, а затем выполните выгрузку/восстановление данных, применив pg_dumpall, или воспользуйтесь pg_upgrade.
Если вы мигрируете с Postgres Pro Standard версии 16 или 15 и база данных содержит объекты, использующие недопустимый синтаксис JSON_EXISTS()
с RETURNING
, удалите их или замените на корректные, прежде чем выполнять обновление.
Если вы решите использовать pg_upgrade, важно инициализировать новый кластер баз данных с совместимыми параметрами. В частности, обратите внимание на характеристику контрольных сумм в кластере, который вы будете обновлять. Если pg_upgrade создаст какие-либо скрипты SQL в текущем каталоге, выполните их для завершения обновления.
При обновлении инсталляции версии 10 или ниже рекомендуется выполнять выгрузку/восстановление данных. При этом возможные нарушения ограничений вам придётся устранить вручную. Если вариант с выгрузкой данных для вас неприемлем, использовать метод pg_upgrade, при котором в некоторых случаях может нарушиться целостность индексов и ограничений, следует при участии специалистов поддержки Postgres Pro Standard.
Примечание
Во избежание конфликтов не используйте пакет postgrespro-std-17
для установки исполняемых файлов Postgres Pro, а установите вместо него отдельные пакеты компонентов продукта. В этом случае режим автозапуска сервера, если он требуется, нужно будет включить вручную. Подробнее о предоставляемых пакетах вы можете узнать в Главе 16.
Особенности обновления, унаследованные от ванильной версии PostgreSQL, описаны в Разделе E.2.