E.26. Postgres Pro Standard 11.2.1

Дата выпуска: 2019-03-26

E.26.1. Обзор

Этот выпуск основан на PostgreSQL 11.2 и Postgres Pro Standard 11.1.1. Все усовершенствования, унаследованные от PostgreSQL 11.2, перечислены в Замечаниях к выпуску PostgreSQL 11.2.

В число ключевых усовершенствований по сравнению с Postgres Pro Standard 11.1.1 входят:

  • Исправлена ошибка при обработке запросов с множеством предложений OR, приводившая к дублированию результатов и нарушению порядка сортировки.

  • Устранён дефект, провоцирующий сбой сервера при использовании нестрогих агрегатных функций.

  • Изменена модель распространения утилиты pg_probackup:

    • В Linux программа pg_probackup теперь предоставляется в пакете pg-probackup-std-11. В системах на базе Debian или Альт Линукс для обновления Postgres Pro Standard с версии 11.1.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.

  • В SUSE Linux Enterprise Server и системах на базе RHEL несколько утилит перемещены в другие пакеты для согласованности с другими дистрибутивами Linux: pg_receivewal и pg_recvlogical теперь содержатся в пакете postgrespro-std-11-client, а pg_rewind, pg_waldump и pg_upgrade — в пакете postgrespro-std-11-server.

  • Интегрировано исправление, позволяющее избежать условий гонки в процессе dsm_attach() при повторном использовании указателей DSM; в ванильном PostgreSQL это исправление запланировано только в будущих выпусках. Ожидается, что в результате разрешатся проблемы, при которых сервер выдаёт следующее сообщение об ошибке: ERROR: dsa_area could not attach to segment (ОШИБКА: dsa_area не может получить доступ к сегменту).

  • Исправлена работа pg_upgrade с ограничениями доменов, зависящими от правил сортировки. Такие ограничения теперь проверяются в процессе обновления, тогда как в предыдущих версиях Postgres Pro они всегда помечались в новом кластере как непроверенные.

  • Налажена работа pg_dump с базами данных предыдущей основной версии Postgres Pro.

  • Исправлен скрипт pg-setup; теперь с ключом -D он позволяет инициализировать кластер в нестандартном расположении.

  • Улучшена оценка избирательности для индексов, построенных по логическим столбцам.

  • Устранено снижение производительности при сканировании только индекса, когда индекс построен по множеству полей.

  • Ускорено создание индексов и минимизировано нежелательное вытеснение страниц отношений из общих буферов при построении индексов.

  • Прекращена поддержка систем Альт Линукс СПТ 6.0 и Windows 7 SP1.

  • Модуль 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:

    • Добавлена поддержка переменных-массивов.

    • Повышена стабильность модуля.

    • Исправлено удаление пустых пакетов. Теперь пустой пакет будет удаляться только после завершения транзакции, в которой он был опустошён.

    (См. Раздел F.42.)

E.26.2. Миграция на версию 11.2.1

Если вы производите обновление выпуска Postgres Pro Standard, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.

Так как в Postgres Pro Standard 11.2.1 была изменена модель распространения pg_probackup, при переходе с предыдущей версии в системе на базе Debian и Альт Линукс выполните apt dist-upgrade (или apt-get dist-upgrade), чтобы корректно обработались все новые зависимости. В Windows для завершения обновления вам нужно будет запустить отдельный инсталлятор pg_probackup.

Для перехода с PostgreSQL или выпуска Postgres Pro Standard, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям в Замечаниях к выпуску Postgres Pro Standard 11.1.1. Если вы выбираете вариант с выгрузкой/восстановлением данных, обязательно используйте параметр --add-collprovider, чтобы в восстановленной базе данных у основного правила сортировки был корректный провайдер.