Synchronous Transaction Framework State Persistence
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Contemporary synchronous transaction systems face challenges such as loss of intermediate transaction states during server outages, lack of visibility into transaction progress, inability to cancel in-flight transactions, and limited visibility into transaction history, especially due to system outages that disrupt communication with transaction handlers.
Innovation Solution
A synchronous transaction framework (STF) that captures and persists transaction states, allowing for rollback, resume, and cancellation of transactions, and provides visibility into transaction progress and history without requiring changes to existing code, by creating transaction objects that represent the transaction and persisting them in a system, enabling replay, rollback, and cancellation of transactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If synchronous transactions block until completion to ensure coordination, then transaction reliability is improved, but system responsiveness and user visibility deteriorate
Solution Approach 1:
The system performs preliminary actions by capturing and persisting transaction state information at key points during transaction execution. Transaction state capture modules record intermediate states before committing changes, enabling the system to maintain reliability while allowing the caller to continue executing without waiting for full transaction completion. This preliminary state preservation allows subsequent recovery or visibility operations to proceed independently of the original transaction blocking.
2Reliability
If transaction states are persisted to enable recovery and visibility, then system reliability is improved, but device complexity increases
Solution Approach 1:
The system segments the transaction management functionality into distinct modular components: transaction state capture modules that record specific state information, transaction objects that store persisted state data, and recovery modules that utilize the captured states. This segmentation allows each component to be independently implemented and maintained, reducing overall system complexity while enabling robust transaction recovery and visibility capabilities through coordinated interaction of specialized modules.
Data Source
AI summary
According to an aspect, a computer-implemented method includes intercepting a call to invoke execution of a service as part of performing a synchronous transaction. A current state of the synchronous transaction is captured and persisted in a transaction object corresponding to the synchronous transaction. Execution of the service is invoked.


