E.23. Postgres Pro Enterprise 9.6.6.3
Дата выпуска: 2018-01-17
E.23.1. Обзор
Этот выпуск основан на Postgres Pro Enterprise 9.6.6.2. В число ключевых усовершенствований по сравнению с Postgres Pro Enterprise 9.6.6.2 входят:
Улучшено расширение multimaster. В частности, внесены следующие изменения:
Исправлена логика завершения подготовленных транзакций после сбоя узла.
Устранены ошибки, возникавшие при выборе транзакций, применяемых в процессе автоматического восстановления.
Теперь операции
TRUNCATE
выполняются без глобальных блокировок на уровне кластера.Ускорено переключение состояния узла.
Решение рефери теперь сохраняется после перезагрузки узлов, выигравших в голосовании рефери.
Модуль pg_pathman обновлён до версии 1.4.9. Полный список изменений можно найти на вики-странице pg_pathman.
Внесено несколько исправлений в реализацию 64-битных идентификаторов транзакций.
Улучшена поддержка k-NN:
Исправлено выполнение запросов следующего типа с индексом-B-дерево:
SELECT * FROM tab WHERE col IN (1,2,3) ORDER BY col <-> 4
Добавлены межтиповые операторы определения расстояний, такие как int2 <-> int4, float4 <-> float8, date <-> timestamp и т. д.
Добавлен метод
ammatchorderbyop
.Добавлена возможность перепроверки расстояний для индексов SP-GiST. За подробностями обратитесь к описанию функции
leaf_consistent
в Разделе 60.3.
Реализация индексов RUM обновлена до версии 1.2 (см. Раздел F.55.)
Добавлена поддержка типа
anyarray
через классы операторовrum_anyarray_ops
иrum_anyarray_addon_ops
.
Утилита pg_probackup обновлена до версии 2.0.14.
Исправлено поведение
ptrack
и резервного копирования страниц в условиях гонки.Исправлено прерывание параллельного резервного копирования
ptrack
.Добавлено новое состояние резервного копирование (
ORPHAN
), указывающее, что одна из предыдущих резервных копий испорчена.
E.23.2. Миграция на версию 9.6.6.3
Процедура установки зависит от версии вашей текущей инсталляции.
Для обновления с версии Postgres Pro Enterprise, основанной на этом же основном выпуске PostgreSQL, выгрузка/восстановление данных не требуется. Но вместо pg_upgrade
вы должны использовать скрипт pgpro_upgrade
, входящий в состав этого дистрибутивного набора. Этот скрипт обновляет метаданные как требуется в связи с изменением номера каталога, произошедшим в Postgres Pro Enterprise 9.6.4.1, а также переименованием функции pgpro_build
в pgpro_source_id
. Если вы обновляете инсталляцию Postgres Pro Enterprise, используя бинарный пакет, скрипт pgpro_upgrade
запускается автоматически либо вам предлагается запустить его вручную.
Важно
Если вы запускаете pgpro_upgrade
вручную, вы должны остановить службу postgres. Этот скрипт должен запускать пользователь-владелец базы данных (обычно postgres), а переменная окружения PGDATA должна указывать на каталог, где располагается база данных. При попытке запустить pgpro_upgrade
от имени root произойдёт ошибка.
При обновлении с версии 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.