Что нового?#

Поддержка:

Выход патчей до выхода 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 партиции к автопартиционированной таблице.