Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var CronForwardDuration = time.Duration(0)
CronForwardDuration will be set in test. cron will fetch trans which expire in CronForwardDuration
var NowForwardDuration = time.Duration(0)
NowForwardDuration will be set in test, trans may be timeout
var TransProcessedTestChan chan string
TransProcessedTestChan only for test usage. when transaction processed once, write gid to this chan
var UpdateBranchAsyncInterval = 200 * time.Millisecond
UpdateBranchAsyncInterval interval to flush branch
Functions ¶
func CronExpiredTrans ¶
func CronExpiredTrans(num int)
CronExpiredTrans cron expired trans, num == -1 indicate for ever
func CronTransOnce ¶
func CronTransOnce() (gid string)
CronTransOnce cron expired trans. use expireIn as expire time
Types ¶
type TransGlobal ¶
type TransGlobal struct { storage.TransGlobalStore // contains filtered or unexported fields }
TransGlobal global transaction
func GetTransGlobal ¶
func GetTransGlobal(gid string) *TransGlobal
GetTransGlobal construct trans from db
func TransFromContext ¶
func TransFromContext(c *gin.Context) *TransGlobal
TransFromContext TransFromContext
func TransFromDtmRequest ¶
func TransFromDtmRequest(ctx context.Context, c *dtmgpb.DtmRequest) *TransGlobal
TransFromDtmRequest TransFromContext
func TransFromJrpcParams ¶ added in v1.13.1
func TransFromJrpcParams(params interface{}) *TransGlobal
TransFromJrpcParams construct TransGlobal from jrpc params
func (*TransGlobal) Process ¶
func (t *TransGlobal) Process(branches []TransBranch) error
Process process global transaction once