E.3. Postgres Pro Enterprise 12.4.1

Дата выпуска: 2020-08-31

E.3.1. Обзор

Этот выпуск основан на PostgreSQL 12.4 и Postgres Pro Enterprise 12.3.1. Все изменения, унаследованные от PostgreSQL 12.4, описаны в Замечаниях к выпуску PostgreSQL 12.4. По сравнению с Postgres Pro Enterprise 12.3.1 эта версия также содержит следующие изменения:

  • Реализована высокоуровневая абстракция для оптимизированных циклов CAS, применяющихся прежде всего для обработки блокировок. В настоящий момент она наиболее эффективно задействуется на платформе PowerPC, обеспечивая заметное увеличение производительности при нагрузке, которой свойственны множественные блокировки.

  • Устранена ошибка в оптимизации планировщика, приводившая к неправильной оценке количества строк при включённом параметре enable_compound_index_stats.

  • Отключение повторного использования паролей теперь корректно работает с аутентификацией SCRAM. Ранее зашифрованный с применением SCRAM пароль использовался повторно, когда такое использование запрещалось.

  • Исправлена ошибка в расширении pgpro_scheduler, приводившая к тому, что функция schedule.stop() могла не остановить выполняющиеся задания.

  • Исправлено именование групп параметров GUC. Ранее было пропущено имя группы параметров Compressed File System (Сжатая файловая система), вследствие чего сдвигались имена других групп.

  • Улучшено расширение rum:

    • Оптимизирован полнотекстовый поиск в индексе по полю tsvector, содержащему веса лексем. При выполнении запросов с весами теперь не требуется перепроверять результаты этих запросов по таблице, так что они выполняются гораздо быстрее.

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

  • Реализовано удаление временных схем расширения multimaster (mtm_tmp_X_Y), которые могли оставаться после сбоя узла. Тем самым в случае сбоев предотвращается замусоривание каталога подобными потерянными схемами.

  • Ликвидирована процедура восстановления карты CFS, выполняемая при запуске сервера. Она могла вызывать условия гонки и при этом не совершала полезное действие.

  • Оформлена новая версия расширения multimaster для включения функциональности, реализованной в Postgres Pro Enterprise версии 11.8.1. Ранее эта функциональность оставалась недоступной при обновлении Postgres Pro Enterprise.

  • Приложение pg_probackup обновлено до версии 2.4.2:

    • Для большей гибкости добавлены новые параметры и флаги команд delete, backup, restore, archive-push и set-backup.

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

    • Во время восстановления теперь могут задаваться параметры Postgres Pro slot_name и primary_conninfo.

    • Существенно переработаны команды archive-push и archive-get.

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

    За подробностями обратитесь к документации pg_probackup.

  • Добавлен необязательный аргумент tune команды pg-setup initdb. С помощью этого аргумента вы можете выбрать для вашего кластера одну из предопределённых настроенных конфигураций.

  • Прекращена поддержка SUSE Linux Enterprise Server 11.

  • Исправлены дефекты в реализации BRIN, приводившие к следующим ошибкам:

    • "failed to find parent tuple for heap-only tuple ..." (не удалось найти родительский кортеж для неиндексированного кортежа...)

      Эта ошибка могла возникать, когда в параллельных транзакциях одновременно выполнялись функция brin_summarize_new_values() и изменения данных по методу HOT.

    • "corrupted BRIN index: inconsistent range map" (испорченный индекс BRIN: несогласованность в карте диапазонов)

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

  • Приложение mamonsu для Linux обновлено до версии 2.5.1. Теперь оно базируется на Python 3. Для Windows по-прежнему поставляется версия 2.3.4.

E.3.2. Миграция на версию 12.4.1

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

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