Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sequential execution of state machine in seata-go Saga #641

Open
ptyin opened this issue Jan 3, 2024 · 1 comment
Open

Sequential execution of state machine in seata-go Saga #641

ptyin opened this issue Jan 3, 2024 · 1 comment
Assignees

Comments

@ptyin
Copy link
Member

ptyin commented Jan 3, 2024

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.

@xjlgod
Copy link
Contributor

xjlgod commented Jan 15, 2024

please assign to me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants