Перейти к основному содержимому
Руководство администратора
How To статьи
Установка и настройка
Компоненты
Руководство пользователя
Начало работы

Transacted

Общее описание

Блок Transacted включает транзакционное поведение для последующих шагов потока. Если любой шаг внутри транзакции завершится ошибкой, все выполненные до этого момента изменения будут отменены (выполнен rollback). Обеспечивает целостность и согласованность данных при интеграции с базами данных (БД).

Важные условия для корректной работы:

  • Для блоков SQL/JDBC внутри Transacted должен быть отключен автоматический коммит (настраивается через соединение).
  • Запросы SQL не должны содержать оператор COMMIT.
  • При использовании разных соединений к СУБД, целевые базы данных должны поддерживать XA (двухфазный коммит). Кроме этого, для таких СУБД должны быть выполнены соответствующие настройки, например, для PostgreSQL значение параметра max_prepared_transactions должно быть больше нуля.
  • СУБД SQLite, ClickHouse, Teradata и Firebird не поддерживают двухфазный коммит (2PC). Их использование в одном Transacted‑блоке с СУБД, поддерживающими 2PC, может привести к ошибкам выполнения операций Commit и Rollback.
  • Вложенные потоки с блоками SQL/JDBC при необходимости транзакционности должны содержать собственный блок Transacted.

Ограничения:

  • Нельзя добавлять несколько Transacted‑блоков на одном уровне вложенности.
  • Нельзя размещать Transacted‑блоки внутри блоков‑контейнеров, таких как Loop, Choice и т.д.
  • Если ошибка возникает в потоке после контейнера Transacted, выполняется Rollback для всех предыдущих SQL- и JDBC-блоков, если для них выставлен Auto-Commit "false" и в запросе нет оператора COMMIT.
  • Операции Commit и Rollback, запущенные блоком Transacted родительского потока, выполняются только на уровне этого потока и не распространяются на его дочерние потоки.

Блок Transacted может использоваться в качестве:

  • блока-обработчика

  • контейнера для группы шагов.

Блок-обработчик предназначен для управления, проверки и преобразования данных, которые используются в контексте потока.

Настройка блока

В данном разделе описаны параметры блока Transacted, которые необходимо заполнить при его настройке.

Базовые параметры

Название в UIНазвание атрибутаОписаниеЗначение по умолчаниюТип данных
DescriptiondescriptionКраткое описание блока.Строка
RefrefСсылка на bean в реестре.Строка

Расширенные параметры

Название в UIНазвание атрибутаОписаниеЗначение по умолчаниюТип данных
DisableddisabledОпределяет, будет ли отключен блок в потоке. В активированном потоке функциональность блока не будет отрабатываться.FalseЛогическое значение