← All nodes
Output

Transaction Control

Makes every database write upstream of it one transaction: committed together when all of those steps worked, rolled back together otherwise.

When to use it

Use it when a partial load would be worse than none — orders and their lines in two tables, or the same rows to two databases.

In a pipeline

Settings

SettingTypeRequiredDefault or hint
Modeselect—commit
Roll back whentext—Optional formula on the rows arriving, e.g. {Errors} > 0

Example

All-or-nothing load

  • Mode=Commit when every step worked
Rows passed on by the outputs
order_idtotal
1042860
Passed on; the note says “Committed 1 row(s) to orders on warehouse together.”
order_idtotal
1042860

Worth knowing

  • Every Database output before it (PostgreSQL, MySQL, SQL Server, Azure SQL, Oracle, Snowflake, MongoDB) keeps its transaction open until this node runs; connect all of them to it.
  • If a step before it fails, or the run stops early, everything is rolled back. Roll back when (a formula on the rows arriving, e.g. {Errors} > 0) rolls back on purpose; Always roll back is a dry run against the real database.
  • BigQuery, Google Sheets, Salesforce and file uploads cannot take part; Commit per batch leaves each output to commit on its own.

Others in Output