Re: [Saga] Ask questions about the Saga transaction process
Thank you for your reply, I agree, if we want to use the state machine, we need to analyze the state combination and switch first发送自我的三星盖乐世智能手机。 原始信息 由: Zheng Feng 日期: 2019/3/22 17:45 (GMT+08:00) 收件人: dev@servicecomb.apache.org 主题: Re: [Saga] Ask questions about the Saga transaction process It looks like you try to mix the success scenario, failure and compensatescenario, timeout scenario in the one picture ? I think it could be betterto separate into the different scenarios.As Willem mentioned, the timeout scenario is much more complicated. Anyway,this is a good idea to find out how we handle the saga events.Btw, I think this could be very helpful for us to define the state machineof the alpha server. Thanks for your contributions !Regards,Zheng fengzhang_...@boco.com.cn 于2019年3月21日周四 下午3:25写道:> This is a light version>>> https://raw.githubusercontent.com/coolbeevip/servicecomb-pack-notes/master/ServiceComb%20Alpha%20Saga/assets/sequence-booking-request-hotel-timeout.png>> 张 磊> > 部门: 亿阳信通IT运维支撑产品线> 地址: 北京市海淀区杏石口路99号西山赢府商务中心2410> 邮编: 100093> 手机: 18610099300> 移邮:zhang_...@boco.com.cn>> > 在 2019年3月21日,上午11:47,zhang_...@boco.com.cn 写道:> >> > The following link is a sequence diagram, step 4 cannot be compensated.> Will this happen?> >> >> https://github.com/coolbeevip/servicecomb-pack-notes/blob/master/ServiceComb%20Alpha%20EventScanner/assets/sequence-booking-request-hotel-timeout.png?raw=true> >> > coolbeevip> > > > BOCO> >> >> >>>
Re: [Saga] Ask questions about the Saga transaction process
It looks like you try to mix the success scenario, failure and compensate scenario, timeout scenario in the one picture ? I think it could be better to separate into the different scenarios. As Willem mentioned, the timeout scenario is much more complicated. Anyway, this is a good idea to find out how we handle the saga events. Btw, I think this could be very helpful for us to define the state machine of the alpha server. Thanks for your contributions ! Regards, Zheng Feng zhang_...@boco.com.cn 于2019年3月21日周四 下午3:25写道: > This is a light version > > > https://raw.githubusercontent.com/coolbeevip/servicecomb-pack-notes/master/ServiceComb%20Alpha%20Saga/assets/sequence-booking-request-hotel-timeout.png > > 张 磊 > > 部门: 亿阳信通IT运维支撑产品线 > 地址: 北京市海淀区杏石口路99号西山赢府商务中心2410 > 邮编: 100093 > 手机: 18610099300 > 移邮:zhang_...@boco.com.cn > > > 在 2019年3月21日,上午11:47,zhang_...@boco.com.cn 写道: > > > > The following link is a sequence diagram, step 4 cannot be compensated. > Will this happen? > > > > > https://github.com/coolbeevip/servicecomb-pack-notes/blob/master/ServiceComb%20Alpha%20EventScanner/assets/sequence-booking-request-hotel-timeout.png?raw=true > > > > coolbeevip > > > > BOCO > > > > > > > >
Re: [Saga] Ask questions about the Saga transaction process
Thank you for your reply, I think about it again. coolbeevip BOCO > 在 2019年3月22日,上午10:52,Willem Jiang 写道: > > For the timeout part, it's the hardest part of ServiceComb Pack. > Current we just deal it in a simple way: > Once the ServiceInvoker (Hotel) found out there is a timeout event, > it just send AbortEvent to the Alpha and end the whole transaction. > > For the TxEnded after the TxAbortEvent issue, we can address it by > letting Omega throw the exception when it received the response from > Alpha (Alpha should know the transaction is aborted at that time) > In this way, we could leverage the @Tranactional feature that Spring > provides to revert the local transaction without sending out the > compensation command. > > Any thought about that? > > Willem Jiang > > Twitter: willemjiang > Weibo: 姜宁willem > > On Thu, Mar 21, 2019 at 11:47 AM zhang_...@boco.com.cn > wrote: >> >> The following link is a sequence diagram, step 4 cannot be compensated. Will >> this happen? >> >> https://github.com/coolbeevip/servicecomb-pack-notes/blob/master/ServiceComb%20Alpha%20EventScanner/assets/sequence-booking-request-hotel-timeout.png?raw=true >> >> coolbeevip >> >> BOCO >> >> >>
Re: [Saga] Ask questions about the Saga transaction process
For the timeout part, it's the hardest part of ServiceComb Pack. Current we just deal it in a simple way: Once the ServiceInvoker (Hotel) found out there is a timeout event, it just send AbortEvent to the Alpha and end the whole transaction. For the TxEnded after the TxAbortEvent issue, we can address it by letting Omega throw the exception when it received the response from Alpha (Alpha should know the transaction is aborted at that time) In this way, we could leverage the @Tranactional feature that Spring provides to revert the local transaction without sending out the compensation command. Any thought about that? Willem Jiang Twitter: willemjiang Weibo: 姜宁willem On Thu, Mar 21, 2019 at 11:47 AM zhang_...@boco.com.cn wrote: > > The following link is a sequence diagram, step 4 cannot be compensated. Will > this happen? > > https://github.com/coolbeevip/servicecomb-pack-notes/blob/master/ServiceComb%20Alpha%20EventScanner/assets/sequence-booking-request-hotel-timeout.png?raw=true > > coolbeevip > > BOCO > > >
Re: [Saga] Ask questions about the Saga transaction process
This is a light version https://raw.githubusercontent.com/coolbeevip/servicecomb-pack-notes/master/ServiceComb%20Alpha%20Saga/assets/sequence-booking-request-hotel-timeout.png 张 磊 部门: 亿阳信通IT运维支撑产品线 地址: 北京市海淀区杏石口路99号西山赢府商务中心2410 邮编: 100093 手机: 18610099300 移邮:zhang_...@boco.com.cn > 在 2019年3月21日,上午11:47,zhang_...@boco.com.cn 写道: > > The following link is a sequence diagram, step 4 cannot be compensated. Will > this happen? > > https://github.com/coolbeevip/servicecomb-pack-notes/blob/master/ServiceComb%20Alpha%20EventScanner/assets/sequence-booking-request-hotel-timeout.png?raw=true > > coolbeevip > > BOCO > > >
[Saga] Ask questions about the Saga transaction process
The following link is a sequence diagram, step 4 cannot be compensated. Will this happen? https://github.com/coolbeevip/servicecomb-pack-notes/blob/master/ServiceComb%20Alpha%20EventScanner/assets/sequence-booking-request-hotel-timeout.png?raw=true coolbeevip BOCO