There is a transaction manager to govern atomic actions. The transaction manager should support at least two-phased commit.