StackSaga Database Support modules

The stacksaga-database-support module family provides a pluggable persistence layer for applications built with the Stacksaga framework. It abstracts database-specific concerns (schema management, connection handling, idempotent saga state storage, compensating action logs, outbox/event persistence, etc.) so that Stacksaga core features (orchestration, retries, compensations, observability) function consistently across different storage backends. and also it provides the necessary APIs for accessing tracing details from the StackSaga Trace-Window. as the recorded approach you can choose the appropriate database support module based on your orchestrator service’s primary database.
For instance, if Mysql database is used as the primary database of the orchestrator service, then the database support module should be stacksaga-mysql-support.

Here you can see where the database support modules fit into the overall Stacksaga architecture.

stacksaga components overview with database support
Figure 1. Stacksaga components overview with database support
As you can see in the diagram, the stacksaga-agent module sends the retrying request to the orchestrator service.
to access the orchestrator service, the in built endpoints are provided through database-support module. refer the respective database support implementation for more details.

Implementations of database support

The following database support implementations are available currently.

Database Module Description

Mysql

stacksaga-mysql-support

Database support for Mysql

Cassandra

stacksaga-cassandra-support

Database support for Cassandra