Browse Source

update barrier return value

pull/6/head
yedongfu 5 years ago
parent
commit
4e477afb5f
  1. 1
      dtmcli/barrier.go
  2. 6
      examples/main_saga_barrier.go

1
dtmcli/barrier.go

@ -72,6 +72,7 @@ func ThroughBarrierCall(db *sql.DB, transInfo *TransInfo, busiCall BusiFunc) (re
originAffected, _ := insertBarrier(tx, transInfo.TransType, transInfo.Gid, transInfo.BranchID, originType)
currentAffected, rerr := insertBarrier(tx, transInfo.TransType, transInfo.Gid, transInfo.BranchID, transInfo.TransType)
if currentAffected == 0 || (originType == "cancel" || originType == "compensate") && originAffected > 0 {
res = "SUCCESS" // 如果被忽略,那么直接返回 "SUCCESS",表示成功,可以进行下一步
return
}
res, rerr = busiCall(db)

6
examples/main_saga_barrier.go

@ -32,11 +32,7 @@ func SagaBarrierStartSvr() {
func SagaBarrierFireRequest() {
logrus.Printf("a busi transaction begin")
req := &TransReq{
Amount: 30,
TransInResult: "SUCCESS",
TransOutResult: "SUCCESS",
}
req := &TransReq{Amount: 30}
saga := dtmcli.NewSaga(DtmServer).
Add(SagaBarrierBusi+"/TransOut", SagaBarrierBusi+"/TransOutCompensate", req).
Add(SagaBarrierBusi+"/TransIn", SagaBarrierBusi+"/TransInCompensate", req)

Loading…
Cancel
Save