Message Batching Checkpoints for Parallel Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current message batching systems in networks face inefficiencies due to the need for synchronous message handling and response waiting, which increases transaction time and does not effectively manage message dependencies and ordering.
Innovation Solution
Implementing a distributed system that uses checkpoints to control message dependencies and ordering, allowing messages to be executed in parallel and reducing the need for synchronous responses, with the initiator node sending fewer collect messages and marking messages for error handling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If synchronous message handling is used to ensure message dependencies and ordering, then message execution correctness is improved, but transaction time increases due to waiting for responses
Solution Approach 1:
The patent segments the message batch into multiple groups using checkpoint messages. Messages before a checkpoint are executed synchronously to ensure correctness, while messages after the checkpoint can be executed in parallel. This segmentation allows the system to maintain reliability for critical message ordering while reducing overall transaction time through parallel execution of independent message groups.
2Productivity
If parallel message execution is implemented to reduce transaction time, then productivity is improved, but message dependency management becomes more complex
Solution Approach 1:
The patent introduces checkpoint messages as intermediary elements that mediate between synchronous and parallel message execution. These checkpoint messages serve as synchronization barriers that coordinate parallel message execution while maintaining dependency relationships. The checkpoint mechanism simplifies dependency management by providing clear delimiters that indicate when parallel execution can safely begin and when synchronization is required.
3Loss of time
If fewer collect messages are sent to reduce waiting time, then loss of time is reduced, but error handling capability may be compromised
Solution Approach 1:
The patent implements preliminary error handling by including error-handling information in checkpoint messages before parallel message execution begins. This allows participant nodes to pre-configure error handling strategies and the initiator node to establish error response mechanisms in advance. By preparing error handling procedures beforehand, the system can reduce the number of collect messages needed while maintaining robust error handling capability.
Data Source
AI summary
Systems and methods are provided for passing control of message dependencies and ordering to one or more network nodes participating in a transaction. Thus, messages can be sent to the participating nodes and the participating nodes can handle the messages according to their respective dependencies without first sending a response or waiting for the next message to arrive. In one embodiment, at least one message is flagged with a checkpoint to indicate that messages sent before the checkpoint are to be handled by the participating nodes before messages after the checkpoint. Messages may also be flagged with error-handling information. For example, a message may be marked to indicate that if the message fails, no further messages are to be sent to the node had the failure. Responses to a group of messages can be collected in a single operation.


