A.18. Postgres Pro Shardman 14.11.1
Дата выпуска: 2024-03-14
В этом выпуске улучшена производительность, добавлены новые возможности и исправлены некоторые ошибки. Важные изменения перечислены ниже:
A.18.1. Ядро и расширения
Улучшены возможности расширения pgpro_stats для понимания того, какие системные ресурсы используются для распределённых запросов. Теперь в обычном представлении
pgpro_stats_statementsпоказывается статистика, собранная для отдельных операторов на текущем узле Shardman (они могут быть частью распределённого запроса), а в представленииpgpro_stats_sdm_statementsпоказывается статистика, собранная для распределённых запросов, исходящих из текущего узла, то есть агрегированная по всем участвующим узлам.Добавлен пакет pgpro_pwr, совместимый с Shardman и позволяющий пользователям собирать отчёты о нагрузке.
Улучшена информативность команды
EXPLAIN. Если план запроса содержит узлыForeignScan, теперь в вывод командыEXPLAINможет быть включён выводEXPLAINпо запросам, выполняемым на удалённом сервере.Добавлен новый параметр конфигурации
enable_partition_pruning_extra, управляющий расширенной логикой отсечения секций подплана при построении и выполнении общих планов, в которых набор полезных секций зависит от параметров подготовленного запроса. Этот параметр позволяет Shardman выполнять первоначальное отсечение секций в сложных подпланах, соединениях и частичных агрегированиях.В представление
shardman.pg_stat_csnдобавлены метрики, показывающие задержки глобального горизонта и транзакцию, которая может их вызывать. Они могут быть полезны для исследования проблем автоочистки.
A.18.2. Утилиты управления
Значительно улучшено резервное копирование и восстановление с помощью команды
shardmanctl probackup. Основные изменения представлены ниже:Добавлена поддержка создания резервных копий в S3-совместимом объектном хранилище.
Реализовано выборочное архивирование WAL подкомандой
probackupв заданных сегментах.Добавлены две новые команды:
shardmanctl probackup deleteиshardmanctl probackup merge. Командаdeleteудаляет резервную копию с указанным ID и ставшие ненужными заархивированные файлы WAL. Командаmergeобъединяет резервные копии, принадлежащие общей инкрементальной цепочке резервных копий.Добавлена новая команда
shardmanctl probackup set-config, с помощью которой в файлеpg_probackup.confможно создавать новые параметры или изменять существующие.Добавлен новый параметр
log-to-consoleдля подкомандыvalidate. Размер файла журнала установлен равным 20 МБ. По достижении этого лимита происходит ротация журнала при запуске командыvalidateилиbackup.Увеличено количество повторных попыток выполнения некоторых подкоманд во избежание сбоев резервного копирования из-за больших размеров баз данных.
Добавлена проверка совместимости топологии текущего кластера Shardman с кластером в каталоге резервных копий при выполнении подкоманд
backupиrestore.Установлено значение по умолчанию для количества одновременных процессов pg_probackup, равное количеству логических ЦП в системе.
Исправлена очистка данных после сбоя подкоманды
backup. Ранее некоторые данные резервного копирования, закончившегося сбоем, могли оставаться в репозитории.Устранено зависание, которое могло возникать при восстановлении только метаданных кластера Shardman.
Устранена проблема в pg_probackup, которая могла возникать в процессе восстановления схемы.
Изменено поведение процесса восстановления только метаданных во избежание потери кластера. Теперь кластер останавливается перед выполнением такого восстановления и вновь запускается после его завершения. Кластер без узлов не может быть восстановлен из резервной копии etcd, и если ID резервной копии кластера отличается от ID текущего кластера, то пользователя просят подтвердить, что необходимо выполнить восстановление кластера с отличающимся ID.
Добавлены новые параметры для команды
archive-command:--compress,--compress-algorithm,--compress-level,--batch-sizeи-j|--jobs. Эти параметры помогают уменьшить размер WAL.Улучшена информативность вывода команды
show. Добавлены новые флаги:-archiveдля вывода информации о журнале,-instanceи-i|--backup-idдля вывода информации об указанных экземплярах и резервных копиях.
Изменено поведение команд
getconnstrиcluster topologyтак, что они не вызывают блокировку других процессов. Ранее из-за таких блокировок некоторые команды не могли получить строку подключения.Устранена ошибка уровня panic, которая могла возникать в кластере Shardman с конфигурацией
PlacementPolicy=manualпри выполнении пользователем командыshardmanctl cluster repfactor set.Убраны неинформативные предупреждения, выводящиеся pg_dump во время выполнения команд
shardmanctl nodes addиshardmanctl probackup backup.Убрана блокировка, требовавшаяся для команды
shardmanctl status. Ранееshardmanctl statusне предоставляла полезной информации о зависании процесса из-за ожидания блокировки.Добавлен параметр конфигурации
forceSuUserLocalPeerAuth. При включённом параметре для пользователяpostgresустанавливается аутентификация peer через сокет Unix, если дляstrictUserHBAне установлено значениеtrue. За подробностями обратитесь к sdmspec.json.Добавлен URL-адрес обнаружения служб системы Prometheus в shardmand.