E.14. Postgres Pro Standard 9.6.12.1
Дата выпуска: 2019-03-19
E.14.1. Обзор
Этот выпуск основан на PostgreSQL 9.6.12 и Postgres Pro Standard 9.6.11.1. Все усовершенствования, унаследованные от PostgreSQL 9.6.12, перечислены в Замечаниях к выпуску PostgreSQL 9.6.12.
В число ключевых усовершенствований по сравнению с Postgres Pro Standard 9.6.11.1 входят:
- Изменён метод аутентификации по умолчанию для инсталляций в системах SUSE Linux Enterprise Server, а также Red Hat Enterprise Linux 7 и производных от них. Теперь локальные подключения используют метод - peer, а сетевые —- md5. За подробным описанием поддерживаемых методов аутентификации обратитесь к Разделу 19.3.
- Интегрировано исправление, позволяющее избежать условий гонки в процессе - dsm_attach()при повторном использовании указателей DSM; в ванильном PostgreSQL это исправление запланировано только в будущих выпусках. Ожидается, что в результате разрешатся проблемы, при которых сервер выдаёт следующее сообщение об ошибке:- ERROR: dsa_area could not attach to segment(ОШИБКА: dsa_area не может получить доступ к сегменту).
- Изменена модель распространения утилиты pg_probackup: - В Linux программа pg_probackup теперь предоставляется в пакете - pg-probackup-std-9.6. В Альт Линукс и ОС на базе Debian для обновления Postgres Pro Standard с версии 9.6.11.1 или ниже выполните- apt dist-upgrade(или- apt-get dist-upgrade), чтобы корректно обработались все новые зависимости пакетов.
- Для Windows теперь предоставляется отдельный инсталлятор pg_probackup. Прежде чем устанавливать pg_probackup, вы должны установить основные компоненты текущей версии Postgres Pro. 
 
- В интерактивном инсталляторе Postgres Pro для Windows появились новые возможности. Теперь вы можете: - Выбрать в качестве провайдера правил сортировки по умолчанию - icuили- libc. Ранее в отсутствие такого выбора в Postgres Pro Standard всегда выбирался провайдер- icu.
- Выбрать пользователя, который будет запускать службу Postgres Pro. По умолчанию служба Postgres Pro запускается от имени пользователя - NT AUTHORITY\NetworkService.
 
- В расширении amcheck ликвидированы ложные сигналы о нарушении структуры индексов, которые выражались в сообщениях: - ERROR: heap tuple lacks matching index tuple within index(ОШИБКА: для кортежа кучи отсутствует соответствующий кортеж в индексе).
- Устранено снижение производительности при сканировании только индекса, когда индекс построен по множеству полей. 
- Прекращена поддержка систем Альт Линукс СПТ 6.0 и Windows 7 SP1. 
- Утилита pg_probackup теперь корректно отслеживает в режиме - PTRACKизменения в индексах- rumи- bloom.
- Модуль - pg_pathmanобновлён до версии 1.5.5. Эта версия по сравнению с 1.5.2, поставляемой в предыдущем выпуске Postgres Pro, включает следующие усовершенствования:- Усовершенствованы скрипты обновления - pg_pathmanво избежание ошибок при миграции с основной версии 1.4 на 1.5 из-за различного числа атрибутов- pg_configв этих версиях.
- Повышена стабильность - pg_pathman:- Попытки вызова функций - pg_pathmanпри отключённом расширении теперь не будут приводить к сбоям сервера; вместо этого будут выдаваться ошибки.
- К одной и той же таблице могут быть применены различные стратегии секционирования. 
 
 
- Модуль - pg_variablesобновлён до версии 1.2. По сравнению с версией, поставляемой в предыдущем выпуске Postgres Pro, она включает следующие усовершенствования:- Добавлена поддержка переменных-массивов. 
- Повышена стабильность модуля. 
- Исправлено удаление пустых пакетов. Теперь пустой пакет будет удаляться только после завершения транзакции, в которой он был опустошён. 
 - (См. Раздел F.44.) 
E.14.2. Миграция на версию 9.6.12.1
Процедура установки зависит от версии вашей текущей инсталляции.
Для обновления СУБД с версии Postgres Pro Standard, основанной на предыдущей основной версии PostgreSQL, вы должны установить последний корректирующий выпуск для вашей версии, а затем выполнить выгрузку/восстановление данных, применив pg_dumpall, или воспользоваться утилитой pg_upgrade.
Для обновления с версии Postgres Pro Standard, основанной на этом же основном выпуске PostgreSQL, выгрузка/восстановление данных не требуется.
Так как в Postgres Pro Standard 9.6.12.1 была изменена модель распространения pg_probackup, при переходе с предыдущей версии в Альт Линукс или системе на базе Debian выполните apt dist-upgrade (или apt-get dist-upgrade), чтобы корректно обработались все новые зависимости. В Windows для завершения обновления вам нужно будет запустить отдельный инсталлятор pg_probackup.
При обновлении с версии 9.6.8.2 и ниже вы должны выполнить команду REINDEX для индексов, в которых используются типы mchar или mvarchar.
Если вы производите обновление с версии Postgres Pro Standard 9.6.7.1 или ниже, вы должны также воспользоваться скриптом pgpro_upgrade, предоставленным в данном дистрибутиве. Этот скрипт обновляет метаданные для смены формата номера каталога, изменившегося после Postgres Pro Standard 9.6.4.1, а также переименовывает функцию pgpro_build в pgpro_source_id. Если вы обновляете инсталляцию Postgres Pro, используя бинарный пакет, скрипт pgpro_upgrade запускается автоматически, либо вам предлагается запустить его вручную.
Примечание
Если вы запускаете pgpro_upgrade вручную, вы должны остановить службу postgres. Этот скрипт должен запускать пользователь-владелец базы данных (обычно postgres). При попытке запустить pgpro_upgrade от имени root произойдёт ошибка. За подробностями обратитесь к описанию pgpro_upgrade.
Если вы скомпилировали Postgres Pro из исходного кода или создали базу данных в нестандартном расположении, вы должны запустить скрипт pgpro_upgrade вручную.
Примечание
В дистрибутивах Linux с системой пакетов RPM при обновлении с версии 9.6.2.1 или более ранней вы должны переименовать каталог данных pgsql в pgpro до запуска скрипта pgpro_upgrade.
Для перехода с ванильной версии PostgreSQL 9.6.x сначала установите последний корректирующий выпуск для этой версии, а затем выполните выгрузку/восстановление данных, используя pg_dumpall.