BranchHeadersmap[string]string`json:"branch_headers,omitempty" gorm:"-"`// custom branch headers, dtm server => service api
Concurrentbool`json:"concurrent" gorm:"-"`// for trans type: saga msg
TimeoutToFailint64`json:"timeout_to_fail,omitempty" gorm:"-"`// for trans type: xa, tcc, unit: second
RequestTimeoutint64`json:"requestTimeout" gorm:"-"`// for global trans resets request timeout, unit: second
RetryIntervalint64`json:"retry_interval,omitempty" gorm:"-"`// for trans type: msg saga xa tcc, unit: second
PassthroughHeaders[]string`json:"passthrough_headers,omitempty" gorm:"-"`// for inherit the specified gin context headers
BranchHeadersmap[string]string`json:"branch_headers,omitempty" gorm:"-"`// custom branch headers, dtm server => service api
Concurrentbool`json:"concurrent" gorm:"-"`// for trans type: saga msg
}
// TransBase base for all trans
typeTransBasestruct{
Gidstring`json:"gid"`
Gidstring`json:"gid"`// NOTE: unique in storage, can customize the generation rules instead of using server-side generation, it will help with the tracking
TransTypestring`json:"trans_type"`
Dtmstring`json:"-"`
CustomDatastring`json:"custom_data,omitempty"`
CustomDatastring`json:"custom_data,omitempty"`// nosql data persistence
TransOptions
Steps[]map[string]string`json:"steps,omitempty"`// use in MSG/SAGA