E.32. Postgres Pro Enterprise 9.6.1.2

Дата выпуска: 2016-12-15

E.32.1. Обзор

Этот выпуск основан на PostgreSQL 9.6.1 и включает следующие важные улучшения:

  • Добавлен алгоритм поиска k ближайших соседей (KNN) для SP-GiST и B-дерева (см. Главу 60)

  • В качестве отдельного модуля добавлена реализация индексов RUM, основанная на GIN (см. Раздел F.55)

  • Уменьшен прирост WAL при операциях CREATE INDEX с индексами GiST, GIN, SP-GiST

  • Добавлен тайм-аут для простаивающих сеансов на стороне сервера (см. idle_session_timeout)

  • Добавлена поддержка алгоритма SHA-2 для шифрования паролей (см. Подраздел 20.3.2)

  • Добавлено сжатие на уровне страниц (CFS) (см. Главу 31)

  • Добавлена поддержка автономных транзакций (см. Главу 16)

  • Добавлен новый дополнительный рабочий процесс для планирования задач по правилам (см. pgpro_scheduler)

  • Добавлена поддержка перемещаемых таблиц (см. pg_transfer)

  • Добавлено расширение pg_hint_plan (см. Раздел F.38)

  • Для идентификаторов транзакций на 64-битных платформах используется 64-битный тип данных

  • Отложенное размещение временных таблиц на диске

  • Согласованное чтение на ведомых серверах (ожидание применения WAL, см. WAITLSN)

  • Добавлена утилита pg_repack (см. pg_repack)

  • Менеджер резервного копирования pg_arman, входивший в Postgres Pro Standard 9.5, заменён на pg_probackup 1.0 (См. pg_probackup).

  • Добавлено исправление модуля pg_buffercache, улучшающее поведение базы данных, когда к ней подключены средства мониторинга.

  • Добавлена функция pgpro_edition(), которая возвращает название редакции Postgres Pro, standard или enterprise.

Добавлено несколько модулей для поддержки системы 1С:Предприятие:

Также для поддержки 1С в код ядра были внесены следующие доработки:

  • Блокировки на уровне приложения

  • Оптимизация условий диапазона в предложении WHERE

Из Postgres Pro Standard 9.5 перенесены следующие ключевые доработки:

  • Реализация покрывающих индексов, которую осуществила Анастасия Лубенникова (правка в git: 91b4e25614247833d7960c49d783f69b90c0c149) (Подробности: http://www.postgresql.org/message-id/f90aa60a-b67f-95b5-d9f5-f5d8ced178c6@postgrespro.ru/)

    Переход к использованию ICU (правка в git: ee711324f31cc039e656ea45c54abd0cf8ea3e41)

    Исправления в системе сборки win32 (правка в git: 84fa653ee00ebe54f591b18e3664fa6d5889224f)

    Добавлена SQL-функция pgpro_version и соответствующие определения в pg_config.h (правка в git: 671a7525541aa3eece366dae4249aa43a56a2168)

    Внедрение механизма PTRACK (правка в git: cea0987364070600fe640df0050d285b53cafb00)

    Добавление сортировки в тест index_including для исправления 32-битной сборки для FreeBSD (правка в git: fd9fc27d40b5dd4db611418bb848760154ec9f55)

Из Postgres Pro Standard 9.5 были перенесены следующие модули:

E.32.2. Миграция на версию 9.6.1.2

Тем, кто хочет мигрировать данные из любой предыдущей основной версии, необходимо выполнить выгрузку/загрузку данных с помощью pg_dumpall или воспользоваться pg_upgrade.

При миграции с PostgreSQL или Postgres Pro Standard необходимо произвести выгрузку/восстановление базы.

Для обновления с предыдущих выпусков Postgres Pro Standard или с PostgreSQL 9.6.x требуется произвести некоторые изменения в каталоге.

Если вы используете бинарные пакеты, и ваша база данных расположена в стандартном месте, эти обновления будут выполнены автоматически. Если вы разместили ваши базы данных в нестандартном месте, самостоятельно вызывая initdb, необходимо выполнить для этих баз скрипт pgpro_upgrade, включённый в данный дистрибутивный пакет.

Перед запуском скрипта следует остановить сервис postgres. Скрипт должен запускать пользователь-владелец файлов базы (обычно postgres). В момент запуска переменная среды PGDATA должна указывать на обновляемую базу.