xa params changed
This commit is contained in:
parent
cf702bf141
commit
2a3297a3c5
19
dtmcli/xa.go
19
dtmcli/xa.go
@ -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
|
||||||
}
|
}
|
||||||
|
|||||||
@ -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,
|
||||||
|
|||||||
@ -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{
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user