Что нового?#
Поддержка:
Выход патчей до выхода Pangolin 8.0.
Pangolin 6.5 (дата выпуска 31.03.2025)#
Изменения в технологическом стеке#
Добавлена поддержка ОС Astra Linux 1.8.
Прекращена поддержка ОС Альт 8 СП Релиз 8.4.
Повышена версия пакета Python для ОС Astra Linux 1.7.
Изменения функциональности#
Новое#
Реализован инструмент Pangolin Installer для управления скриптами развертывания.
Реализована утилита Pangolin Tuner для тюнинга параметров СУБД.
Реализована поддержка сжатия данных при записи на диск.
Добавлено расширение
pg_freeze_recoveryдля ручной коррекции работы VACUUM.Реализован режим
misc_set_roleдля параметраpgaudit.logаудита.Добавлена консольная утилита
get-pangolin-gucsдля получения списка GUC-параметров Pangolin.Добавлена функциональность отказа от эксклюзивной блокировки в процессе автоматического создания партиции.
Добавлена возможность полного отключения СЗИ.
Добавлен механизм переключения режимов транзакций Pangolin.
Реализован новый GUC-параметр
log2_num_buf_partitionsдля установки числа бакетов хеш-таблицы и количества легких блокировок в группеLWLock:BufferMapping.Расширение
pg_dbms_lockвключено в состав дистрибутива.Реализована оптимизация структуры хранения данных Performance Insights.
Для повышения производительности БД и увеличения времени безотказной работы отключен агрессивный режим работы
autovacuumпри использовании 64-битного счетчика транзакций.Реализованы мета-пакеты для установки зависимых rpm/deb-пакетов дистрибутива СУБД Pangolin.
Реализована функциональность управления размером памяти для подготовленных операторов.
Измененное#
Добавлена опция
validated-gucsутилитыpangolin-manager-ctl, возвращающая список параметров, для которых имеются валидаторы.Добавлена возможность назначения используемых портов через кастомный конфигурационный файл.
Оптимизирована проверка необходимости выполнения очистки таблицы расширением
fasttrun.В скрипты автоматизированного обновления добавлена функция, которая удаляет переменную
PATHсо старым значением пути до бинарных файлов базы данных в файле.bash_profile.Из скриптов автоматизированного обновления удалена функция, которая очищает исходные переменные подключения к базе данных по сертификатам в файле
.bash_profile.Изменен механизм проверки близости баз данных к порогу принудительной заморозки транзакций
autovacuum_freeze_max_age.Добавлены недостающие валидаторы для параметров СУБД.
Добавлены подсказки для выбора оптимальных параметров
ptrack.Реализован рефакторинг документа «Руководство по установке».
Компонент Pangolin Backup Tools обновлен до версии 1.2.4 в связи с изменением скрипта
pangolin_archlogs.sh.
Устраненные уязвимости#
CVE-2025-1094
Pangolin 6.4 (дата выпуска 31.10.2024)#
Изменения в технологическом стеке#
Добавлена поддержка CentOS Stream 9 и Platform V SberLinux OS Server 8.10.
Изменения функциональности#
Новое#
Pangolin DBMS#
Реализован механизм обновления системных каталогов Pangolin без изменения структуры данных.
Реализован механизм сбора информации о движении данных.
Реализована поддержка смещения значения LSN после переноса БД через
pg_dumpиpg_restore.Реализована функциональность оптимизации Partition Pruning для таблиц с композитным ключом секционирования. Реализован GUC-параметр
log2_num_buf_partitionsдля управления числом секций хеш-таблицы.Добавлена функциональность простой LRU-буферизации (SLRU) для файлов журнала состояния транзакций (PG17).
Добавлена возможность параллельного анализа.
Добавлены подсказки опережающего чтения с диска.
Добавлена проверка версии расширения
anonпри обновлении.В состав дистрибутива добавлен SWIDTAG-файл.
SBOM-файл включен в состав дистрибутива.
В состав дистрибутива включено расширение
vector.Реализована возможность поставки Docker-образа Pangolin DBMS.
Реализована возможность поставки сборки с отладочными пакетами.
Реализован контроль целостности передачи WAL на реплику.
Pangolin Pooler#
В административную консоль Pangolin Pooler добавлена команда
RESET_AUTH, которая сбрасывает в исходное состояние сквозную аутентификацию пользователей.
Удаленное#
Pangolin DBMS#
Удалена переменная
tagиз строки запуска скриптов установки.Функциональность управления службой мониторинга исключена из скриптов развертывания/обновления.
Измененное#
Pangolin DBMS#
Внесены доработки для повышения производительности.
Оптимизировано время проверки наличия свободного места в точке монтирования по пути сохранения локальной резервной копии для сценария обновления СУБД с переносом данных.
Оптимизирован вакуум глобального индекса.
Изменен вывод ошибок загрузки модулей при проверке контрольных сумм.
В скаутинг обновления добавлена проверка владельцев, групп и прав доступа для директорий СУБД (логи, локальный бэкап, data).
Изменен
bash_profileс целью отказа отvimи расширения функциональности вывода лога БД.В список поддерживаемых расширений
legal_extensionsдобавлены:vector,pg_surgery,pg_walinspect,anon.Добавлена проверка версии расширения
anonпри обновлении.
Устраненные уязвимости#
CVE-2024-7348
CVE-2023-0286
CVE-2024-6345
CVE-2020-14343
CVE-2022-23491
CVE-2021-33503
CVE-2023-32681
CVE-2023-29483
CVE-2024-35195
CVE-2024-5569
CVE-2024-10979
CVE-2024-10978
CVE-2024-10977
CVE-2024-10976
Pangolin 6.3 (дата выпуска 31.07.2024)#
Изменения в технологическом стеке#
Добавлена поддержка РЕД ОС 8 и Platform V SberLinux OS Server 8.9.
Добавлено расширение
citus(3rd party).
Изменения функциональности#
Новое#
Pangolin DBMS#
Реализована функциональность полноценного инкрементального резервного копирования.
Добавлено логирование изменений конфигурационных файлов при обновлении.
Добавлены сообщения аудита о включении и выключении трассировки сессии.
Добавлена запись в журнал аудита событий о неуспешной попытке подключения к несуществующей базе данных.
Реализована функциональность обфускации данных для создания тестовых полигонов.
Осуществлен переход на поставку дополнительных компонентов в виде rpm-пакетов.
Реализован параллелизм при построении и перестраивании глобальных индексов.
В скрипт разведчика обновления добавлена проверка корректности настройки
pg_profile.Добавлен конфигурационный параметр
ssl_legacy_provider.
Pangolin Manager#
Добавлен конфигурационный параметр
ssl_legacy_provider.
Pangolin Pooler#
Добавлен конфигурационный параметр
ssl_legacy_provider.
Удаленное#
Pangolin DBMS#
Исключена возможность создания сабиндекса глобального индекса при добавлении пустой партиции.
Измененное#
Pangolin DBMS#
Обеспечена возможность запуска трассировки сессий пользователем, не являющимся владельцем сессии при наличии необходимых прав.
Доработана утилита
setup_kms_credentials.Добавлена поддержка опции
pg_auth_config --database allдля повышения гибкости определения конфигурации аутентификации.Добавлена блокировка мажорного обновления с версий ниже 5.2.6 при наличии автопартиционированных таблиц.
Pangolin 6.2 (дата выпуска 30.04.2024)#
Изменения в технологическом стеке#
Добавлена поддержка операционной системы Альт 8 СП 10.
Добавлена поддержка расширения pgcopydb 0.15.
Изменения функциональности#
Новое#
Pangolin DBMS#
Реализована функциональность очистки высвобождаемого дискового пространства в процессе работы СУБД.
Реализован ролевой метод управления доступом по требованиям ФСТЭК для следующих ролей пользователей СУБД: администратор СУБД (
admin_dbms), администратор БД (admin_db), пользователь БД (user_db).Реализована функциональность контроля целостности конфигурации и объектов БД.
Расширены возможности аудита, добавлен атрибут «важность» для сообщений аудита.
Реализован механизм хранилища распределенных конфигураций с помощью Pangolin DCS.
Добавлено маскирование анонимных PL/PgSQL запросов.
Добавлена возможность управления действиями
create_trigger,alter_trigger,create_ruleиalter_ruleнад защищенными партиционированными таблицами.В скрипты обновления добавлен параметр, позволяющий задать параметры
ttlиretry_timoutдля Patroni DCS на период обновления.Добавлен новый параметр конфигурации
auth_idle_period, определяющий период не активности процесса сквозной аутентификации.Добавлен новый сценарий обновления исполняемых файлов. Включение сценария регулируется параметром в пользовательском конфигурационном файле
full_shutdown.Добавлена функциональность для контроля загрузки в адресное пространство СУБД расширений и библиотек.
Добавлена функциональность для контроля использования процедурных языков.
Клиентская часть DBMS выделена в отдельный RPM.
Добавлен параметр
systemctl_unit_on_user, отвечающий за расположениеunit-файлов компонентов СУБД Pangolin.В сервисные файлы службы утилиты перешифрования для старта была добавлена служба network-online.target.
Для утилиты решифрования добавлена возможность указания пути к PID-файлу с помощью параметра
--pid-file.Добавлена функция проверки параметров
local_backup_pathиPGDATA_OLDдля исключения возможности совпадения их точек монтирования.Добавлен вывод информационного сообщения при прикреплении DEFAULT партиции к автопартиционированной таблице.
Для утилиты решифрования добавлена возможность указания пути к каталогу для хранения логов
-L --log-dir.Для утилиты решифрования добавлена возможность ротации логов.
Pangolin Pooler#
Добавлен вывод команды SHOW POOLS в лог Pangolin Pooler.
Удаленное#
Защита схемы теперь не распространяется на операции удаления индексов таблиц этой схемы.
Компонент etcd исключен из скриптов обновления.
Измененное#
Pangolin DBMS#
Права на выполнение
DELETE/UPDATEбез праваSELECTнад защищенными объектами теперь предоставляет право на выполнение этих операций изменения данных в форме, предусматривающей выборку данных.Оптимизировано использование свободного места на жестком диске в процессе обновления СУБД, требующего миграции данных.
Расширен диапазон проверок входных параметров на допустимость переданных значений.
Ускорено время пересчета индексов в процессе обновления СУБД, требующего миграции данных.
Пользователь postgres по умолчанию создается как системный.
Изменен расчет смещения секций при автопартиционировании для типов данных, содержащих даты.
Виртуальное окружение для работы ansible скриптов было перенесено в rpm вид, а также был изменен путь развертывания.
Pangolin 6.1 (дата выпуска 15.12.2023)#
Изменения в технологическом стеке#
Добавлена поддержка операционных систем:
Альт Сервер 10;
Альт 9 9.2;
Альт 8 СП 8.4;
РЕД ОС 7.3;
Red Hat Enterprise Linux 7.8. 7.9. 8.7;
Добавлено стороннее ПО в составе дистрибутива:
patroni 2.1.1;
pgbouncer 1.16;
pgloader;
PostgreSQL 13.8;
oracle_fdw 2.3.0;
orafce 3.15.1;
pgaudit 1.3.2;
pg_cron 1.2.0;
pg_hint_plan 1.3.7;
pg_orphaned;
pg_pathman 1.5.12;
pg_probackup 2.2.5;
pg_profile 0.3.2;
pg_repack 1.4.6;
pgrouting;
pg_squeeze 1.4.0;
pg_stat_kcache;
pg_store_plans;
pg_variables 1.2;
rum;
tds_fdw 2.0.2;
zxcvbn 2.4;
timescaledb 2.3.0;
Добавлено стороннее ПО с вирусными лицензиями:
cgal;
cracklib;
GDAL;
geos;
ora2pg;
pg_background 1.0;
pgq;
pgqd;
pgrouting;
pgsql-http;
pldebugger;
plpgsql_check;
postgis;
PROJ;
SFCGAL.
Изменения функциональности#
Устранена уязвимость CVE-2024-0985.
Новое#
Реализован инструмент миграции с оригинального PostgreSQL на Pangolin 6 (15 PG).
Добавлено расширение, позволяющее ограничить потребление ресурсов (оперативной памяти и CPU) процессами СУБД.
Добавлены расширения
plpgsql_checkиpldebugger, предназначенные для отладки и контроля функций и процедур написанных на языке plpgsql.Поддержка HTTP-клиента на уровне СУБД.
Поддержка очередей сообщений.
Произведен переход на 64-битный счетчик транзакций.
Реализована функциональность трассировки сессии.
Реализована функциональность глобальных индексов на партиционированные таблицы.
Документ «Политика лицензирования продукта».
Переход на поставку компонентов Pangolin в виде rpm-пакетов.
Добавлен скрипт обновления бинарных файлов Pangolin.
Добавлена возможность задавать параметр
timezoneчерез пользовательский конфигурационный файл при создании БД.Реализована тестовая версия протокола логической репликации, позволяющая реплицировать данные с предыдущих версий.
Добавлена возможность управления действиями
create_trigger,alter_trigger,create_ruleиalter_ruleнад защищенными партиционированными таблицами.Добавлен новый параметр конфигурации
auth_idle_period, определяющий период не активности процесса сквозной аутентификации.
Удаленное#
Из скриптов установки удалена поддержка типа конфигурации cluster-patroni-etcd-pgbouncer-haproxy, а также удалены устаревшие роли установки rsyslog, configure, HAproxy, SRC, monitoring.
Расширение
pg_backgroundвынесено из дистрибутива и поставляется в продукте в директории 3rdparty.Виртуальное окружение, которое создавалось под скрипты развертывания и обновления, было переделано под отдельный ansible_venv.rpm-пакет. Этот пакет теперь размещен в каталоге 3rdparty дистрибутива Pangolin.
В скрипте-разведчике удалена проверка наличия неизвестных ролей в существующих БД.
Из скрипт-разведчика была исключена проверка наличия полного набора СЗИ (TDE, защита конфигурации, защита от привилегированных пользователей). Теперь обновление доступно для разного набора СЗИ на исходном стенде.
Удалена функциональность по генерации самоподписных сертификатов.
Измененное#
Скрипты развертывания и обновления были адаптированы под возможность развернуть СУБД Pangolin на стенде с локалью, отличной от
en_US.UTF-8.В скриптах обновления с миграцией данных было добавлено предупреждение о невозможности произвести обновление, если табличные пространства расположены не в каталоге
PGDATA.В сервисные файлы службы Pangolin Manager и PostgreSQL в список зависимостей
Afterдля старта была добавлена служба перешифрованияpangolin_reencrypt@.service.В скриптах обновления с миграцией данных было добавлено предупреждение о невозможности произвести обновление, если в кандидате на обновление обнаружены неподдерживаемые новой версией параметры в конфигурационных файлах.
Скрипты развертывания/обновления были переведены на работу по паролю.
Понижен уровень предупреждения об устаревшем значении pg_background в параметре
pgaudit.logс уровняWARNINGдо уровняDEBUG1.Права на выполнение DELETE/UPDATE без права SELECT над защищенными объектами теперь предоставляет право на выполнение этих операций изменения данных в форме, предусматривающей выборку данных.
Защита схемы теперь не распространяется на операции удаления индексов таблиц этой схемы.
Для утилиты решифрования добавлена возможность указания пути к PID-файлу с помощью параметра
--pid-file.Добавлен вывод информационного сообщения при прикреплении DEFAULT партиции к автопартиционированной таблице.