Adapter Commit Map Recovery for In-Doubt Distributed Transactions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data stores in microservices environments lack clear processing when restored from downtime, particularly in the context of distributed transaction processing, leading to delayed service restoration.
Innovation Solution
An adapter with a commit management map is used to manage GXIDs, performing alternate, perpetuation, settlement, and restart processing to ensure distributed transactions are completed even after data store downtime, including simulation and lock management for data stores without transaction control functions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If distributed transaction control function is implemented in data store, then transaction reliability is improved, but device complexity increases
Solution Approach 1:
An adapter is introduced as an intermediary component between the application and the data store. The adapter implements the distributed transaction control logic externally, allowing the data store itself to remain simple while still achieving reliable distributed transactions through the adapter's coordination capabilities.
2Productivity
If data store is restored from downtime without clear processing, then service availability is improved, but transaction integrity deteriorates
Solution Approach 1:
The adapter pre-processes and records transaction information before potential downtime occurs. When the data store is restored, the adapter uses this pre-recorded information to automatically recover and complete transactions, eliminating the need for complex post-restoration processing while ensuring transaction integrity.
Solution Approach 2:
The system implements feedback mechanisms where the adapter continuously monitors transaction states and data store status. Upon restoration, the adapter receives feedback about the current state and automatically adjusts its recovery actions to ensure transaction integrity without delaying service restoration.
3Stability of the object's composition
If lock management is implemented for data stores without transaction control, then data consistency is improved, but device complexity increases
Solution Approach 1:
The adapter serves as a mediator that implements lock management logic for data stores lacking native transaction control. By centralizing this functionality in the adapter rather than modifying the data store, the solution achieves data consistency while isolating the complexity increase to the adapter layer only.
Data Source
AI summary
A data store comprises a commit management map including an identifier of a distributed transaction. A control method executed by an adapter coupled to the data store includes: alternate processing of, temporarily storing the reception query, and causing a transaction on the data store side to execute the reception query; perpetuation processing of determining whether or not commit is possible using lock information and perpetuating the GXID to be committed and the temporarily stored reception query in a case where commit is possible; settlement processing of causing the transaction on the data store side to execute a GXID addition query that is a query that adds the GXID to be committed to the commit management map and committing the transaction on the data store side; and store restart processing of the adapter starting a new transaction at the data store for a distributed transaction in an in-doubt state.


