Process execution

The workflow engine executes the process in a transactional way, advancing until it encounters a wait state, such as a timer event, in each active path of the execution. Subsequent tasks, sub-processes and call activities are executed in a single transaction and if one fails, the entire transaction is rolled back.

Asynchronous activities

You can have tasks, sub-processes and call activities run asynchronously to split execution into smaller units of work. The benefit of an asynchronous activity is that it is part of a separate transaction and if it fails, the actions that were performed before it are not rolled back.

Exclusive activities

By default, all activities are exclusive and can not be completed at the same time as another exclusive activity that belongs to the same process. This ensures the workflow engine performs all activities sequentially. You do not need to change this behavior, as the built-in capabilities can manage different scenarios. You can learn more about the logic behind exclusive jobs in the Flowable documentation.