sage v0.1.0 API Reference
Modules
Sage is an implementation of Sagas pattern in pure Elixir. It is go to way when you dealing with distributed transactions, especially with an error recovery/cleanup. Sagas guarantees that either all the transactions in a saga are successfully completed or compensating transactions are run to amend a partial execution
This module provides behaviour for Sage executors
This module is responsible for Sage execution implementation
This module described experimental features planned for Sage
Hook which can executed before and after transaction or compensation
Exceptions
Raised at runtime when the asynchronous transaction timed out
Raised at runtime when operation with duplicated name is added to Sage
Raised at runtime when the compensation or operation has an malformed return
Raised at runtime when the transaction or operation has an malformed return
Raised at runtime when the compensation tries to apply circuit breaker on transactions it’s not responsible for