xa params changed

This commit is contained in:
yedongfu 2021-07-03 19:03:24 +08:00
parent cf702bf141
commit 2a3297a3c5
3 changed files with 13 additions and 15 deletions

View File

@ -13,7 +13,7 @@ type M = map[string]interface{}
var e2p = common.E2P var e2p = common.E2P
type XaGlobalFunc func() error type XaGlobalFunc func(gid string) error
type XaLocalFunc func(db *common.DB) error type XaLocalFunc func(db *common.DB) error
@ -75,7 +75,8 @@ func (xa *Xa) XaLocalTransaction(gid string, transFunc XaLocalFunc) (rerr error)
return nil return nil
} }
func (xa *Xa) XaGlobalTransaction(gid string, transFunc XaGlobalFunc) (rerr error) { func (xa *Xa) XaGlobalTransaction(transFunc XaGlobalFunc) (gid string, rerr error) {
gid = common.GenGid()
data := &M{ data := &M{
"gid": gid, "gid": gid,
"trans_type": "xa", "trans_type": "xa",
@ -87,17 +88,17 @@ func (xa *Xa) XaGlobalTransaction(gid string, transFunc XaGlobalFunc) (rerr erro
rerr = x.(error) rerr = x.(error)
} }
}() }()
resp, err := common.RestyClient.R().SetBody(data).Post(xa.Server + "/prepare") resp, rerr := common.RestyClient.R().SetBody(data).Post(xa.Server + "/prepare")
e2p(err) e2p(rerr)
if !strings.Contains(resp.String(), "SUCCESS") { if !strings.Contains(resp.String(), "SUCCESS") {
panic(fmt.Errorf("unexpected result: %s", resp.String())) panic(fmt.Errorf("unexpected result: %s", resp.String()))
} }
err = transFunc() rerr = transFunc(gid)
e2p(err) e2p(rerr)
resp, err = common.RestyClient.R().SetBody(data).Post(xa.Server + "/submit") resp, rerr = common.RestyClient.R().SetBody(data).Post(xa.Server + "/submit")
e2p(err) e2p(rerr)
if !strings.Contains(resp.String(), "SUCCESS") { if !strings.Contains(resp.String(), "SUCCESS") {
panic(fmt.Errorf("unexpected result: %s", resp.String())) panic(fmt.Errorf("unexpected result: %s", resp.String()))
} }
return nil return
} }

View File

@ -87,8 +87,7 @@ func getBranchesStatus(gid string) []string {
func xaNormal(t *testing.T) { func xaNormal(t *testing.T) {
xa := examples.XaClient xa := examples.XaClient
gid := "xa-normal" gid, err := xa.XaGlobalTransaction(func(gid string) error {
err := xa.XaGlobalTransaction(gid, func() error {
req := examples.GenTransReq(30, false, false) req := examples.GenTransReq(30, false, false)
resp, err := common.RestyClient.R().SetBody(req).SetQueryParams(map[string]string{ resp, err := common.RestyClient.R().SetBody(req).SetQueryParams(map[string]string{
"gid": gid, "gid": gid,
@ -109,8 +108,7 @@ func xaNormal(t *testing.T) {
func xaRollback(t *testing.T) { func xaRollback(t *testing.T) {
xa := examples.XaClient xa := examples.XaClient
gid := "xa-rollback" gid, err := xa.XaGlobalTransaction(func(gid string) error {
err := xa.XaGlobalTransaction(gid, func() error {
req := examples.GenTransReq(30, false, true) req := examples.GenTransReq(30, false, true)
resp, err := common.RestyClient.R().SetBody(req).SetQueryParams(map[string]string{ resp, err := common.RestyClient.R().SetBody(req).SetQueryParams(map[string]string{
"gid": gid, "gid": gid,

View File

@ -34,8 +34,7 @@ func XaMain() {
} }
func XaFireRequest() { func XaFireRequest() {
gid := common.GenGid() _, err := XaClient.XaGlobalTransaction(func(gid string) (rerr error) {
err := XaClient.XaGlobalTransaction(gid, func() (rerr error) {
defer common.P2E(&rerr) defer common.P2E(&rerr)
req := GenTransReq(30, false, false) req := GenTransReq(30, false, false)
resp, err := common.RestyClient.R().SetBody(req).SetQueryParams(map[string]string{ resp, err := common.RestyClient.R().SetBody(req).SetQueryParams(map[string]string{