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.