E.21. Postgres Pro Enterprise 13.5.1
Дата выпуска: 2021-12-27
E.21.1. Обзор
Этот выпуск основан на PostgreSQL 13.5 и Postgres Pro Enterprise 13.4.1. Все изменения, унаследованные от PostgreSQL 13.5, описаны в Замечаниях к выпуску PostgreSQL 13.5. По сравнению с Postgres Pro Enterprise 13.4.1 эта версия также содержит следующие изменения:
Приложение pg_probackup обновлено до версии 2.5.4, в которой устранены следующие проблемы:
Одна из проблем была связана с поведением
catchup
в режимахDELTA
иPTRACK
. Она могла проявляться, когда использовалось удалённое подключение через SSH и в параметрах--destination-pgdata
и--source-pgdata
задавался одинаковый путь, и вызывала повреждение исходного экземпляра (как минимум удалялись файлыglobal/pg_control
,global/pg_filenode.map
иbase/*/pg_filenode.map
); в результате выводилось сообщение вида «Could not open file "/pgwal/test/global/pg_control" for reading: No such file or directory» («Не удалось открыть для чтения файл "/pgwal/test/global/pg_control": нет такого файла или каталога»).Другая проблема могла возникнуть, когда исходная БД не находилась на линии времени 1 и целевая не отставала от исходной: probackup проверял целостность истории линии времени
catchup
и выводил сообщение об ошибке «Destination is not in source timeline history» (Целевого состояния нет в истории исходной линии времени).Ещё одна проблема касалась архивирования WAL из каталога за пределами каталога данных. Ранее многопоточная и пакетная оптимизации команды
archive-push
препятствовали такому архивированию; теперь можно архивировать WAL из любого каталога, но если он находится за пределами каталога данных, многопоточная и пакетная оптимизации автоматически отключаются.
Устранены утечки памяти в процессе postmaster. Ранее при каждом подключении терялся небольшой объём памяти.
Улучшена производительность сканирования только индекса при обработке больших таблиц, благодаря увеличению размера кешируемой карты видимости. Теперь такие узлы планы могут выполняться в разы быстрее с таблицами больше 256 МБ.
В pg_dump исправлена ошибка при обработке статистики по 64-битным идентификаторам транзакций, что важно при обновлении Postgres Pro Enterprise с помощью pg_upgrade. Ранее значения более 232 в этой статистике передавались некорректно, что приводило к запуску автоочистки для предотвращения зацикливания идентификаторов транзакций.
Устранены две проблемы, возникавшие при обновлении кластера Postgres Pro Enterprise 9.6 до текущей основной версии с использованием pg_upgrade. Ранее преобразование карты свободного места для таблиц размером более 4 ТБ могло проходить некорректно, а также мог произойти сбой при обработке карты свободного места для таблицы очень большого размера.
Прекращена поддержка расширения sr_plan.
Приложение mamonsu обновлено до версии 3.1.0. Основные изменения перечислены ниже:
У команды
bootstrap
появилась новая возможность. Благодаря ей, если параметр-dbname
не указан явно, он автоматически примет значение, соответствующее имени базы данных, которое указано в разделе[postgres]
файла конфигурации mamonsu.Исправлена критическая проблема, которая могла возникнуть при пропуске шага
bootstrap
. В этом случае, хотя пользователь мог работать с mamonsu с правами суперпользователя, специальная схемаmamonsu
не создавалась, но после создания вспомогательного расширения pg_buffercache в любой другой схеме запуск mamonsu приводил к ошибкам «ERROR: relation "mamonsu.pg_buffercache" does not exist
» (ОШИБКА: отношение "mamonsu.pg_buffercache" не существует).
Добавлена поддержка ОС Альт Линукс 10.
Запрещены обращения к временным пространствам имён из автономных транзакций для обеспечения предсказуемого поведения.
Добавлена поддержка автоподготовки операторов, отправляемых по расширенному протоколу запросов. Для управления автоподготовкой на уровне протоколов был добавлен параметр autoprepare_for_protocol.
Минимальные поддерживаемые версии Windows повышены до Windows 10 и Windows Server 2012 R2.
В pg_dumpall устранена возможность использования небезопасного пути поиска.
Обновлено расширение pgpro_pwr. Основные улучшения новой версии:
В отчёт добавлен раздел «Load distribution» (Распределение нагрузки), в котором показывается, как распределена нагрузка по сильно загруженным объектам, таким как базы данных, приложения, узлы или пользователи, в разрезе ресурсов (общее время или количество записанных общих блоков и т. п.), в виде линейчатых диаграмм.
Добавлены таблицы отчётов «Session statistics by database» (Статистика сеансов по базам данных) и «WAL statistics» (Статистика WAL) на основании новых представлений и полей, появившихся в Postgres Pro 14.
Оператор
WAITLSN
признан устаревшим.В CFS задействована функциональность разреженных файлов в Windows, благодаря чему оптимизируется размер файлов
*.cfm
на диске (до 1 МБ для каждого файла).
E.21.2. Миграция на версию 13.5.1
Если вы производите обновление выпуска Postgres Pro Enterprise, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Если вы ранее мигрировали на Postgres Pro Enterprise версии 13.3.1 или ниже, обязательно перестройте индексы GIN, выполнив команду REINDEX
.
Если вы используете PTRACK в процедуре резервного копирования, реализуемой c помощью утилиты pg_probackup, и обновляетесь с Postgres Pro Enterprise версии 13.2.2 или ниже, сделайте полную резервную копию базы данных после обновления.
Если в вашей инсталляции Postgres Pro Enterprise 13.2.1 имеются сжатые табличные пространства, созданные без явного выбора алгоритма pglz
, произведите обновление следующим образом. До обновления выгрузите полный дамп, используя pg_dumpall. Обновите Postgres Pro Enterprise, пересоздайте кластер баз данных и восстановите все данные из дампа. Затем вы можете создать табличные пространства CFS по прежней схеме.
Если вы уже обновили инсталляцию Postgres Pro Enterprise 13.2.1 с табличными пространствами CFS и потеряли доступ к сжатым данным, обратитесь к службе поддержки.
Для перехода с PostgreSQL, а также с выпуска Postgres Pro Standard или Postgres Pro Enterprise, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям по миграции на версию 13.