E.1. Postgres Pro Enterprise 12.5.1

Дата выпуска: 2020-11-01

E.1.1. Обзор

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

  • Появилась поддержка семейства операционных систем ОСнова. А именно, добавлена поддержка системы ОСнова 2.0.

  • Прекращена поддержка системы CentOS 6.

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

  • Приложение mamonsu обновлено до версии 2.6.2.

  • pgbouncer обновлён до версии 1.15.

  • Увеличена точность замеров в pgbench при использовании указания --default-isolation-level. Теперь уровень изоляции по умолчанию задаётся в переменной окружения PGOPTIONS, благодаря чему значения TPS вычисляются согласованно, как с указанием --connect, так и без него.

  • Исправлена реализация CFS, что должно кардинально ускорить выполнение pg_basebackup для баз данных, содержащих множество небольших таблиц. Ранее для каждого копируемого отношения генерировался почти мегабайт нулей.

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

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

  • Ликвидирован дефект, в результате которого в процессе REINDEX CONCURRENTLY могли образовываться некорректные связи индексов с типами, что затем проявлялось в ошибках "cache lookup failed for type xxx"(ошибка поиска в кеше для типа xxx) при выполнении VACUUM ANALYZE. Если ранее вы производили переиндексирование в этом режиме и наблюдаете подобные ошибки, устранить их можно, выгрузив/восстановив данные или удалив/создав индексы, либо обратившись к нашей службе поддержки.

  • Обновлено расширение pgpro_scheduler:

    • Теперь планировщик pgpro_scheduler находится в состоянии ожидания на ведомом сервере и будет активирован, когда ведущий станет ведомым. Он не работал на ведомом сервере и раньше, но при этом выдавал массу сообщений об ошибках.

    • Точность указания времени для заданий pgpro_scheduler увеличена до секунд. Также теперь помимо строк crontab могут использоваться предопределённые ключевые слова.

  • Улучшен модуль multimaster:

    • Увеличен максимальный размер идентификатора транзакции, задаваемого в команде PREPARE TRANSACTION. Теперь этот размер составляет 200 байт, тогда как ранее такие идентификаторы не могли занимать больше 31 байта.

    • Устранена ошибка, которая могла приводить к краху процесса mtm-logrep-receiver в случае невозможности запуска дополнительного динамического процесса. В частности, этот процесс мог не запуститься из-за недостаточно большого значения max_worker_processes.

E.1.2. Миграция на версию 12.5.1

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

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