You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@servicecomb.apache.org by "Willem Jiang (JIRA)" <ji...@apache.org> on 2018/11/05 09:38:00 UTC

[jira] [Commented] (SCB-836) Support the nesting SagaStart

    [ https://issues.apache.org/jira/browse/SCB-836?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16674873#comment-16674873 ] 

Willem Jiang commented on SCB-836:
----------------------------------

[~zhfeng] I don't think we need the client APIs to talk to the alpha server for this use case.
Omega connector can send the nested saga start event to the Alpha. If the outer saga is aborted , Alpha event scanner can tell about it, and send the compensation command to Omega directly.

> Support the nesting SagaStart
> -----------------------------
>
>                 Key: SCB-836
>                 URL: https://issues.apache.org/jira/browse/SCB-836
>             Project: Apache ServiceComb
>          Issue Type: Improvement
>          Components: Saga
>            Reporter: Willem Jiang
>            Assignee: Zheng Feng
>            Priority: Major
>              Labels: improvement, pack
>
> We can take the [nesting-lras|https://github.com/eclipse/microprofile-lra/blob/master/spec/src/main/asciidoc/microprofile-lra-spec.adoc#323-nesting-lras] from the microprofile as an example. 
> An activity can be scoped within an existing Saga using the @SagaStart annotation. Invoking a method marked with this annotation will start a new Saga whose outcome depends upon whether the enclosing Saga is closed or cancelled.
> * If the nested Saga is closed but the outer Saga is cancelled then the participants registered with the nested Saga will be told to compensate.
> * If the nested Saga is cancelled the outer Saga can be still closed.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)