You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Была доработана поддержка работы с данными топиков Kafka. Однако на чтение топиков еще возникают проблемы, работа будет продолжена далее.
Доработана работа с алиасами для полей иерархических датасетов XML, JSON, YAML, Kafka, чтобы можно было ссылаться для определенных полей на другие структуры полей, которые находятся выше зоны видимости полей по умолчанию.
Доработана работа файлового процессинга, теперь можно задать максимальное время обработки файла, по истечении которого обработка будет прервана. Это может помочь в случаях, когда парсер файла завис или ушел в бесконечный цикл.
Dsl фичи
models: теперь для моделей работы с данными в свойстве датасета истории ведения истории модели "storyDatasetName" можно использовать переменные, определенные в модели.
models: в коде условия, инициализации и финализации для workflow моделей теперь можно напрямую обращаться к атрибутам модели с помощью переменной modelAttrs.
etl: для операторов copy, rowsTo и rowsAllTo добавлено событие onPostProcessing, которое вызывается после обработки записей источника, но до запуска пакетной загрузки подготовленных записей в приёмник с помощью bulk load.
etl: для операторов rowsTo и RowsAllTo добавлены события OnPrepare, OnFinalizing и OnBulkLoad. OnPrepare вызывается до обработки записей источника, OnFinalizing после завершения всех работ и OnBulkLoad перед запуском пакетной загрузки записей в приёмник с помощью bulk load.
fileman: при обработке файлов с помощью оператора processing теперь можно вызвать внутри кода обработки файла с помощью переданной управляющей ноды метод abortProcessing, который пометит файл как ошибочный, но не прекратит дальнейшую обработку файлов, как метод throwError.
fileman: при обработке файлов с помощью оператора processing теперь можно задать максимальное время обработки файла в свойстве processingTimeout. Так же в свойстве processingTimeoutAsError можно указать, что делать с файлом когда время обработки превышено: считать это ошибкой или просто игнорировать этот файл и продолжить обработку следующих файлов.
Dsl баги
main: при вызове оператора "unregister" для соединений возникала ошибка, если соединение не поддерживало явное управление соединением.
main: при передаче в вызываемый скрипт параметров не корректно работала конвертация в требуемый тип параметра, если передаваемый параметр был другого типа.
models: для моделей работы с данными всегда вызывалась проверка существования датасета ведения истории модели, что могло нарушать логику работы шаблонов, которые еще не успели инициализировать модель.
models: при запуске скрипта шага workflow моделей не передавались переменные самой модели и переданные при запуске workflow.
fileman: при обработке файлов в параметрах сортировки и группировки нельзя было указать служебные поля файлов (filepath, filename, filedate и filesize).
Getl фичи
getl.kafka.KafkaConnection: добавлены свойства управления форматированием парсинга и записи для полей даты, времени, булевых и с десятичной точкой.
getl.kafka.KafkaConnection: добавлено свойство "autoCreateTopic" для авто-создания топика при начале записи данных в указанный топик, если он отсутствует.
getl.kafka.KafkaConnection: добавлены функциы "topicExists" для проверки существования топика на сервере, "createTopic" для создания топика, "dropTopic" для удаления топика и "listTopics" для получения списка существующих топиков.
getl.kafka.KafkaDataset: добавлено свойство "autoCreateTopic" для авто-создания топика при начале записи данных в указанный топик, если он отсутствует.
getl.proc.Executor: добавлены методы runClosureWithTimeout и runCodeWithTimeout, с помощью которых можно запустить на выполнение заданный код с ограничением по времени выполнения. В случае превышения времени выполнения код будет прерван и сгенерирована ошибка.
getl.utils.GenerationUtils: для датасетов JSONDataset, XMLDataset, YAMLDataset и KafkaDataset теперь в алиасах полей можно ссылаться на поля структуры записи с верхнего уровня с помощью служебной переменной #root, даже если для полей в data указана подчиненная структура, с которой берутся поля.
getl.data.Dataset: добавлена функция "checkRowByFields" для проверки значений полей записи с правилами заполнения полей датасета.
Getl баги
getl.files.Manager: при создании локального директория он мог не удалиться при завершении работы программы.