api

package
v1.27.0-rc.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 21, 2025 License: MIT Imports: 54 Imported by: 0

Documentation

Overview

Package api is a generated GoMock package.

Index

Constants

This section is empty.

Variables

View Source
var (
	UpdateWorkflowWithNewWorkflowTask = &UpdateWorkflowAction{
		CreateWorkflowTask: true,
	}
	UpdateWorkflowWithoutWorkflowTask = &UpdateWorkflowAction{
		CreateWorkflowTask: false,
	}
	UpdateWorkflowTerminate = &UpdateWorkflowAction{
		CreateWorkflowTask: false,
		AbortUpdates:       true,
	}
)
View Source
var ErrUseCurrentExecution = errors.New("ErrUseCurrentExecution")

ErrUseCurrentExecution is a sentinel error to indicate to the caller to use the current workflow execution instead of creating a new one

Functions

func CreateMutableState

func CreateMutableState(
	shard shard.Context,
	namespaceEntry *namespace.Namespace,
	executionTimeout *durationpb.Duration,
	runTimeout *durationpb.Duration,
	workflowID string,
	runID string,
) (workflow.MutableState, error)

func DeserializeHistoryToken added in v1.23.0

func DeserializeHistoryToken(bytes []byte) (*tokenspb.HistoryContinuation, error)

NOTE: DO NOT MODIFY UNLESS ALSO APPLIED TO ./service/frontend/token_deprecated.go

func DeserializeRawHistoryToken added in v1.23.0

func DeserializeRawHistoryToken(bytes []byte) (*tokenspb.RawHistoryContinuation, error)

NOTE: DO NOT MODIFY UNLESS ALSO APPLIED TO ./service/frontend/token_deprecated.go

func GenerateFirstWorkflowTask

func GenerateFirstWorkflowTask(
	mutableState workflow.MutableState,
	parentInfo *workflowspb.ParentExecutionInfo,
	startEvent *historypb.HistoryEvent,
	bypassTaskGeneration bool,
) (int64, error)

func GeneratePaginationToken added in v1.23.0

func GeneratePaginationToken(
	request *historyservice.GetWorkflowExecutionRawHistoryRequest,
	versionHistories *historyspb.VersionHistories,
) *tokenspb.RawHistoryContinuation

func GeneratePaginationTokenV2Request added in v1.24.0

func GeneratePaginationTokenV2Request(
	request *historyservice.GetWorkflowExecutionRawHistoryV2Request,
	versionHistories *historyspb.VersionHistories,
) *tokenspb.RawHistoryContinuation

NOTE: DO NOT MODIFY UNLESS ALSO APPLIED TO ./service/frontend/token_deprecated.go

func GetActiveNamespace added in v1.18.0

func GetActiveNamespace(
	shard shard.Context,
	namespaceUUID namespace.ID,
) (*namespace.Namespace, error)

func GetActivityScheduledEventID added in v1.18.0

func GetActivityScheduledEventID(
	activityID string,
	mutableState workflow.MutableState,
) (int64, error)

func GetAndUpdateWorkflowWithConsistencyCheck added in v1.25.0

func GetAndUpdateWorkflowWithConsistencyCheck(
	ctx context.Context,
	reqClock *clockspb.VectorClock,
	consistencyCheckFn MutableStateConsistencyPredicate,
	workflowKey definition.WorkflowKey,
	action UpdateWorkflowActionFunc,
	newWorkflowFn func() (workflow.Context, workflow.MutableState, error),
	shardContext shard.Context,
	workflowConsistencyChecker WorkflowConsistencyChecker,
) (retError error)

func GetAndUpdateWorkflowWithNew added in v1.18.0

func GetAndUpdateWorkflowWithNew(
	ctx context.Context,
	reqClock *clockspb.VectorClock,
	workflowKey definition.WorkflowKey,
	action UpdateWorkflowActionFunc,
	newWorkflowFn func() (workflow.Context, workflow.MutableState, error),
	shard shard.Context,
	workflowConsistencyChecker WorkflowConsistencyChecker,
) (retError error)

func GetHistory added in v1.23.0

func GetHistory(
	ctx context.Context,
	shard shard.Context,
	namespaceID namespace.ID,
	execution *commonpb.WorkflowExecution,
	firstEventID int64,
	nextEventID int64,
	pageSize int32,
	nextPageToken []byte,
	transientWorkflowTaskInfo *historyspb.TransientWorkflowTaskInfo,
	branchToken []byte,
	persistenceVisibilityMgr manager.VisibilityManager,
) (*historypb.History, []byte, error)

func GetHistoryReverse added in v1.23.0

func GetHistoryReverse(
	ctx context.Context,
	shard shard.Context,
	namespaceID namespace.ID,
	execution *commonpb.WorkflowExecution,
	nextEventID int64,
	lastFirstTxnID int64,
	pageSize int32,
	nextPageToken []byte,
	branchToken []byte,
	persistenceVisibilityMgr manager.VisibilityManager,
) (*historypb.History, []byte, int64, error)

func GetMutableState added in v1.19.0

func GetMutableState(
	ctx context.Context,
	shardContext shard.Context,
	workflowKey definition.WorkflowKey,
	workflowConsistencyChecker WorkflowConsistencyChecker,
) (_ *historyservice.GetMutableStateResponse, retError error)

func GetMutableStateWithConsistencyCheck added in v1.26.2

func GetMutableStateWithConsistencyCheck(
	ctx context.Context,
	shardContext shard.Context,
	workflowKey definition.WorkflowKey,
	currentVersion int64,
	currentEventID int64,
	versionedTransition *persistencespb.VersionedTransition,
	workflowConsistencyChecker WorkflowConsistencyChecker,
) (_ *historyservice.GetMutableStateResponse, retError error)

func GetOrPollMutableState added in v1.19.0

func GetOrPollMutableState(
	ctx context.Context,
	shardContext shard.Context,
	request *historyservice.GetMutableStateRequest,
	workflowConsistencyChecker WorkflowConsistencyChecker,
	eventNotifier events.Notifier,
) (*historyservice.GetMutableStateResponse, error)

func GetRawHistory added in v1.23.0

func GetRawHistory(
	ctx context.Context,
	shard shard.Context,
	namespaceID namespace.ID,
	execution *commonpb.WorkflowExecution,
	firstEventID int64,
	nextEventID int64,
	pageSize int32,
	nextPageToken []byte,
	transientWorkflowTaskInfo *historyspb.TransientWorkflowTaskInfo,
	branchToken []byte,
) ([]*commonpb.DataBlob, []byte, error)

func GetTaskCategory added in v1.23.0

func GetTaskCategory(categoryID int, registry tasks.TaskCategoryRegistry) (tasks.Category, error)

func IsHistoryEventOnCurrentBranch added in v1.19.0

func IsHistoryEventOnCurrentBranch(
	mutableState workflow.MutableState,
	eventID int64,
	eventVersion int64,
) (bool, error)

func IsRetryableError added in v1.17.3

func IsRetryableError(err error) bool

func MigrateWorkflowIdReusePolicyForRunningWorkflow added in v1.24.0

func MigrateWorkflowIdReusePolicyForRunningWorkflow(
	wfIDReusePolicy *enumspb.WorkflowIdReusePolicy,
	wfIDConflictPolicy *enumspb.WorkflowIdConflictPolicy,
)

func MutableStateToGetResponse added in v1.19.0

func MutableStateToGetResponse(
	mutableState workflow.MutableState,
) (*historyservice.GetMutableStateResponse, error)

func NewWorkflowVersionCheck

func NewWorkflowVersionCheck(
	shard shard.Context,
	prevLastWriteVersion int64,
	newMutableState workflow.MutableState,
) error

func NewWorkflowWithSignal

func NewWorkflowWithSignal(
	shard shard.Context,
	namespaceEntry *namespace.Namespace,
	workflowID string,
	runID string,
	startRequest *historyservice.StartWorkflowExecutionRequest,
	signalWithStartRequest *workflowservice.SignalWithStartWorkflowExecutionRequest,
) (workflow.MutableState, error)

func OverrideStartWorkflowExecutionRequest added in v1.18.0

func OverrideStartWorkflowExecutionRequest(
	request *workflowservice.StartWorkflowExecutionRequest,
	operation string,
	shard shard.Context,
	metricsHandler metrics.Handler,
)

func ProcessOutgoingSearchAttributes added in v1.23.0

func ProcessOutgoingSearchAttributes(
	shardCtx shard.Context,
	events []*historypb.HistoryEvent,
	namespaceId namespace.ID,
	persistenceVisibilityMgr manager.VisibilityManager,
) error

func ResolveWorkflowIDReusePolicy added in v1.27.0

func ResolveWorkflowIDReusePolicy(
	workflowKey definition.WorkflowKey,
	currentStatus enumspb.WorkflowExecutionStatus,
	currentRequestIDs map[string]*persistencespb.RequestIDInfo,
	wfIDReusePolicy enumspb.WorkflowIdReusePolicy,
) error

func SerializeHistoryToken added in v1.23.0

func SerializeHistoryToken(token *tokenspb.HistoryContinuation) ([]byte, error)

NOTE: DO NOT MODIFY UNLESS ALSO APPLIED TO ./service/frontend/token_deprecated.go

func SerializeRawHistoryToken added in v1.23.0

func SerializeRawHistoryToken(token *tokenspb.RawHistoryContinuation) ([]byte, error)

NOTE: DO NOT MODIFY UNLESS ALSO APPLIED TO ./service/frontend/token_deprecated.go

func SetActivityTaskRunID added in v1.18.0

func SetActivityTaskRunID(
	ctx context.Context,
	token *tokenspb.Task,
	workflowConsistencyChecker WorkflowConsistencyChecker,
) error

func TrimHistoryNode added in v1.23.0

func TrimHistoryNode(
	ctx context.Context,
	shardContext shard.Context,
	workflowConsistencyChecker WorkflowConsistencyChecker,
	eventNotifier events.Notifier,
	namespaceID string,
	workflowID string,
	runID string,
)

func UpdateWorkflowWithNew

func UpdateWorkflowWithNew(
	shardContext shard.Context,
	ctx context.Context,
	workflowLease WorkflowLease,
	action UpdateWorkflowActionFunc,
	newWorkflowFn func() (workflow.Context, workflow.MutableState, error),
) (retError error)

func ValidateNamespaceUUID added in v1.18.0

func ValidateNamespaceUUID(
	namespaceUUID namespace.ID,
) error

func ValidatePaginationToken added in v1.23.0

func ValidatePaginationToken(
	request *historyservice.GetWorkflowExecutionRawHistoryRequest,
	token *tokenspb.RawHistoryContinuation,
) error

func ValidatePaginationTokenV2Request added in v1.24.0

func ValidatePaginationTokenV2Request(
	request *historyservice.GetWorkflowExecutionRawHistoryV2Request,
	token *tokenspb.RawHistoryContinuation,
) error

NOTE: DO NOT MODIFY UNLESS ALSO APPLIED TO ./service/frontend/token_deprecated.go

func ValidateReplicationConfig added in v1.19.0

func ValidateReplicationConfig(
	clusterMetadata cluster.Metadata,
) error

func ValidateSignal

func ValidateSignal(
	ctx context.Context,
	shard shard.Context,
	mutableState workflow.MutableState,
	signalPayloadSize int,
	operation string,
) error

func ValidateStart

func ValidateStart(
	ctx context.Context,
	shard shard.Context,
	namespaceEntry *namespace.Namespace,
	workflowID string,
	workflowInputSize int,
	workflowMemoSize int,
	operation string,
) error

func ValidateStartWorkflowExecutionRequest added in v1.18.0

func ValidateStartWorkflowExecutionRequest(
	ctx context.Context,
	request *workflowservice.StartWorkflowExecutionRequest,
	shard shard.Context,
	namespaceEntry *namespace.Namespace,
	operation string,
) error

Types

type CommandAttrValidator added in v1.26.2

type CommandAttrValidator struct {
	// contains filtered or unexported fields
}

func NewCommandAttrValidator added in v1.26.2

func NewCommandAttrValidator(
	namespaceRegistry namespace.Registry,
	config *configs.Config,
	searchAttributesValidator *searchattribute.Validator,
) *CommandAttrValidator

func (*CommandAttrValidator) ValidateActivityCancelAttributes added in v1.26.2

func (*CommandAttrValidator) ValidateActivityScheduleAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateActivityScheduleAttributes(
	namespaceID namespace.ID,
	attributes *commandpb.ScheduleActivityTaskCommandAttributes,
	runTimeout *durationpb.Duration,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateCancelExternalWorkflowExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateCancelExternalWorkflowExecutionAttributes(
	namespaceID namespace.ID,
	targetNamespaceID namespace.ID,
	initiatedChildExecutionsInSession map[string]struct{},
	attributes *commandpb.RequestCancelExternalWorkflowExecutionCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateCancelWorkflowExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateCancelWorkflowExecutionAttributes(
	attributes *commandpb.CancelWorkflowExecutionCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateCommandSequence added in v1.26.2

func (v *CommandAttrValidator) ValidateCommandSequence(
	commands []*commandpb.Command,
) error

func (*CommandAttrValidator) ValidateCompleteWorkflowExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateCompleteWorkflowExecutionAttributes(
	attributes *commandpb.CompleteWorkflowExecutionCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateContinueAsNewWorkflowExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateContinueAsNewWorkflowExecutionAttributes(
	namespaceName namespace.Name,
	attributes *commandpb.ContinueAsNewWorkflowExecutionCommandAttributes,
	executionInfo *persistencespb.WorkflowExecutionInfo,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateFailWorkflowExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateFailWorkflowExecutionAttributes(
	attributes *commandpb.FailWorkflowExecutionCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateModifyWorkflowProperties added in v1.26.2

func (*CommandAttrValidator) ValidateProtocolMessageAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateProtocolMessageAttributes(
	namespaceID namespace.ID,
	attributes *commandpb.ProtocolMessageCommandAttributes,
	runTimeout *durationpb.Duration,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateRecordMarkerAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateRecordMarkerAttributes(
	attributes *commandpb.RecordMarkerCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateSignalExternalWorkflowExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateSignalExternalWorkflowExecutionAttributes(
	namespaceID namespace.ID,
	targetNamespaceID namespace.ID,
	attributes *commandpb.SignalExternalWorkflowExecutionCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateStartChildExecutionAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateStartChildExecutionAttributes(
	namespaceID namespace.ID,
	targetNamespaceID namespace.ID,
	targetNamespace namespace.Name,
	attributes *commandpb.StartChildWorkflowExecutionCommandAttributes,
	parentInfo *persistencespb.WorkflowExecutionInfo,
	defaultWorkflowTaskTimeoutFn dynamicconfig.DurationPropertyFnWithNamespaceFilter,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateTimerCancelAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateTimerCancelAttributes(
	attributes *commandpb.CancelTimerCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateTimerScheduleAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateTimerScheduleAttributes(
	attributes *commandpb.StartTimerCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

func (*CommandAttrValidator) ValidateUpsertWorkflowSearchAttributes added in v1.26.2

func (v *CommandAttrValidator) ValidateUpsertWorkflowSearchAttributes(
	namespaceName namespace.Name,
	attributes *commandpb.UpsertWorkflowSearchAttributesCommandAttributes,
) (enumspb.WorkflowTaskFailedCause, error)

type CreateOrUpdateLeaseFunc added in v1.26.2

type CreateOrUpdateLeaseFunc func(
	WorkflowLease,
	shard.Context,
	workflow.MutableState,
) (WorkflowLease, error)

type MockWorkflowConsistencyChecker added in v1.26.0

type MockWorkflowConsistencyChecker struct {
	// contains filtered or unexported fields
}

MockWorkflowConsistencyChecker is a mock of WorkflowConsistencyChecker interface.

func NewMockWorkflowConsistencyChecker added in v1.26.0

func NewMockWorkflowConsistencyChecker(ctrl *gomock.Controller) *MockWorkflowConsistencyChecker

NewMockWorkflowConsistencyChecker creates a new mock instance.

func (*MockWorkflowConsistencyChecker) EXPECT added in v1.26.0

EXPECT returns an object that allows the caller to indicate expected use.

func (*MockWorkflowConsistencyChecker) GetCurrentRunID added in v1.26.0

func (m *MockWorkflowConsistencyChecker) GetCurrentRunID(ctx context.Context, namespaceID, workflowID string, lockPriority locks.Priority) (string, error)

GetCurrentRunID mocks base method.

func (*MockWorkflowConsistencyChecker) GetWorkflowCache added in v1.26.0

func (m *MockWorkflowConsistencyChecker) GetWorkflowCache() cache.Cache

GetWorkflowCache mocks base method.

func (*MockWorkflowConsistencyChecker) GetWorkflowLease added in v1.26.0

func (m *MockWorkflowConsistencyChecker) GetWorkflowLease(ctx context.Context, reqClock *clock.VectorClock, workflowKey definition.WorkflowKey, lockPriority locks.Priority) (WorkflowLease, error)

GetWorkflowLease mocks base method.

func (*MockWorkflowConsistencyChecker) GetWorkflowLeaseWithConsistencyCheck added in v1.26.0

func (m *MockWorkflowConsistencyChecker) GetWorkflowLeaseWithConsistencyCheck(ctx context.Context, reqClock *clock.VectorClock, consistencyPredicate MutableStateConsistencyPredicate, workflowKey definition.WorkflowKey, lockPriority locks.Priority) (WorkflowLease, error)

GetWorkflowLeaseWithConsistencyCheck mocks base method.

type MockWorkflowConsistencyCheckerMockRecorder added in v1.26.0

type MockWorkflowConsistencyCheckerMockRecorder struct {
	// contains filtered or unexported fields
}

MockWorkflowConsistencyCheckerMockRecorder is the mock recorder for MockWorkflowConsistencyChecker.

func (*MockWorkflowConsistencyCheckerMockRecorder) GetCurrentRunID added in v1.26.0

func (mr *MockWorkflowConsistencyCheckerMockRecorder) GetCurrentRunID(ctx, namespaceID, workflowID, lockPriority any) *gomock.Call

GetCurrentRunID indicates an expected call of GetCurrentRunID.

func (*MockWorkflowConsistencyCheckerMockRecorder) GetWorkflowCache added in v1.26.0

func (mr *MockWorkflowConsistencyCheckerMockRecorder) GetWorkflowCache() *gomock.Call

GetWorkflowCache indicates an expected call of GetWorkflowCache.

func (*MockWorkflowConsistencyCheckerMockRecorder) GetWorkflowLease added in v1.26.0

func (mr *MockWorkflowConsistencyCheckerMockRecorder) GetWorkflowLease(ctx, reqClock, workflowKey, lockPriority any) *gomock.Call

GetWorkflowLease indicates an expected call of GetWorkflowLease.

func (*MockWorkflowConsistencyCheckerMockRecorder) GetWorkflowLeaseWithConsistencyCheck added in v1.26.0

func (mr *MockWorkflowConsistencyCheckerMockRecorder) GetWorkflowLeaseWithConsistencyCheck(ctx, reqClock, consistencyPredicate, workflowKey, lockPriority any) *gomock.Call

GetWorkflowLeaseWithConsistencyCheck indicates an expected call of GetWorkflowLeaseWithConsistencyCheck.

type MutableStateConsistencyPredicate

type MutableStateConsistencyPredicate func(mutableState workflow.MutableState) bool

type UpdateWorkflowAction

type UpdateWorkflowAction struct {
	Noop               bool
	CreateWorkflowTask bool
	// Abort all "Workflow Updates" (not persistence updates) after persistence operation is succeeded but WF lock is not released.
	AbortUpdates bool
}

type UpdateWorkflowActionFunc

type UpdateWorkflowActionFunc func(WorkflowLease) (*UpdateWorkflowAction, error)

func ResolveDuplicateWorkflowID added in v1.24.0

func ResolveDuplicateWorkflowID(
	shardContext shard.Context,
	workflowKey definition.WorkflowKey,
	namespaceEntry *namespace.Namespace,
	newRunID string,
	currentState enumsspb.WorkflowExecutionState,
	currentStatus enumspb.WorkflowExecutionStatus,
	currentRequestIDs map[string]*persistencespb.RequestIDInfo,
	wfIDReusePolicy enumspb.WorkflowIdReusePolicy,
	wfIDConflictPolicy enumspb.WorkflowIdConflictPolicy,
	currentWorkflowStartTime time.Time,
	parentExecutionInfo *workflowspb.ParentExecutionInfo,
	childWorkflowOnly bool,
) (UpdateWorkflowActionFunc, error)

ResolveDuplicateWorkflowID determines how to resolve a workflow ID duplication upon workflow start according to the WorkflowIdReusePolicy (for *completed* workflow) or WorkflowIdConflictPolicy (for *running* workflow).

NOTE: this function assumes the workflow id reuse policy Terminate-if-Running has been migrated to the workflow id conflict policy Terminate-Existing before it is invoked.

An action (ie "mitigate and allow"), an error (ie "deny") or neither (ie "allow") is returned.

func ResolveWorkflowIDConflictPolicy added in v1.27.0

func ResolveWorkflowIDConflictPolicy(
	shardContext shard.Context,
	workflowKey definition.WorkflowKey,
	namespaceEntry *namespace.Namespace,
	newRunID string,
	currentRequestIDs map[string]*persistencespb.RequestIDInfo,
	wfIDConflictPolicy enumspb.WorkflowIdConflictPolicy,
	currentWorkflowStartTime time.Time,
	parentExecutionInfo *workflowspb.ParentExecutionInfo,
	childWorkflowOnly bool,
) (UpdateWorkflowActionFunc, error)

type VersionedRunID added in v1.24.0

type VersionedRunID struct {
	RunID            string
	LastWriteVersion int64
}

type WorkflowConsistencyChecker

type WorkflowConsistencyChecker interface {
	GetWorkflowCache() wcache.Cache
	GetCurrentRunID(
		ctx context.Context,
		namespaceID string,
		workflowID string,
		lockPriority locks.Priority,
	) (string, error)
	GetWorkflowLease(
		ctx context.Context,
		reqClock *clockspb.VectorClock,
		workflowKey definition.WorkflowKey,
		lockPriority locks.Priority,
	) (WorkflowLease, error)

	GetWorkflowLeaseWithConsistencyCheck(
		ctx context.Context,
		reqClock *clockspb.VectorClock,
		consistencyPredicate MutableStateConsistencyPredicate,
		workflowKey definition.WorkflowKey,
		lockPriority locks.Priority,
	) (WorkflowLease, error)
}

type WorkflowConsistencyCheckerImpl

type WorkflowConsistencyCheckerImpl struct {
	// contains filtered or unexported fields
}

func NewWorkflowConsistencyChecker

func NewWorkflowConsistencyChecker(
	shardContext shard.Context,
	workflowCache wcache.Cache,
) *WorkflowConsistencyCheckerImpl

func (*WorkflowConsistencyCheckerImpl) GetCurrentRunID

func (c *WorkflowConsistencyCheckerImpl) GetCurrentRunID(
	ctx context.Context,
	namespaceID string,
	workflowID string,
	lockPriority locks.Priority,
) (runID string, retErr error)

func (*WorkflowConsistencyCheckerImpl) GetWorkflowCache added in v1.19.0

func (c *WorkflowConsistencyCheckerImpl) GetWorkflowCache() wcache.Cache

func (*WorkflowConsistencyCheckerImpl) GetWorkflowLease added in v1.24.0

func (c *WorkflowConsistencyCheckerImpl) GetWorkflowLease(
	ctx context.Context,
	reqClock *clockspb.VectorClock,
	workflowKey definition.WorkflowKey,
	lockPriority locks.Priority,
) (WorkflowLease, error)

func (*WorkflowConsistencyCheckerImpl) GetWorkflowLeaseWithConsistencyCheck added in v1.25.0

func (c *WorkflowConsistencyCheckerImpl) GetWorkflowLeaseWithConsistencyCheck(
	ctx context.Context,
	reqClock *clockspb.VectorClock,
	consistencyPredicate MutableStateConsistencyPredicate,
	workflowKey definition.WorkflowKey,
	lockPriority locks.Priority,
) (WorkflowLease, error)

The code below should be used when custom workflow state validation is required. If consistencyPredicate failed (thus detecting a stale workflow state) workflow state will be cleared, and mutable state will be reloaded.

type WorkflowLease added in v1.24.0

type WorkflowLease interface {
	GetContext() workflow.Context
	GetMutableState() workflow.MutableState
	GetReleaseFn() wcache.ReleaseCacheFunc
}

func NewWorkflowLease added in v1.24.0

func NewWorkflowLease(
	context workflow.Context,
	releaseFn wcache.ReleaseCacheFunc,
	mutableState workflow.MutableState,
) WorkflowLease

func NewWorkflowLeaseAndContext added in v1.26.2

func NewWorkflowLeaseAndContext(
	existingLease WorkflowLease,
	shardCtx shard.Context,
	ms workflow.MutableState,
) (WorkflowLease, error)

NOTE: must implement CreateOrUpdateLeaseFunc.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL