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С:Предприятие:
mchar (см. Раздел F.30)
fulleq (см. Раздел F.20)
fasttrun (см. Раздел F.18)
online_analyze (см. Раздел F.32)
plantuner (см. Раздел F.52)
Также для поддержки 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 были перенесены следующие модули:
hunspell-dict (см. Модули словарей Hunspell)
jsquery (см. Раздел F.27)
pg_variables (см. Раздел F.49)
pg_pathman (см. pg_pathman)
Этот модуль был обновлён до версии 1.2.2
pg_query_state (см. Раздел F.42)
shared-ispell (см. shared_ispell)
sr_plan (см. sr_plan)
dump_stat (см. dump_stat)
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 должна указывать на обновляемую базу.