Files
yms-daemon/internal/transaction/errors.go
T
2026-08-15 02:30:36 +08:00

27 lines
687 B
Go

package transaction
import (
"errors"
"fmt"
)
var (
ErrNotFound = errors.New("transaction record not found")
ErrActiveExists = errors.New("an unfinished transaction already exists")
ErrStepConflict = errors.New("step key already refers to different intent")
ErrStepNotPending = errors.New("step is not waiting for an execution result")
)
// ActiveTransactionError 告知调用方当前阻塞新请求的事务。
type ActiveTransactionError struct {
TransactionID string
}
func (e *ActiveTransactionError) Error() string {
return fmt.Sprintf("%s: %s", ErrActiveExists, e.TransactionID)
}
func (e *ActiveTransactionError) Unwrap() error {
return ErrActiveExists
}