E.19. Postgres Pro Enterprise 9.6.9.1
Дата выпуска: 2018-06-01
E.19.1. Обзор
Этот выпуск основан на PostgreSQL 9.6.9 и Postgres Pro Enterprise 9.6.8.2. Все усовершенствования, унаследованные от PostgreSQL 9.6.9, описаны в Замечаниях к выпуску PostgreSQL 9.6.9. По сравнению с Postgres Pro Enterprise 9.6.8.2 эта версия также содержит следующие изменения:
Скорректированы правила экранирования значений конфигурационных переменных в
multimaster
.В модуле pg_wait_sampling ликвидировано возможное повреждение памяти в Windows.
Устранены проблемы при работе с памятью в модуле aqo.
Исправлено некорректное вычисление дельты при сдвиге эпохи.
Доработано расширение mchar для правильной сортировки букв «й» и «ё». Перестройте индексы, использующие типы
mchar
илиmvarchar
, с помощью командыREINDEX
.Утилита pg_probackup обновлена до версии 2.0.17, в которой появились новые возможности:
Режим
DELTA
, в котором считываются все файлы данных в каталоге данных и создаётся инкрементальная копия для страниц, изменённых со времени предыдущего копирования.Новые параметры команд
restore
иvalidate
:Параметр
--immediate
останавливает восстановление, как только достигается согласованное состояние.Параметр
--recovery-target-action
задаёт действие, которое должен выполнить сервер по достижении цели восстановления.Параметр
--recovery-target-name
указывает именованную точку сохранения, вплоть до которой будут восстановлены данные кластера.С
--write-recovery-conf
в каталог вывода записывается минимальный файлrecovery.conf
для упрощения настройки резервного сервера.
За подробностями обратитесь к pg_probackup.
Доработка PTRACK обновлена до версии 1.6.
Теперь ptrack не отслеживает нежурналируемые отношения.
Обновлён модуль jsquery.
Модуль
pg_pathman
обновлён до версии 1.4.11. Эта версия по сравнению с 1.4.9 включает следующие усовершенствования:Устранена проблема с дублированием записей в результатах запросов с наследованными таблицами. Вообще говоря, многоуровневое секционирование
pg_pathman
не поддерживает.Устранена ложная ошибка
table is being partitioned now
(таблица сейчас секционируется), возникавшая вpartition_table_concurrently()
.Ослаблена обработка ограничения-проверки.
Исправлено некорректное использование
memcpy()
вstart_bgworker()
.Полный список изменений можно найти на вики-странице pg_pathman.
Произведено исправление ряда ошибок в модуле shared_ispell.
Усовершенствована версия Postgres Pro Enterprise для Windows:
Устранена возникавшая в Windows проблема при вставке из буфера обмена в psql строк, содержащих знаки из разных наборов символов.
Усовершенствован алгоритм оптимизации предлагаемой по умолчанию конфигурации.
Теперь, устанавливая Postgres Pro в командной строке, вы можете отключить оптимизацию конфигурации, присвоив в INI-файле параметру
needoptimization
значение0
.
E.19.2. Миграция на версию 9.6.9.1
Процедура установки зависит от версии вашей текущей инсталляции.
Для обновления с версии Postgres Pro Enterprise, основанной на этом же основном выпуске PostgreSQL, выгрузка/восстановление данных не требуется. Но вместо pg_upgrade
вы должны использовать скрипт pgpro_upgrade
, входящий в состав этого дистрибутивного набора. Этот скрипт обновляет метаданные как требуется в связи с изменением номера каталога, произошедшим в Postgres Pro Enterprise 9.6.4.1. Если вы обновляете инсталляцию Postgres Pro Enterprise, используя бинарный пакет, скрипт pgpro_upgrade
запускается автоматически либо вам предлагается запустить его вручную.
Важно
Если вы запускаете pgpro_upgrade
вручную, вы должны остановить службу postgres. Этот скрипт должен запускать пользователь-владелец базы данных (обычно postgres), а переменная окружения PGDATA должна указывать на каталог, где располагается база данных. При попытке запустить pgpro_upgrade
от имени root произойдёт ошибка.
При обновлении с версии 9.6.8.2 и ниже вы должны перестроить индексы, в которых используются типы mchar
или mvarchar
.
При обновлении с версии 9.6.2.1 и ниже вы должны перестроить индексы GiST, построенные по столбцам типа intarray
.
Примечание
В дистрибутивах Linux с системой пакетов RPM при обновлении с версии 9.6.1.2 или более ранней вы должны переименовать каталог данных pgsql
в pgproee
до запуска скрипта pgpro_upgrade
script.
Для перехода с ванильной версии PostgreSQL 9.6.x или Postgres Pro сначала установите последний корректирующий выпуск для этой версии, а затем выполните выгрузку/восстановление данных, используя pg_dumpall.