E.10. Postgres Pro Enterprise 12.16.2
Дата выпуска: 2023-09-14
E.10.1. Обзор
Этот выпуск основан на Postgres Pro Enterprise 12.16.1 и включает следующие изменения:
Устранены две проблемы, которые могли появляться после обновления Postgres Pro Enterprise при помощи pg_upgrade. Первая проблема заключалась в неправильном преобразовании идентификаторов мультитранзакций из 32-битного в 64-битный формат: идентификаторы мультитранзакций по ошибке увеличивались на 1, а файлы в подкаталогах
pg_multixact/members
иpg_multixact/offsets
в некоторых случаях смещались. Это проявлялось в ошибках вида «found multixact XXX from before relminmxid...» (найденный multixact XXX предшествует relminmxid...). Вторая проблема вызывала некорректное преобразование цепочки HOT из 32-битной в 64-битную и приводила к удалению промежуточных кортежей в цепочке HOT, но не влияла на данные.Устранены условия гонки во время блокировки ресурсов, что было вызвано упущением, привнесённым недавно при оптимизации сборщика мусора CFS, и могло приводить к потере данных. При этом в
pg_depend
могли оставаться записи, ссылающиеся на удалённые временные таблицы.Устранена утечка памяти в mchar.
E.10.2. Миграция на версию 12.16.2
Если вы производите обновление выпуска Postgres Pro Enterprise, базирующегося на той же основной версии PostgreSQL, достаточно просто установить новый выпуск в текущий каталог инсталляции.
Настоятельно не рекомендуется обновлять кластер с 32-битными идентификаторами транзакций на версии Postgres Pro Enterprise ниже 12.16.2 при наличии мультитранзакций в базе данных, поскольку это может вызвать повреждение данных.
Для перехода с PostgreSQL, а также с выпуска Postgres Pro Standard или Postgres Pro Enterprise, базирующегося на предыдущей основной версии PostgreSQL, обратитесь к инструкциям по миграции на версию 12.