-
Notifications
You must be signed in to change notification settings - Fork 8.8k
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
feature: saga support parallel execution with multiple states #4349
feature: saga support parallel execution with multiple states #4349
Conversation
@long187 help to review this feature |
考虑一下设计器怎么画并发任务 |
Codecov Report
📣 This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more @@ Coverage Diff @@
## develop #4349 +/- ##
=============================================
+ Coverage 48.67% 48.79% +0.11%
- Complexity 3973 3989 +16
=============================================
Files 733 735 +2
Lines 25155 25229 +74
Branches 3085 3099 +14
=============================================
+ Hits 12245 12310 +65
- Misses 11596 11599 +3
- Partials 1314 1320 +6
|
This pull request fixes 1 alert when merging 1616cea into b62f03e - view on LGTM.com fixed alerts:
|
设计器中,ParallelStart和ParallelEnd 用 菱形并换个颜色。可以参考bpmn是图形 |
设计器,编译命令npm install在有些版本的npm好像有问题,可以加上--legacy-peer-deps参数解决,并npm build有也版本也不识别要改成npm run install,在设计器的README上加一下吧。 |
This pull request fixes 1 alert when merging cfe2a2b into 4622746 - view on LGTM.com fixed alerts:
|
This pull request fixes 1 alert when merging c2cdc04 into 4c88984 - view on LGTM.com fixed alerts:
|
|
探讨下哈,以ParallelState方式标记并行,用户需要再JSON里面声明ParallelStateStart,我理解是否可以在State级别支持多Next节点,框架内部构建多个水平执行数,相同层级的并发执行,这样对用户更加友好。 |
@wt-better ParallelStart和ParallelEnd节点,主要是考虑到在设计器中画并发任务时,能够清晰看到并发任务的开始和结束;在实际的json配置文件和并发处理的代码实现中,并不存在这2个节点 |
|
thank for you request, and this feature was designed and implementation by https://github.com/seata/seata/pull/5847 . |
Ⅰ. Describe what this PR did
Saga 新增并发State节点,支持配置多个需要并发执行的state,并发执行的State支持 ServiceTask、SubStateMachine、ScriptTask,整体能力参考Loop循环属性的实现
在seata-saga-designer中,考虑到设计及简易性,增加了ParallelStart和ParallelEnd来标识并发的开始与结束,由DesignerJsonTransformer来统一处理并发场景下的json转换,设计器的demo可以参考下图
Ⅱ. Does this pull request fix one issue?
fixes #4351
Ⅲ. Why don't you add test cases (unit test/integration test)?
Ⅳ. Describe how to verify it
Ⅴ. Special notes for reviews