Transaction Coordinator for Message Link Data Consistency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional transaction processing techniques face challenges in ensuring data consistency across message link-level transactions, leading to eventual consistency issues that require manual intervention and increase development, operations, and maintenance costs.
Innovation Solution
A system and method that utilize a transaction coordinator to manage message link-level transactions by assigning a global transaction ID, allowing each terminal to process transactions as a single global transaction, thereby ensuring data consistency and reducing manual intervention through automatic context propagation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the transactional message technique is used to ensure data consistency of multi-database local transactions, then data consistency between sending terminal and message-oriented middleware is improved, but the local transaction of the message receiving terminal cannot be ensured to succeed, requiring continual retrying and manual intervention
Solution Approach 1:
The patent introduces a transaction coordinator as an intermediary component that manages the entire transaction process. The coordinator assigns global transaction IDs, tracks transaction states, and coordinates commit/rollback operations across multiple terminals. This mediator resolves the complexity by centralizing transaction management rather than relying on distributed retrying mechanisms.
Solution Approach 2:
The patent segments the transaction management process into distinct phases: transaction initiation (assigning global transaction ID), execution (local transactions at sending and receiving terminals), and completion (commit or rollback). This segmentation allows each phase to be managed independently with clear state transitions, reducing overall system complexity.
2Reliability
If continual retrying is implemented for the local transaction of the message receiving terminal, then eventual consistency is achieved, but development, operations, and maintenance costs increase due to manual intervention requirements
Solution Approach 1:
The transaction coordinator implements self-service by automatically managing transaction state transitions without requiring manual intervention. When a receiving terminal fails to complete its local transaction, the coordinator detects the failure and automatically initiates rollback procedures, eliminating the need for manual retrying and reducing operational costs.
Solution Approach 2:
The system implements feedback mechanisms where the transaction coordinator continuously monitors transaction states at both sending and receiving terminals. This feedback loop allows the coordinator to detect failures and trigger appropriate responses (commit or rollback) automatically, ensuring consistency without manual intervention.
3Reliability
If manual intervention is used to resolve transaction failures at the message receiving terminal, then data consistency can be restored, but productivity and operational efficiency decrease
Solution Approach 1:
The transaction coordinator performs preliminary actions by pre-assigning global transaction IDs and establishing transaction contexts before actual transaction execution. This preliminary setup enables automatic detection and resolution of failures, eliminating the need for manual intervention and improving operational efficiency.
Data Source
AI summary
Processing a transaction is disclosed including receiving a global transaction start request sent by a message sending terminal, the global transaction start request instructing that a message link-level transaction be started, assigning a unique transaction identifier to the message link-level transaction, and sending a global transaction ID to the message sending terminal, the global transaction ID including the unique transaction ID and an address of a transaction coordinator configured to coordinate the message link-level transaction.


