incubator-seata-go icon indicating copy to clipboard operation
incubator-seata-go copied to clipboard

Sequential execution of state machine in seata-go Saga

Open ptyin opened this issue 1 year ago • 1 comments

This is a subtask under the #618

Description:

To mirror the Java implementation, we will continue with an event-driven architecture for state execution, involving the implementation of handlers and routers for states.

Implementation Details:

1. Foundational Component: seata-saga-processctrl Module

  • Establish the seata-saga-processctrl module as the foundational component for executing state machine processes.

2. Implementation of State-Related Components:

  • Examine the engine.pcext package, focusing on handlers and routers related to states. Initially, prioritize the implementation of handlers and routers specific to ServiceTask states.

3. Progressive Development:

  • During the implementation phase, temporarily set aside the handling of global and branch transactions from the Java code. Concentrate on the sequential execution of the processes, with the transactional aspects reserved for subsequent development tasks.

Next Steps:

  1. Foundational Component - seata-saga-processctrl Module:

    • Create the seata-saga-processctrl module to serve as the foundation for executing state machine processes.
  2. Implementation of State-Related Components:

    • Explore the engine.pcext package and initiate the implementation of handlers and routers for states. Begin by focusing on ServiceTask states.
  3. Progressive Development:

    • During the initial implementation, prioritize the sequential execution of processes. Temporarily ignore global and branch transaction handling, reserving it for subsequent development tasks.

By following these steps, we aim to establish the core components for sequential state machine process execution in seata-go, building upon the event-driven architecture observed in the Java implementation. The focus at this stage is on handling ServiceTask states, with transactional aspects addressed in subsequent development phases.

ptyin avatar Jan 03 '24 05:01 ptyin

please assign to me

xjlgod avatar Jan 15 '24 12:01 xjlgod