Skip to main content

1.2.0

Дата выпуска: 12.09.2024

Описание

1. Расширены возможности анализа при работе с PostgreSQL

Применимость СУБД Postgre для систем на платформе 1С продолжает расширяться. Доработки платформы и конфигураций 1С, выпуск дистрибутивов PG SQL ориентированных на работу с 1С и требования законодательства приводят к тому, что эта СУБД всё чаще используется для средних и крупных внедрений. Чтобы отвечать требованиям времени мы расширяем функциональность Алькир в части анализа производительности PG SQL. На текущий момент добавлены функции анализа статистики выполнения запросов и ожиданий СУБД. В будущих релизах функции анализа PG SQL будут расширяться.

2. Расширены возможности анализа при работе с MS SQL

Мы расширили возможности по анализу проблемных ситуаций, возникающих на стороне СУБД MS SQL. Добавлена возможность анализа ошибок предоставления блокировок и просмотра плана запросов.

3. Добавлена возможность построения дерева блокировок 1С

Мы реализовали возможность построения полного дерева блокировок 1С по данным ТЖ. Визуализация всех процессов вовлеченных в конфликт блокировок позволяет существенно упростить оценку необходимости блокировки и её оптимальности. Анализ возможен для любых ожиданий, а не только для тех, которые привели к ошибкам. Построение осуществляется на основании свойства Locks события TLOCK, поэтому дерево строится даже в тех случаях, когда свойство WaitConnections не содержит полного перечня конфликтующих соединений.

4. Оптимизированы существующие механизмы

При эксплуатации у наших клиентов в некоторых случаях были выявлены проблемы производительности Алькир. Мы провели рефакторинг проблемных функций и повысили скорость и стабильность работы системы.

5. Исправлены ошибки

Порядок обновления с версии 1.1

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

  1. Обновить сессии XE скриптом в соответствии с инструкцией
  2. Обновить хранимую процедуру AlkirDBInfo скриптом в соответствии с инструкцией

Подробное описание изменений

БлокРазделКак сталоКак было
ИнтерфейсMSSQL/ЗапросыПри анализе статистики по запросам добавлена возможность отбора по контексту и тексту запроса.Такая возможность не предоставлялась.
ИнтерфейсБлокировкиИзменена структура разделов интерфейса. Добавлены разделы Блокировки, Серверные вызовы. Удалён раздел Поиск проблем. Раздел блокировок переработан, добавлены графики для анализа общего состояния по блокировкам 1С и СУБД.Подход к делению функций Алькир по разделам был менее последовательным и более раздробленным.
ИнтерфейсБлокировки/Блокировки 1CДобавлена возможность построения полного дерева блокировок 1С по данным ТЖ. Переход к дереву возможен с вкладок, содержащих информацию об ошибках предоставления блокировок и о фактах установки блокировок.Возможность визуализации дерева блокировок не предоставлялась.
ИнтерфейсОбщие измененияУвеличена длина полей в параметрах графиков и таблиц.Было неудобно работать с длинными строками при указании параметров.
ИнтерфейсОбщие измененияДобавлен вывод имени текущего пользователя Алькир.Имя пользователя не выводилось в интерфейсе.
ИнтерфейсОбщие измененияДобавлено адаптивное определение размера легенды для графиков.На больших мониторах под легенду выделялось слишком много места.
Обработка данныхPostgres/ЗапросыДобавлена возможность анализа запросов для баз 1С, использующих PostgreSQL. Данные, полученные из СУБД, сопоставляются с данными ТЖ.Такая возможность не предоставлялась.
Обработка данныхPostgres/ТаблицыДобавлено сопоставление данных СУБД и структуры хранения данных ИБ.Имена таблиц в терминах 1С не выводились.
Обработка данныхБлокировки/Блокировки 1CИзменён алгоритм поиска виновников блокировок. Теперь поиск выполняется рекурсивно с учётом пространства и полей блокировки. Таким образом реализована возможность анализировать цепочку блокировок целиком, даже в тех случаях, когда свойство события ТЖ WaitConnections не содержи всех участников цепочки блокировок.Поиск выполнялся по свойству WaitConnections без учёта пересечения полей блокировок и был менее точным. Полная цепочка блокировок не воспроизводилась.
Обработка данныхБлокировки/Блокировки 1CВ таблицу анализа статистики ожиданий на блокировках 1С добавлена возможность использовать различные аналитики.В качестве аналитики использовался только контекст и пространство.
Обработка данныхОбщие измененияДобавлена поддержка любых имен информационных баз.Наличие дефисов и некоторых других спецсимволов в имени базы в кластере 1С приводило к ошибкам.
Обработка данныхОшибкиРасширены правила классификации ошибок.Правила охватывали меньшее количество ошибок.
Обработка данныхСерверные вызовы 1СДобавлено обогащение контекстов "Данные.Провести", "Данные.ПометитьНаУдаление" и "Данные.Удалить" именем метаданных изменяемого объекта.События такого типа имели одинаковый контекст независимо от типа изменяемого объекта.
ОптимизацияОбщие измененияОбновлена версия ClickHouse до 24.3.4.147.Использовалась версия 22.3.4.20.
ОптимизацияОбщие измененияДобавлен механизм прерывания выполнения запроса в ClickHouse.Длительные запросы могли продолжать выполняться даже после прекращения ожидания ответа frontend-ом. 
Получение данныхMSSQL/ЗапросыДобавлена возможность получать информацию по планам запросов MS SQL.Такая возможность не предоставлялась.
Получение данныхMSSQL/СерверИзменена логика получения и хранения данных об ожиданиях сервера MS SQL. Существенно снижен объём передаваемых и хранимых данных. Исправлена ситуация, когда данные могли выводиться некорректно, если в анализируемый период сервер MS SQL перезапускался.Получение и хранение данных было менее оптимально. В некоторых случаях данные могли искажаться.
Получение данныхMSSQL/СерверОптимизировано получение данных по обновлению статистики таблиц.Получалось и хранилось избыточное количество данных.
Получение данныхPostgres/ЗапросыДобавлена возможность получения информации о статистике выполнения запросов и запросах Postgre SQL.Такая возможность не предоставлялась.
Получение данныхБлокировки/Блокировки СУБДДобавлена возможность получения информации о тайм-аутах и взаимоблокировках СУБД по данным XE. Теперь информация по ошибкам содержит не только факт ошибки и данные ТЖ, но и имя таблиц и тексты запросов. Также стал возможен анализ конфликтов блокировок сеансов, запущенных не из 1С.Информация по ошибкам предоставления блокировок СУБД была неполной, т.к. учитывала только данные ТЖ.

Исправленные ошибки

БлокРазделКак сталоКак было
ИнтерфейсMSSQL/ТаблицыИсправлена ошибка при поиске соответствия 1С и БД.В некоторых случаях поиск не выполнялся. Для восстановления работы вкладки были необходимо её обновить.
ИнтерфейсPostgres/ЗапросыИсправлено отображение полного текста запроса на вкладке текущих запросов.Текст запроса не выводился.
ИнтерфейсОбщие измененияИсправлена генерация ссылки при использовании кнопки "Поделиться".Использование кнопки "Поделиться" на некоторых вкладках генерировало некорректную ссылку.
ИнтерфейсОбщие измененияИсправлена работа интерфейсе при ожидании ответа от сервера Алькир. Теперь в таблице крутится колёсик (лоадер).Иногда вместо колеса загрузки в таблице ошибочно выводилось "За данный период данных не найдено".
ИнтерфейсОшибкиИсправлена ошибка при поиске ошибок по критичности.Поиск не выполнялся, возникала ошибка.
ИнтерфейсТехнологический журналИсправлено применение сортировки в таблице событий ТЖ.При первом открытии вкладки сортировка по дате события отображалась как активная, но не применялась.
ИнтерфейсТехнологический журналИсправлено поведение интерфейса при изменении периода.При смене периода сбрасывались все установленные фильтры.
Обработка данныхMSSQL/ТаблицыИсправлено применение сортировки на вкладке изменения размеров таблиц.Сортировка не применялась по умолчанию.
Обработка данныхКластер 1С/История работыИсправлено применение сортировки в таблице истории рабочих процессов.Деление строк на страницы выполнялось без учёта сортировки.
Обработка данныхОшибкиОптимизирован запрос поиска и анализа ошибок.Ранее выполнение запроса на большом объёме данных могло приводить к ошибке.
Обработка данныхОшибкиИсправлено построение графика по ошибкам при применении фильтров.Использование фильтров с типом сравнения «not in» приводило к ошибкам.
Обработка данныхСерверные вызовыИсправлен поиск событий ЖР при переходе от серверного вызова 1С.Список событий не заполнялся.
Обработка данныхСерверные вызовыИсправлено отображение контекстов в круговых диаграммах по серверным вызовам.В некоторых случаях контекст обрезался при выводе данных. Из-за этого в круговой диаграмме могло быть несколько строк с одинаковым контекстом.
Обработка данныхТехнологический журналИсправлена ошибка применения фильтров.Некоторые комбинации значений и фильтров приводили к ошибке.
ОптимизацияОбщие измененияИзменена логика предварительной обработки данных для вкладок анализа ошибок и серверных вызовов 1С.Ранее некоторые записи могли пропускаться и не учитываться в анализе.
ОптимизацияОбщие измененияИсправлена зависимость Алькир от доступности сервера ElasticSearch.Недоступность сервера ElasticSearch Алькир могла приводить к неработоспособности Алькир.
Получение данныхОбщие измененияОптимизировано получение данных из СУБД MS SQL. Также теперь выполнение хранимой процедуры выполняется с опцией SET DEADLOCK PRIORITY = -10. Таким образом, даже при возникновении взаимоблокировки, завершен буде процесс Алькир, а не какой-либо другой.Выполнение хранимой процедуры AlkirDBInfo в MS SQL могло завершаться ошибкой deadlock, если совпадало по времени с операциями обновления статистики таблиц или перестроения индексов.