E.17. Заметки к релизу Tantor BE 15.2.0#

E.17. Заметки к релизу Tantor BE 15.2.0

E.17. Заметки к релизу Tantor BE 15.2.0

Дата релиза:  2023-06-01

E.17.1. Обзор

Tantor BE является российской СУБД, основанной на обновленной и улучшенной версии СУБД PostgreSQL. Tantor BE 15.2.0 основана на PostgreSQL 15.

Ниже приведены дополнительные модули и утилиты, добавленные в Tantor BE, а также список изменений в ядре сервера.

E.17.2. Существенные отличия в этой версии

E.17.2.1. Резервирование соединений

  • Добавлена возможность резервирования слотов соединений для пользователей, не имеющих прав суперпользователя.

  • Соединения резервируются с помощью нового параметра конфигурации reserved_connections (в файле postgresql.conf) и доступны только пользователям с новой предопределенной ролью pg_use_reserved_connections.

  • Значение параметра superuser_reserved_connections остается в качестве последнего резерва в случае исчерпания reserved_connections.

E.17.2.2. Добавлен параметр transaction_timeout

  • Параметр transaction_timeout позволяет отменить любую транзакцию, длительность которой превышает указанный период времени. Ограничение распространяется как на явные транзакции (начатые командой BEGIN), так и на неявно начатые транзакции, соответствующие отдельному оператору.

transaction_timeout details:

E.17.2.3. Предварительное чтение блоков для журнала предзаписи (WAL)

  • Улучшена производительность за счет предварительного чтения блоков журнала Tantor BE (блоков WAL) с использованием системного вызова posix_fadvise() с параметром POSIX_FADV_WILLNEED.

  • Добавлено новое событие WAIT_EVENT_WAL_PREFETCH для отслеживания времени предварительного чтения WAL.

E.17.3. Доступные дополнительные модули и утилиты.

E.17.3.1. Добавленные модули в текущем релизе

Таблица E.1. Таблица расширений

Расширение Описание
page_repair Модуль для восстановления отдельных поврежденных страниц с использованием данных с сервера горячего резервирования. Позволяет сэкономить время восстановления, поскольку не требуется восстановление всех данных, а только отдельных страниц.
pg_background Модуль позволяет пользователю выполнять произвольную команду в фоновом режиме и предоставляет возможность выполнять команды, такие как: VACUUM и CREATE INDEX CONCURRENTLY из SQL, а также выполнять автономные транзакции, в том числе асинхронно.
pg_repack Модуль позволяет устранить раздутие таблиц и индексов (раздутие) и, при необходимости, восстановить физический порядок кластеризованных индексов (CLUSTER). В отличие от команд CLUSTER и VACUUM FULL, работает онлайн, не удерживая исключающую блокировку таблиц, обслуживаемых во время операции.

E.17.3.2. Дополнительные поставляемые программы

Таблица E.2. Таблица утилит

Утилита Описание
pgcompacttable pgcompacttable - это инструмент уменьшения размера раздутых таблиц и индексов (раздутие) без тяжелой блокировки. Он предназначен для переорганизации данных в таблицах и перестроения индексов для восстановления дискового пространства без влияния на производительность базы данных.

E.17.4. Поддерживаемые операционные системы

Список поддерживаемых операционных систем (ОС) был расширен. Полный список приведен ниже:

  • Altlinux c9f2 (P8)

  • Altlinux p10

  • Astra Linux Common Edition 2.12

  • Astra Linux Special Edition 1.7

  • Astra Linux Special Edition 4.7

  • Redos 7.3

  • MSVSphere

  • Centos 7

  • Rocky 8

  • Rocky 9

  • Ubuntu 18

  • Ubuntu 20

  • Ubuntu 22

  • Debian 11 Bullseye

  • Debian 10 Buster

Сборки СУБД создаются и тестируются для этих операционных систем на постоянной основе.

E.17.5. Миграция на версию 15.2.0

Для миграции с PostgreSQL или Tantor DB сначала установите последнюю минорную версию, а затем выполните выгрузку/восстановление данных, применяя утилиту pg_dumpall или используя утилиту pg_upgrade.