Замечания к релизу QHB версии 1.5.1

Добавлено

Улучшено

  • Перенесены некоторые оптимизации сортировки из ванильной ветки Postgres 15
  • Перенесены некоторые оптимизации по работе с файлами из ванильной ветки Postgres 15
  • QDL: Множественные улучшения, существенная переработка
  • Сервер метрик: Оптимизация, существенное снижение потребления ресурсов (CPU)
  • Сервер метрик: Возможность перезапускать сервер метрик без перезапуска QHB
  • Сервер метрик: Добавлена группа «Встроенные метрики»
  • Сервер метрик: В метриках QHB добавлена группа метрик менеджера блокировок (lmgr)
  • добавлена возможность использования жестких ссылок при обновлении QHB через qhb_upgrade
  • добавлен параметр конфигурации для включения/отключения файлов трассировки фатальных ошибок
  • добавлен параметр конфигурации для запуска планировщика при старте СУБД
  • добавлен параметр конфигурации для запуска брокера очереди сообщений при старте СУБД

Исправлено

  • QDL: Расчет контрольных сумм в QDL
  • Qbackup: Множественные исправления в резервном копировании
  • Qbackup: Стабилизация работы CDC

Прочее

  • Исправлены, устранены или проанализированы на отсутствие опасные состояния и уязвимости:
    BDU:2019-01231, BDU:2019-04174, BDU:2021-05535, BDU:2021-05857, BDU:2021-05996, BDU:2022-00821, BDU:2022-02629, BDU:2022-02928, BDU:2022-03872, BDU:2022-04971, BDU:2022-05174, BDU:2022-07190, CVE-2021-23214, CVE-2021-23222, CVE-2021-43767, CVE-2022-1552, CVE-2022-25852, CVE-2022-2625.

Замечания к релизу QHB версии 1.5.0

Добавлено

  • Расширение QHB Part_Import, частичный импорт файлов данных из «внешней» БД.
  • Переменные уровня сеанса — qhb_variables
  • Qbackup: Возможность валидировать резервные копии (команда validate).
  • Qbackup: Возможность удаления WAL-файлов при удалении резервной копии.
  • Поддержка отслеживания статуса выполнения запросов с помощью qhb_running_queries() и qhb_dump_qep(<query_id>).
  • Экспериментальная поддержка работы планировщика заданий QSched.
  • Поддержка дистрибутива Fedora 35.
  • Поддержка дистрибутива Альт 8 СП.
  • QDL: Новые типы данных
  • QDL: API для загрузки данных без использования CSV

Улучшено

  • Обновлено ядро QHB, теперь оно основано на PG 14.
  • Qbackup: Производительность сжатия резервных копий.
  • Qbayes: добавлены параметры, ограничивающие «коммутативный взрыв».
  • Qbayes: добавлен тип discrete_integer (перечислимый тип данных) в описание модели.
  • Устранена уязвимость в процессе сброса WAL - урегулирована параметром wal_after_error_sleep_delay.
  • QDL: Убрано ограничение в 8Кб на размер данных

Исправлено

  • Добавлены mock-файлы описания расширений для 2B для исправления сценариев платформы «1С:Предприятие».

Удалено

  • Пользовательская интерактивная утилита для работы из командной строки qsql удалена. Рекомендовано использовать утилиту psql.

Замечания к релизу QHB версии 1.4.0

Добавлено

  • Поддержка дистрибутива Fedora 34.
  • Расширение QHB Qbayes, методы статистического анализа на основе условных вероятностей Байеса.
  • Модуль QHB Disk Cache Dump, предоставляющий механизм сохранения и восстановления содержимого дискового кэша.
  • Qbackup: Поддержка удаленного резервного копирования с использованием протокола репликации.
  • Qbackup: Подкоманда replica для создания реплики сервера.
  • Qbackup: Опции работы с паролями (диалоговый режим).
  • Qbackup: Обновлена структура каталога.
  • Qbackup: Поддержка табличных пространств.
  • Qbackup: Поддержка CDC (Change Data Capture, захват изменения данных) для инкрементальных резервных копий.
  • Qbackup: Возможность быстрой контрольной точки перед резервным копированием.
  • Qbackup: Опция, позволяющая базировать новые инкрементальные резервные копии на последних удачно завершившихся копиях.
  • Qbackup: Возможность указать комментарий для резервной копии при ее создании.
  • Qbackup: Расширены возможности команды remove.
  • QDL: Механизм совместимости с CDC.
  • QDL: Поддержка получения данных из stdin.
  • QCP: Поддержка списка stand_by серверов для автоматического переключения на резервный сервер в случае потери связи с текущим сервером БД.

Улучшено

  • Qbackup: В 2 раза ускорено восстановление для инкрементальных резервных копий.
  • QDL: Значительно улучшена производительность многопоточного режима.
  • QDL: Улучшены сообщения об ошибках разбора CSV.
  • QSS: Повышение безопасности. Функционирование в отдельном процессе.
  • QSS: Унификация администрирования пользователей и управление ключами.

Исправлено

  • Qbackup: Исправлено отображение информации в некоторых ошибках.
  • Qbackup: Возможность удаления информации о резервных копиях без директории каталога.
  • QDL: Из файла конфигурации удалено поле encoding (было помечено как устаревшее в релизе 1.2.0).

Замечания к релизу QHB версии 1.3.1

Добавлено

Исправлено

  • Исправлены ошибки расширения Qbim, возникающие в некоторых ситуациях при изменении версий объекта.
  • qhb_upgrade: убрана ошибочная проверка на количество пользователей в обновляемом кластере.
  • QCP: Добавлено отображение параметра application_name входящих клиентов в режиме Debug.
  • Исправления для повышения стабильности 2B.
  • Другие минорные исправления.

Замечания к релизу QHB версии 1.3.0

Добавлено

  • Поддержка таблиц с параметром HOLDMEM = ONLY.
  • Множество новых метрик в metricsd.
  • Утилита magma_key_gen для генерации пользовательских ключей QSS на крипто-токенах, поддерживающих аппаратное шифрование по ГОСТ 34.12-2018 и ГОСТ 34.13-2018.
  • QDL: Поддержка типа UUID.
  • QDL: Широкая поддержка специальных значений для типов date и timestamp: Epoch, Infinity, -Infinity.
  • Qbackup: Механизмы поддержки и актуализации предыдущих версий каталога.
  • Qbackup: В каталог добавлена информация о версии базы данных и каталога версий.
  • QCP: Отмена текущего запроса на сервере при отключении клиента.
  • QCP: «Проброс» запроса на отмену текущего запроса от клиента к конечному серверу
  • QCP: Автоматическая отмена всех текущих запросов при остановке QCP.
  • QCP: Отправка heartbeat-сообщений неактивным подключениям к БД.
  • QCP: Клиенты могут подключаться к QCP через сокеты домена Unix.

Улучшено

  • Оптимизирована работа с памятью в Tarq.
  • Локализация в qhb_upgrade.
  • MChar в 2B научился работать с like escape.
  • QDL: Зафиксирован формат записи для типов float, double precision, numeric.
  • QDL: Увеличена производительность генератора значений NULL.
  • QDL: Увеличена производительность анализатора значений с плавающей запятой и numeric.
  • QDL: Уменьшен размер исполняемого файла за счет удаления легаси-кода.
  • QDL: Упрощен генератор скрипта для create_table, уменьшена вероятность ошибок времени исполнения.
  • QCP: Более гибкая настройка логирования.
  • QCP: Более подробные сообщения об ошибках, возникающих в процессе работы.

Исправлено

  • Утечки в вакууме при использовании Tarq.
  • Параметры настройки rbytea.
  • Ошибка неправильного параметра auth в qhb_bootstrap под названием scram_sha_256.
  • В 2B удалена рекурсия из MChar like.
  • shared_buffers_partitions: правильная обработка параметра.
  • Запуск qhb_upgrade от пользователя root (запрещен).
  • Ошибка при инициализации кластера с помощью qhb_bootstrap при указании флага --waldir.
  • Qbackup: Ошибка повторяющегося идентификатора копии при быстром последовательном создании нескольких резервных копий.
  • Qbackup: Ошибка несовпадения директории каталога копий с метаинформацией каталога при ручном перемещении файла каталога.
  • Qbackup: Пути в метаинформации каталога теперь всегда абсолютные.
  • Qbackup: Ошибки во время резервного копирования теперь всегда отражаются в статусе копии.
  • QCP: qcp, и qcp-ctrl при ошибках теперь возвращают ненулевой код завершения

Замечания к релизу QHB версии 1.2.0

Добавлено

  • QHB 2B: Расширения QHB для поддержки 1С. Поддерживается платформа «1С:Предприятие», начиная с версии 8.3.18.
  • Утилита qhb_upgrade, обеспечивающая миграцию базы данных из предыдущих версий QHB и PostgreSQL версии 12.
  • Поддержка дистрибутивов Fedora 33.

Улучшено

  • Проверена работоспособность имеющихся пакетов в дистрибутиве Альт Сервер 9.

Замечания к релизу QHB версии 1.1.0

QHB Plan Cache

Экспериментальная функция выключена по умолчанию, добавлена для проверки стабильности и работоспособности.

Новая функция

QHB Bootstrap

Система инициализации базы, функциональный аналог initdb, полностью переделан для учета особенностей QHB.

Новая функция

QSS

Модуль безопасного хранения (шифрования с поддержкой криптоалгоритма «Кузнечик»).

  • QSS пополнился функциями qhb_get_qss_tables и qhb_get_qss_indexes.
  • Улучшился вывод в случае ошибки.
  • Добавился новый режим работы с параллельным набором ключей, qss_recrypt с командой сбора зашифрованных таблиц и их индексов.
  • Добавлена поддержка base64-encoding ключей, «Кузнечика» в CTR режиме.
  • Добавлена поддержка rbytea.
  • Добавлена утилита QSS Pinpad.
  • Добавлена поддержка RuToken.

QSQL

Пользовательская интерактивная утилита для работы из командной строки.

  • Поддержка мета-команд \password и \include.

Append Only Storage

Данное хранилище позволяет только добавлять записи, но делает это с максимальной скоростью, поскольку не выполняется полноценного MVCC анализа.

Предназначено для таблиц, с которыми не производятся модификации, например, журналов, данных с датчиков и т. п.

Новая функция

QBackup

Добавлена новая подсистема резервного копирования и восстановления с поддержкой каталога, архивации резервных копий и сохранения «разности» вместо полной резервной копии.

QDL

Добавлено

  • Параллельный режим работы QDL.
  • Пользовательская документация.
  • Демонстрационный файл конфигурации в пакете RPM.

Изменено

  • Для того чтобы создать базу, больше не нужен результат работы с СУБД.
  • Стабилизирована поддержка основных типов.
  • Переделана работа со страницами и кортежами для улучшения стабильности.
  • Стандартизировано API записи во всех компонентах QDL.

Исправлено

  • Ряд системных функций, работа которых приводила к записи некорректных размеров кортежей в мета-информацию страницы.

Утилиты

  • qhb_archivecleanup: обновлены зависимости и добавлена русская локализация.
  • qhb_checksum: добавлен режим параллельной работы и нормальный вывод прогресс-бара с флагом --verbose.
  • qhb_checksum: теперь корректно работает с файлами больших размеров.
  • Реализована утилита createdb.
  • Реализована утилита dropdb.

Метрики

Подсистема сбора и предоставления для внешнего отображения системных метрик. Предоставление пока только в grafana.

  • Метрики добавлены в буфер-менеджер TARQ.
  • grafana больше не инициализирует время выполнения под каждый вызов with_grafana.
  • Перещелкивание «часов» буфера назад при переводе системных часов.

Прочие улучшения

  • Оптимизирован буфер-менеджер TARQ.
  • Из релизной сборки удалены debug-символы.
  • Исправлены параметры сборки, приводившие к снижению производительности.
  • Реализация чекпоинтера на Rust.
  • Убраны многие раздражающие ограничения и устранены критические ошибки.