add waitResult sample
This commit is contained in:
parent
a17ad4a242
commit
6b9d8407ac
@ -54,6 +54,7 @@ func main() {
|
|||||||
examples.MsgFireRequest()
|
examples.MsgFireRequest()
|
||||||
} else if os.Args[1] == "all" { // 运行所有示例
|
} else if os.Args[1] == "all" { // 运行所有示例
|
||||||
examples.SagaSetup(app)
|
examples.SagaSetup(app)
|
||||||
|
examples.SagaWaitSetup(app)
|
||||||
examples.TccSetup(app)
|
examples.TccSetup(app)
|
||||||
examples.XaSetup(app)
|
examples.XaSetup(app)
|
||||||
examples.MsgSetup(app)
|
examples.MsgSetup(app)
|
||||||
|
|||||||
@ -13,6 +13,7 @@ func TestExamples(t *testing.T) {
|
|||||||
assertSucceed(t, examples.MsgFireRequest())
|
assertSucceed(t, examples.MsgFireRequest())
|
||||||
assertSucceed(t, examples.SagaBarrierFireRequest())
|
assertSucceed(t, examples.SagaBarrierFireRequest())
|
||||||
assertSucceed(t, examples.SagaFireRequest())
|
assertSucceed(t, examples.SagaFireRequest())
|
||||||
|
assertSucceed(t, examples.SagaWaitFireRequest())
|
||||||
assertSucceed(t, examples.TccBarrierFireRequest())
|
assertSucceed(t, examples.TccBarrierFireRequest())
|
||||||
assertSucceed(t, examples.TccFireRequest())
|
assertSucceed(t, examples.TccFireRequest())
|
||||||
assertSucceed(t, examples.TccFireRequestNested())
|
assertSucceed(t, examples.TccFireRequestNested())
|
||||||
|
|||||||
28
examples/main_saga_wait.go
Normal file
28
examples/main_saga_wait.go
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
package examples
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/gin-gonic/gin"
|
||||||
|
"github.com/yedf/dtm/dtmcli"
|
||||||
|
)
|
||||||
|
|
||||||
|
// SagaWaitSetup 1
|
||||||
|
func SagaWaitSetup(app *gin.Engine) {
|
||||||
|
}
|
||||||
|
|
||||||
|
// SagaWaitFireRequest 1
|
||||||
|
func SagaWaitFireRequest() string {
|
||||||
|
dtmcli.Logf("a saga busi transaction begin")
|
||||||
|
req := &TransReq{
|
||||||
|
Amount: 30,
|
||||||
|
TransInResult: "SUCCESS",
|
||||||
|
TransOutResult: "SUCCESS",
|
||||||
|
}
|
||||||
|
saga := dtmcli.NewSaga(DtmServer, dtmcli.MustGenGid(DtmServer)).
|
||||||
|
Add(Busi+"/TransOut", Busi+"/TransOutRevert", req).
|
||||||
|
Add(Busi+"/TransIn", Busi+"/TransInRevert", req)
|
||||||
|
saga.WaitResult = true // 设置为等待结果模式,后面的submit调用,会等待服务器处理这个事务。如果Submit正常返回,那么整个全局事务已成功完成
|
||||||
|
err := saga.Submit()
|
||||||
|
dtmcli.Logf("result gid is: %s", saga.Gid)
|
||||||
|
e2p(err)
|
||||||
|
return saga.Gid
|
||||||
|
}
|
||||||
Loading…
x
Reference in New Issue
Block a user