Documentation ¶
Overview ¶
Package history is a generated GoMock package.
Index ¶
- Constants
- Variables
- func FindAutoResetPoint(timeSource clock.TimeSource, badBinaries *workflow.BadBinaries, ...) (string, *workflow.ResetPointInfo)
- func GenerateReplicationTask(targetClusters []string, task *persistence.ReplicationTaskInfo, ...) (*replicator.ReplicationTask, error)
- func GetAllHistory(historyMgr persistence.HistoryManager, ...) (*shared.History, []*shared.History, error)
- func NewService(params *service.BootstrapParams) common.Daemon
- func PaginateHistory(historyMgr persistence.HistoryManager, ...) ([]*shared.HistoryEvent, []*shared.History, []byte, int, error)
- type Config
- type Engine
- type EngineFactory
- type Handler
- func (h *Handler) CloseShard(ctx context.Context, request *gen.CloseShardRequest) (retError error)
- func (h *Handler) CreateEngine(context ShardContext) Engine
- func (h *Handler) DescribeHistoryHost(ctx context.Context, request *gen.DescribeHistoryHostRequest) (resp *gen.DescribeHistoryHostResponse, retError error)
- func (h *Handler) DescribeMutableState(ctx context.Context, request *hist.DescribeMutableStateRequest) (resp *hist.DescribeMutableStateResponse, retError error)
- func (h *Handler) DescribeWorkflowExecution(ctx context.Context, request *hist.DescribeWorkflowExecutionRequest) (resp *gen.DescribeWorkflowExecutionResponse, retError error)
- func (h *Handler) GetMutableState(ctx context.Context, getRequest *hist.GetMutableStateRequest) (resp *hist.GetMutableStateResponse, retError error)
- func (h *Handler) GetReplicationMessages(ctx context.Context, request *r.GetReplicationMessagesRequest) (resp *r.GetReplicationMessagesResponse, retError error)
- func (h *Handler) Health(ctx context.Context) (*health.HealthStatus, error)
- func (h *Handler) QueryWorkflow(ctx context.Context, request *hist.QueryWorkflowRequest) (resp *hist.QueryWorkflowResponse, retError error)
- func (h *Handler) RecordActivityTaskHeartbeat(ctx context.Context, wrappedRequest *hist.RecordActivityTaskHeartbeatRequest) (resp *gen.RecordActivityTaskHeartbeatResponse, retError error)
- func (h *Handler) RecordActivityTaskStarted(ctx context.Context, recordRequest *hist.RecordActivityTaskStartedRequest) (resp *hist.RecordActivityTaskStartedResponse, retError error)
- func (h *Handler) RecordChildExecutionCompleted(ctx context.Context, request *hist.RecordChildExecutionCompletedRequest) (retError error)
- func (h *Handler) RecordDecisionTaskStarted(ctx context.Context, recordRequest *hist.RecordDecisionTaskStartedRequest) (resp *hist.RecordDecisionTaskStartedResponse, retError error)
- func (h *Handler) RegisterHandler()
- func (h *Handler) RemoveSignalMutableState(ctx context.Context, wrappedRequest *hist.RemoveSignalMutableStateRequest) (retError error)
- func (h *Handler) RemoveTask(ctx context.Context, request *gen.RemoveTaskRequest) (retError error)
- func (h *Handler) ReplicateEvents(ctx context.Context, replicateRequest *hist.ReplicateEventsRequest) (retError error)
- func (h *Handler) ReplicateRawEvents(ctx context.Context, replicateRequest *hist.ReplicateRawEventsRequest) (retError error)
- func (h *Handler) RequestCancelWorkflowExecution(ctx context.Context, request *hist.RequestCancelWorkflowExecutionRequest) (retError error)
- func (h *Handler) ResetStickyTaskList(ctx context.Context, resetRequest *hist.ResetStickyTaskListRequest) (resp *hist.ResetStickyTaskListResponse, retError error)
- func (h *Handler) ResetWorkflowExecution(ctx context.Context, wrappedRequest *hist.ResetWorkflowExecutionRequest) (resp *gen.ResetWorkflowExecutionResponse, retError error)
- func (h *Handler) RespondActivityTaskCanceled(ctx context.Context, wrappedRequest *hist.RespondActivityTaskCanceledRequest) (retError error)
- func (h *Handler) RespondActivityTaskCompleted(ctx context.Context, wrappedRequest *hist.RespondActivityTaskCompletedRequest) (retError error)
- func (h *Handler) RespondActivityTaskFailed(ctx context.Context, wrappedRequest *hist.RespondActivityTaskFailedRequest) (retError error)
- func (h *Handler) RespondDecisionTaskCompleted(ctx context.Context, wrappedRequest *hist.RespondDecisionTaskCompletedRequest) (resp *hist.RespondDecisionTaskCompletedResponse, retError error)
- func (h *Handler) RespondDecisionTaskFailed(ctx context.Context, wrappedRequest *hist.RespondDecisionTaskFailedRequest) (retError error)
- func (h *Handler) ScheduleDecisionTask(ctx context.Context, request *hist.ScheduleDecisionTaskRequest) (retError error)
- func (h *Handler) SignalWithStartWorkflowExecution(ctx context.Context, ...) (resp *gen.StartWorkflowExecutionResponse, retError error)
- func (h *Handler) SignalWorkflowExecution(ctx context.Context, wrappedRequest *hist.SignalWorkflowExecutionRequest) (retError error)
- func (h *Handler) Start() error
- func (h *Handler) StartWorkflowExecution(ctx context.Context, wrappedRequest *hist.StartWorkflowExecutionRequest) (resp *gen.StartWorkflowExecutionResponse, retError error)
- func (h *Handler) Stop()
- func (h *Handler) SyncActivity(ctx context.Context, syncActivityRequest *hist.SyncActivityRequest) (retError error)
- func (h *Handler) SyncShardStatus(ctx context.Context, syncShardStatusRequest *hist.SyncShardStatusRequest) (retError error)
- func (h *Handler) TerminateWorkflowExecution(ctx context.Context, wrappedRequest *hist.TerminateWorkflowExecutionRequest) (retError error)
- type LocalTimerGate
- type LocalTimerGateImpl
- type MockEventsCache
- type MockHistoryEngine
- func (_m *MockHistoryEngine) DescribeMutableState(ctx context.Context, request *gohistory.DescribeMutableStateRequest) (*gohistory.DescribeMutableStateResponse, error)
- func (_m *MockHistoryEngine) DescribeWorkflowExecution(ctx context.Context, request *gohistory.DescribeWorkflowExecutionRequest) (*shared.DescribeWorkflowExecutionResponse, error)
- func (_m *MockHistoryEngine) GetMutableState(ctx context.Context, request *gohistory.GetMutableStateRequest) (*gohistory.GetMutableStateResponse, error)
- func (_m *MockHistoryEngine) GetReplicationMessages(ctx context.Context, taskID int64) (*replicator.ReplicationMessages, error)
- func (_m *MockHistoryEngine) NotifyNewHistoryEvent(event *historyEventNotification)
- func (_m *MockHistoryEngine) NotifyNewReplicationTasks(tasks []persistence.Task)
- func (_m *MockHistoryEngine) NotifyNewTimerTasks(tasks []persistence.Task)
- func (_m *MockHistoryEngine) NotifyNewTransferTasks(tasks []persistence.Task)
- func (_m *MockHistoryEngine) QueryWorkflow(ctx context.Context, request *gohistory.QueryWorkflowRequest) (*gohistory.QueryWorkflowResponse, error)
- func (_m *MockHistoryEngine) RecordActivityTaskHeartbeat(ctx context.Context, request *gohistory.RecordActivityTaskHeartbeatRequest) (*shared.RecordActivityTaskHeartbeatResponse, error)
- func (_m *MockHistoryEngine) RecordActivityTaskStarted(ctx context.Context, request *gohistory.RecordActivityTaskStartedRequest) (*gohistory.RecordActivityTaskStartedResponse, error)
- func (_m *MockHistoryEngine) RecordChildExecutionCompleted(ctx context.Context, request *gohistory.RecordChildExecutionCompletedRequest) error
- func (_m *MockHistoryEngine) RecordDecisionTaskStarted(ctx context.Context, request *gohistory.RecordDecisionTaskStartedRequest) (*gohistory.RecordDecisionTaskStartedResponse, error)
- func (_m *MockHistoryEngine) RemoveSignalMutableState(ctx context.Context, request *gohistory.RemoveSignalMutableStateRequest) error
- func (_m *MockHistoryEngine) ReplicateEvents(ctx context.Context, request *gohistory.ReplicateEventsRequest) error
- func (_m *MockHistoryEngine) ReplicateRawEvents(ctx context.Context, request *gohistory.ReplicateRawEventsRequest) error
- func (_m *MockHistoryEngine) RequestCancelWorkflowExecution(ctx context.Context, request *gohistory.RequestCancelWorkflowExecutionRequest) error
- func (_m *MockHistoryEngine) ResetStickyTaskList(ctx context.Context, request *gohistory.ResetStickyTaskListRequest) (*gohistory.ResetStickyTaskListResponse, error)
- func (_m *MockHistoryEngine) ResetWorkflowExecution(ctx context.Context, request *gohistory.ResetWorkflowExecutionRequest) (*shared.ResetWorkflowExecutionResponse, error)
- func (_m *MockHistoryEngine) RespondActivityTaskCanceled(ctx context.Context, request *gohistory.RespondActivityTaskCanceledRequest) error
- func (_m *MockHistoryEngine) RespondActivityTaskCompleted(ctx context.Context, request *gohistory.RespondActivityTaskCompletedRequest) error
- func (_m *MockHistoryEngine) RespondActivityTaskFailed(ctx context.Context, request *gohistory.RespondActivityTaskFailedRequest) error
- func (_m *MockHistoryEngine) RespondDecisionTaskCompleted(ctx context.Context, request *gohistory.RespondDecisionTaskCompletedRequest) (*gohistory.RespondDecisionTaskCompletedResponse, error)
- func (_m *MockHistoryEngine) RespondDecisionTaskFailed(ctx context.Context, request *gohistory.RespondDecisionTaskFailedRequest) error
- func (_m *MockHistoryEngine) ScheduleDecisionTask(ctx context.Context, request *gohistory.ScheduleDecisionTaskRequest) error
- func (_m *MockHistoryEngine) SignalWithStartWorkflowExecution(ctx context.Context, ...) (*shared.StartWorkflowExecutionResponse, error)
- func (_m *MockHistoryEngine) SignalWorkflowExecution(ctx context.Context, request *gohistory.SignalWorkflowExecutionRequest) error
- func (_m *MockHistoryEngine) Start()
- func (_m *MockHistoryEngine) StartWorkflowExecution(ctx context.Context, request *gohistory.StartWorkflowExecutionRequest) (*shared.StartWorkflowExecutionResponse, error)
- func (_m *MockHistoryEngine) Stop()
- func (_m *MockHistoryEngine) SyncActivity(ctx context.Context, request *gohistory.SyncActivityRequest) error
- func (_m *MockHistoryEngine) SyncShardStatus(ctx context.Context, request *gohistory.SyncShardStatusRequest) error
- func (_m *MockHistoryEngine) TerminateWorkflowExecution(ctx context.Context, request *gohistory.TerminateWorkflowExecutionRequest) error
- type MockHistoryEngineFactory
- type MockProcessor
- type MockQueueAckMgr
- type MockReplicatorQueueProcessor
- type MockReplicatorQueueProcessorMockRecorder
- type MockTimerProcessor
- type MockTimerQueueAckMgr
- type MockTimerQueueProcessor
- func (_m *MockTimerQueueProcessor) FailoverDomain(domainIDs map[string]struct{})
- func (_m *MockTimerQueueProcessor) LockTaskPrrocessing()
- func (_m *MockTimerQueueProcessor) NotifyNewTimers(clusterName string, timerTask []persistence.Task)
- func (_m *MockTimerQueueProcessor) Start()
- func (_m *MockTimerQueueProcessor) Stop()
- func (_m *MockTimerQueueProcessor) UnlockTaskPrrocessing()
- type MockTransferQueueProcessor
- func (_m *MockTransferQueueProcessor) FailoverDomain(domainIDs map[string]struct{})
- func (_m *MockTransferQueueProcessor) LockTaskPrrocessing()
- func (_m *MockTransferQueueProcessor) NotifyNewTask(clusterName string, transferTask []persistence.Task)
- func (_m *MockTransferQueueProcessor) Start()
- func (_m *MockTransferQueueProcessor) Stop()
- func (_m *MockTransferQueueProcessor) UnlockTaskPrrocessing()
- type Query
- type QueryEvent
- type QueryRegistry
- type QueryState
- type QueueProcessorOptions
- type RemoteTimerGate
- type RemoteTimerGateImpl
- func (timerGate *RemoteTimerGateImpl) Close()
- func (timerGate *RemoteTimerGateImpl) FireAfter(now time.Time) bool
- func (timerGate *RemoteTimerGateImpl) FireChan() <-chan struct{}
- func (timerGate *RemoteTimerGateImpl) SetCurrentTime(currentTime time.Time) bool
- func (timerGate *RemoteTimerGateImpl) Update(nextTime time.Time) bool
- type ReplicationTaskFetcher
- type ReplicationTaskFetchers
- type ReplicationTaskProcessor
- type ReplicatorQueueProcessor
- type SequenceNumberGenerator
- type Service
- type ShardContext
- type TestBase
- type TestShardContext
- func (s *TestShardContext) AppendHistoryEvents(request *persistence.AppendHistoryEventsRequest) (int, error)
- func (s *TestShardContext) AppendHistoryV2Events(request *persistence.AppendHistoryNodesRequest, domainID string, ...) (int, error)
- func (s *TestShardContext) ConflictResolveWorkflowExecution(request *persistence.ConflictResolveWorkflowExecutionRequest) error
- func (s *TestShardContext) CreateWorkflowExecution(request *persistence.CreateWorkflowExecutionRequest) (*persistence.CreateWorkflowExecutionResponse, error)
- func (s *TestShardContext) DeleteTimerFailoverLevel(failoverID string) error
- func (s *TestShardContext) DeleteTransferFailoverLevel(failoverID string) error
- func (s *TestShardContext) GenerateTransferTaskID() (int64, error)
- func (s *TestShardContext) GenerateTransferTaskIDs(number int) ([]int64, error)
- func (s *TestShardContext) GetAllTimerFailoverLevels() map[string]persistence.TimerFailoverLevel
- func (s *TestShardContext) GetAllTransferFailoverLevels() map[string]persistence.TransferFailoverLevel
- func (s *TestShardContext) GetClusterMetadata() cluster.Metadata
- func (s *TestShardContext) GetClusterReplicationLevel(cluster string) int64
- func (s *TestShardContext) GetConfig() *Config
- func (s *TestShardContext) GetCurrentTime(cluster string) time.Time
- func (s *TestShardContext) GetDomainCache() cache.DomainCache
- func (s *TestShardContext) GetDomainNotificationVersion() int64
- func (s *TestShardContext) GetEngine() Engine
- func (s *TestShardContext) GetEventsCache() eventsCache
- func (s *TestShardContext) GetExecutionManager() persistence.ExecutionManager
- func (s *TestShardContext) GetHistoryManager() persistence.HistoryManager
- func (s *TestShardContext) GetHistoryV2Manager() persistence.HistoryV2Manager
- func (s *TestShardContext) GetLogger() log.Logger
- func (s *TestShardContext) GetMetricsClient() metrics.Client
- func (s *TestShardContext) GetRangeID() int64
- func (s *TestShardContext) GetReplicatorAckLevel() int64
- func (s *TestShardContext) GetService() service.Service
- func (s *TestShardContext) GetShardID() int
- func (s *TestShardContext) GetThrottledLogger() log.Logger
- func (s *TestShardContext) GetTimeSource() clock.TimeSource
- func (s *TestShardContext) GetTimerAckLevel() time.Time
- func (s *TestShardContext) GetTimerClusterAckLevel(cluster string) time.Time
- func (s *TestShardContext) GetTimerMaxReadLevel(cluster string) time.Time
- func (s *TestShardContext) GetTransferAckLevel() int64
- func (s *TestShardContext) GetTransferClusterAckLevel(cluster string) int64
- func (s *TestShardContext) GetTransferMaxReadLevel() int64
- func (s *TestShardContext) Reset()
- func (s *TestShardContext) ResetWorkflowExecution(request *persistence.ResetWorkflowExecutionRequest) error
- func (s *TestShardContext) SetCurrentTime(cluster string, currentTime time.Time)
- func (s *TestShardContext) SetEngine(engine Engine)
- func (s *TestShardContext) UpdateClusterReplicationLevel(cluster string, lastTaskID int64) error
- func (s *TestShardContext) UpdateDomainNotificationVersion(domainNotificationVersion int64) error
- func (s *TestShardContext) UpdateReplicatorAckLevel(ackLevel int64) error
- func (s *TestShardContext) UpdateTimerAckLevel(ackLevel time.Time) error
- func (s *TestShardContext) UpdateTimerClusterAckLevel(cluster string, ackLevel time.Time) error
- func (s *TestShardContext) UpdateTimerFailoverLevel(failoverID string, level persistence.TimerFailoverLevel) error
- func (s *TestShardContext) UpdateTimerMaxReadLevel(cluster string) time.Time
- func (s *TestShardContext) UpdateTransferAckLevel(ackLevel int64) error
- func (s *TestShardContext) UpdateTransferClusterAckLevel(cluster string, ackLevel int64) error
- func (s *TestShardContext) UpdateTransferFailoverLevel(failoverID string, level persistence.TransferFailoverLevel) error
- func (s *TestShardContext) UpdateWorkflowExecution(request *persistence.UpdateWorkflowExecutionRequest) (*persistence.UpdateWorkflowExecutionResponse, error)
- type TimerGate
- type TimerSequenceID
Constants ¶
const ( // ErrMessageHistorySizeZero indicate that history is empty ErrMessageHistorySizeZero = "encounter history size being zero" // ErrMessageNewRunHistorySizeZero indicate that new run history is empty ErrMessageNewRunHistorySizeZero = "encounter new run history size being zero" )
const ( TimerTaskStatusNone = iota TimerTaskStatusCreated )
Timer task status
const ( TimerTaskStatusCreatedStartToClose = 1 << iota TimerTaskStatusCreatedScheduleToStart TimerTaskStatusCreatedScheduleToClose TimerTaskStatusCreatedHeartbeat )
Activity Timer task status
Variables ¶
var ( // ErrTaskDiscarded is the error indicating that the timer / transfer task is pending for too long and discarded. ErrTaskDiscarded = errors.New("passive task pending for too long") // ErrTaskRetry is the error indicating that the timer / transfer task should be retried. ErrTaskRetry = errors.New("passive task should retry due to condition in mutable state is not met") // ErrDuplicate is exported temporarily for integration test ErrDuplicate = errors.New("Duplicate task, completing it") // ErrConflict is exported temporarily for integration test ErrConflict = errors.New("Conditional update failed") // ErrMaxAttemptsExceeded is exported temporarily for integration test ErrMaxAttemptsExceeded = errors.New("Maximum attempts exceeded to update history") // ErrStaleState is the error returned during state update indicating that cached mutable state could be stale ErrStaleState = errors.New("Cache mutable state could potentially be stale") // ErrActivityTaskNotFound is the error to indicate activity task could be duplicate and activity already completed ErrActivityTaskNotFound = &workflow.EntityNotExistsError{Message: "Activity task not found."} // ErrWorkflowCompleted is the error to indicate workflow execution already completed ErrWorkflowCompleted = &workflow.EntityNotExistsError{Message: "Workflow execution already completed."} // ErrWorkflowParent is the error to parent execution is given and mismatch ErrWorkflowParent = &workflow.EntityNotExistsError{Message: "Workflow parent does not match."} // ErrDeserializingToken is the error to indicate task token is invalid ErrDeserializingToken = &workflow.BadRequestError{Message: "Error deserializing task token."} // ErrSignalOverSize is the error to indicate signal input size is > 256K ErrSignalOverSize = &workflow.BadRequestError{Message: "Signal input size is over 256K."} // ErrCancellationAlreadyRequested is the error indicating cancellation for target workflow is already requested ErrCancellationAlreadyRequested = &workflow.CancellationAlreadyRequestedError{Message: "Cancellation already requested for this workflow execution."} // ErrSignalsLimitExceeded is the error indicating limit reached for maximum number of signal events ErrSignalsLimitExceeded = &workflow.LimitExceededError{Message: "Exceeded workflow execution limit for signal events"} // ErrEventsAterWorkflowFinish is the error indicating server error trying to write events after workflow finish event ErrEventsAterWorkflowFinish = &workflow.InternalServiceError{Message: "error validating last event being workflow finish event."} // ErrQueryTimeout is the error indicating query timed out before being answered ErrQueryTimeout = errors.New("query timed out") // FailedWorkflowCloseState is a set of failed workflow close states, used for start workflow policy // for start workflow execution API FailedWorkflowCloseState = map[int]bool{ persistence.WorkflowCloseStatusFailed: true, persistence.WorkflowCloseStatusCanceled: true, persistence.WorkflowCloseStatusTerminated: true, persistence.WorkflowCloseStatusTimedOut: true, } )
var ( // ErrRetryEntityNotExists is returned to indicate workflow execution is not created yet and replicator should // try this task again after a small delay. ErrRetryEntityNotExists = &shared.RetryTaskError{Message: "entity not exists"} // ErrRetryRaceCondition is returned to indicate logic race condition encountered and replicator should // try this task again after a small delay. ErrRetryRaceCondition = &shared.RetryTaskError{Message: "encounter race condition, retry"} // ErrRetrySyncActivityMsg is returned when sync activity replication tasks are arriving out of order, should retry ErrRetrySyncActivityMsg = "retry on applying sync activity" // ErrRetryBufferEventsMsg is returned when events are arriving out of order, should retry, or specify force apply ErrRetryBufferEventsMsg = "retry on applying buffer events" // ErrWorkflowNotFoundMsg is returned when workflow not found ErrWorkflowNotFoundMsg = "retry on workflow not found" // ErrRetryExistingWorkflowMsg is returned when events are arriving out of order, and there is another workflow with same version running ErrRetryExistingWorkflowMsg = "workflow with same version is running" // ErrRetryExecutionAlreadyStarted is returned to indicate another workflow execution already started, // this error can be return if we encounter race condition, i.e. terminating the target workflow while // the target workflow has done continue as new. // try this task again after a small delay. ErrRetryExecutionAlreadyStarted = &shared.RetryTaskError{Message: "another workflow execution is running"} // ErrCorruptedReplicationInfo is returned when replication task has corrupted replication information from source cluster ErrCorruptedReplicationInfo = &shared.BadRequestError{Message: "replication task is has corrupted cluster replication info"} // ErrCorruptedMutableStateDecision is returned when mutable state decision is corrupted ErrCorruptedMutableStateDecision = &shared.BadRequestError{Message: "mutable state decision is corrupted"} // ErrMoreThan2DC is returned when there are more than 2 data center ErrMoreThan2DC = &shared.BadRequestError{Message: "more than 2 data center"} // ErrImpossibleLocalRemoteMissingReplicationInfo is returned when replication task is missing replication info, as well as local replication info being empty ErrImpossibleLocalRemoteMissingReplicationInfo = &shared.BadRequestError{Message: "local and remote both are missing replication info"} // ErrImpossibleRemoteClaimSeenHigherVersion is returned when replication info contains higher version then this cluster ever emitted. ErrImpossibleRemoteClaimSeenHigherVersion = &shared.BadRequestError{Message: "replication info contains higher version then this cluster ever emitted"} // ErrInternalFailure is returned when encounter code bug ErrInternalFailure = &shared.BadRequestError{Message: "fail to apply history events due bug"} // ErrEmptyHistoryRawEventBatch indicate that one single batch of history raw events is of size 0 ErrEmptyHistoryRawEventBatch = &shared.BadRequestError{Message: "encounter empty history batch"} // ErrUnknownEncodingType indicate that the encoding type is unknown ErrUnknownEncodingType = &shared.BadRequestError{Message: "unknown encoding type"} // ErrUnreappliableEvent indicate that the event is not reappliable ErrUnreappliableEvent = &shared.BadRequestError{Message: "event is not reappliable"} // ErrWorkflowMutationDecision indicate that something is wrong with mutating workflow, i.e. adding decision to workflow ErrWorkflowMutationDecision = &shared.BadRequestError{Message: "error encountered when mutating workflow adding decision"} // ErrWorkflowMutationSignal indicate that something is wrong with mutating workflow, i.e. adding signal to workflow ErrWorkflowMutationSignal = &shared.BadRequestError{Message: "error encountered when mutating workflow adding signal"} )
var ( // ErrAlreadyTerminal indicates event cannot be applied to query because query is already in terminal state. ErrAlreadyTerminal = errors.New("query has already reached terminal state cannot post any new events") // ErrInvalidEvent indicates event cannot be applied to query in state. ErrInvalidEvent = errors.New("event cannot be applied to query in state") // ErrResultAlreadyRecorded indicates query cannot make state transition because result has already been recorded. ErrResultAlreadyRecorded = errors.New("result already recorded cannot make state transition") // ErrFailedToInvokeQueryRegistryCallback indicates that notifying query registry of its state transition failed. ErrFailedToInvokeQueryRegistryCallback = errors.New("notifying query registry of state transition failed") )
var ( // ErrUnknownReplicationTask is the error to indicate unknown replication task type ErrUnknownReplicationTask = &shared.BadRequestError{Message: "unknown replication task"} )
var ( // ErrWorkflowFinished indicates trying to mutate mutable state after workflow finished ErrWorkflowFinished = &workflow.InternalServiceError{Message: "invalid mutable state action: mutation after finish"} )
Functions ¶
func FindAutoResetPoint ¶ added in v0.5.8
func FindAutoResetPoint( timeSource clock.TimeSource, badBinaries *workflow.BadBinaries, autoResetPoints *workflow.ResetPoints, ) (string, *workflow.ResetPointInfo)
FindAutoResetPoint returns the auto reset point
func GenerateReplicationTask ¶ added in v0.5.0
func GenerateReplicationTask( targetClusters []string, task *persistence.ReplicationTaskInfo, historyMgr persistence.HistoryManager, historyV2Mgr persistence.HistoryV2Manager, metricsClient metrics.Client, logger log.Logger, history *shared.History, shardID *int, ) (*replicator.ReplicationTask, error)
GenerateReplicationTask generate replication task
func GetAllHistory ¶ added in v0.5.0
func GetAllHistory( historyMgr persistence.HistoryManager, historyV2Mgr persistence.HistoryV2Manager, metricsClient metrics.Client, logger log.Logger, byBatch bool, domainID string, workflowID string, runID string, firstEventID int64, nextEventID int64, eventStoreVersion int32, branchToken []byte, shardID *int, ) (*shared.History, []*shared.History, error)
GetAllHistory return history
func NewService ¶
func NewService(params *service.BootstrapParams) common.Daemon
NewService builds a new cadence-history service
func PaginateHistory ¶ added in v0.5.0
func PaginateHistory(historyMgr persistence.HistoryManager, historyV2Mgr persistence.HistoryV2Manager, metricsClient metrics.Client, logger log.Logger, byBatch bool, domainID, workflowID, runID string, firstEventID, nextEventID int64, tokenIn []byte, eventStoreVersion int32, branchToken []byte, pageSize int, shardID *int) ([]*shared.HistoryEvent, []*shared.History, []byte, int, error)
PaginateHistory return paged history
Types ¶
type Config ¶ added in v0.3.1
type Config struct { NumberOfShards int RPS dynamicconfig.IntPropertyFn MaxIDLengthLimit dynamicconfig.IntPropertyFn PersistenceMaxQPS dynamicconfig.IntPropertyFn EnableVisibilitySampling dynamicconfig.BoolPropertyFn EnableReadFromClosedExecutionV2 dynamicconfig.BoolPropertyFn VisibilityOpenMaxQPS dynamicconfig.IntPropertyFnWithDomainFilter VisibilityClosedMaxQPS dynamicconfig.IntPropertyFnWithDomainFilter AdvancedVisibilityWritingMode dynamicconfig.StringPropertyFn EmitShardDiffLog dynamicconfig.BoolPropertyFn MaxAutoResetPoints dynamicconfig.IntPropertyFnWithDomainFilter ThrottledLogRPS dynamicconfig.IntPropertyFn // HistoryCache settings // Change of these configs require shard restart HistoryCacheInitialSize dynamicconfig.IntPropertyFn HistoryCacheMaxSize dynamicconfig.IntPropertyFn HistoryCacheTTL dynamicconfig.DurationPropertyFn // EventsCache settings // Change of these configs require shard restart EventsCacheInitialSize dynamicconfig.IntPropertyFn EventsCacheMaxSize dynamicconfig.IntPropertyFn EventsCacheTTL dynamicconfig.DurationPropertyFn // ShardController settings RangeSizeBits uint AcquireShardInterval dynamicconfig.DurationPropertyFn // the artificial delay added to standby cluster's view of active cluster's time StandbyClusterDelay dynamicconfig.DurationPropertyFn // TimerQueueProcessor settings TimerTaskBatchSize dynamicconfig.IntPropertyFn TimerTaskWorkerCount dynamicconfig.IntPropertyFn TimerTaskMaxRetryCount dynamicconfig.IntPropertyFn TimerProcessorGetFailureRetryCount dynamicconfig.IntPropertyFn TimerProcessorCompleteTimerFailureRetryCount dynamicconfig.IntPropertyFn TimerProcessorUpdateAckInterval dynamicconfig.DurationPropertyFn TimerProcessorUpdateAckIntervalJitterCoefficient dynamicconfig.FloatPropertyFn TimerProcessorCompleteTimerInterval dynamicconfig.DurationPropertyFn TimerProcessorFailoverMaxPollRPS dynamicconfig.IntPropertyFn TimerProcessorMaxPollRPS dynamicconfig.IntPropertyFn TimerProcessorMaxPollInterval dynamicconfig.DurationPropertyFn TimerProcessorMaxPollIntervalJitterCoefficient dynamicconfig.FloatPropertyFn TimerProcessorMaxTimeShift dynamicconfig.DurationPropertyFn TimerProcessorHistoryArchivalSizeLimit dynamicconfig.IntPropertyFn TimerProcessorHistoryArchivalTimeLimit dynamicconfig.DurationPropertyFn // TransferQueueProcessor settings TransferTaskBatchSize dynamicconfig.IntPropertyFn TransferTaskWorkerCount dynamicconfig.IntPropertyFn TransferTaskMaxRetryCount dynamicconfig.IntPropertyFn TransferProcessorCompleteTransferFailureRetryCount dynamicconfig.IntPropertyFn TransferProcessorFailoverMaxPollRPS dynamicconfig.IntPropertyFn TransferProcessorMaxPollRPS dynamicconfig.IntPropertyFn TransferProcessorMaxPollInterval dynamicconfig.DurationPropertyFn TransferProcessorMaxPollIntervalJitterCoefficient dynamicconfig.FloatPropertyFn TransferProcessorUpdateAckInterval dynamicconfig.DurationPropertyFn TransferProcessorUpdateAckIntervalJitterCoefficient dynamicconfig.FloatPropertyFn TransferProcessorCompleteTransferInterval dynamicconfig.DurationPropertyFn TransferProcessorVisibilityArchivalTimeLimit dynamicconfig.DurationPropertyFn // ReplicatorQueueProcessor settings ReplicatorTaskBatchSize dynamicconfig.IntPropertyFn ReplicatorTaskWorkerCount dynamicconfig.IntPropertyFn ReplicatorTaskMaxRetryCount dynamicconfig.IntPropertyFn ReplicatorProcessorMaxPollRPS dynamicconfig.IntPropertyFn ReplicatorProcessorMaxPollInterval dynamicconfig.DurationPropertyFn ReplicatorProcessorMaxPollIntervalJitterCoefficient dynamicconfig.FloatPropertyFn ReplicatorProcessorUpdateAckInterval dynamicconfig.DurationPropertyFn ReplicatorProcessorUpdateAckIntervalJitterCoefficient dynamicconfig.FloatPropertyFn ReplicatorProcessorFetchTasksBatchSize dynamicconfig.IntPropertyFn // Persistence settings ExecutionMgrNumConns dynamicconfig.IntPropertyFn HistoryMgrNumConns dynamicconfig.IntPropertyFn // System Limits MaximumBufferedEventsBatch dynamicconfig.IntPropertyFn MaximumSignalsPerExecution dynamicconfig.IntPropertyFnWithDomainFilter // ShardUpdateMinInterval the minimal time interval which the shard info can be updated ShardUpdateMinInterval dynamicconfig.DurationPropertyFn // ShardSyncMinInterval the minimal time interval which the shard info should be sync to remote ShardSyncMinInterval dynamicconfig.DurationPropertyFn // Time to hold a poll request before returning an empty response // right now only used by GetMutableState LongPollExpirationInterval dynamicconfig.DurationPropertyFnWithDomainFilter // encoding the history events EventEncodingType dynamicconfig.StringPropertyFnWithDomainFilter // whether or not using eventsV2 EnableEventsV2 dynamicconfig.BoolPropertyFnWithDomainFilter // whether or not using Terminate as default ParentClosePolicy, otherwise use Abandon for backward compatibility UseTerminateAsDefaultParentClosePolicy dynamicconfig.BoolPropertyFnWithDomainFilter // Archival settings NumArchiveSystemWorkflows dynamicconfig.IntPropertyFn ArchiveRequestRPS dynamicconfig.IntPropertyFn // Size limit related settings BlobSizeLimitError dynamicconfig.IntPropertyFnWithDomainFilter BlobSizeLimitWarn dynamicconfig.IntPropertyFnWithDomainFilter HistorySizeLimitError dynamicconfig.IntPropertyFnWithDomainFilter HistorySizeLimitWarn dynamicconfig.IntPropertyFnWithDomainFilter HistoryCountLimitError dynamicconfig.IntPropertyFnWithDomainFilter HistoryCountLimitWarn dynamicconfig.IntPropertyFnWithDomainFilter // ValidSearchAttributes is legal indexed keys that can be used in list APIs ValidSearchAttributes dynamicconfig.MapPropertyFn SearchAttributesNumberOfKeysLimit dynamicconfig.IntPropertyFnWithDomainFilter SearchAttributesSizeOfValueLimit dynamicconfig.IntPropertyFnWithDomainFilter SearchAttributesTotalSizeLimit dynamicconfig.IntPropertyFnWithDomainFilter // Decision settings // StickyTTL is to expire a sticky tasklist if no update more than this duration // TODO https://github.com/uber/cadence/issues/2357 StickyTTL dynamicconfig.DurationPropertyFnWithDomainFilter // DecisionHeartbeatTimeout is to timeout behavior of: RespondDecisionTaskComplete with ForceCreateNewDecisionTask == true without any decisions // So that decision will be scheduled to another worker(by clear stickyness) DecisionHeartbeatTimeout dynamicconfig.DurationPropertyFnWithDomainFilter // MaxDecisionStartToCloseSeconds is the StartToCloseSeconds for decision MaxDecisionStartToCloseSeconds dynamicconfig.IntPropertyFnWithDomainFilter }
Config represents configuration for cadence-history service
func NewConfig ¶ added in v0.3.1
func NewConfig(dc *dynamicconfig.Collection, numberOfShards int, storeType string, isAdvancedVisConfigExist bool) *Config
NewConfig returns new service config with default values
func NewDynamicConfigForEventsV2Test ¶ added in v0.5.0
func NewDynamicConfigForEventsV2Test() *Config
NewDynamicConfigForEventsV2Test with enableEventsV2 = true
func NewDynamicConfigForTest ¶ added in v0.5.0
func NewDynamicConfigForTest() *Config
NewDynamicConfigForTest return dc for test
func (*Config) GetShardID ¶ added in v0.3.3
GetShardID return the corresponding shard ID for a given workflow ID
type Engine ¶
type Engine interface { common.Daemon StartWorkflowExecution(ctx context.Context, request *h.StartWorkflowExecutionRequest) (*workflow.StartWorkflowExecutionResponse, error) GetMutableState(ctx context.Context, request *h.GetMutableStateRequest) (*h.GetMutableStateResponse, error) DescribeMutableState(ctx context.Context, request *h.DescribeMutableStateRequest) (*h.DescribeMutableStateResponse, error) ResetStickyTaskList(ctx context.Context, resetRequest *h.ResetStickyTaskListRequest) (*h.ResetStickyTaskListResponse, error) DescribeWorkflowExecution(ctx context.Context, request *h.DescribeWorkflowExecutionRequest) (*workflow.DescribeWorkflowExecutionResponse, error) RecordDecisionTaskStarted(ctx context.Context, request *h.RecordDecisionTaskStartedRequest) (*h.RecordDecisionTaskStartedResponse, error) RecordActivityTaskStarted(ctx context.Context, request *h.RecordActivityTaskStartedRequest) (*h.RecordActivityTaskStartedResponse, error) RespondDecisionTaskCompleted(ctx context.Context, request *h.RespondDecisionTaskCompletedRequest) (*h.RespondDecisionTaskCompletedResponse, error) RespondDecisionTaskFailed(ctx context.Context, request *h.RespondDecisionTaskFailedRequest) error RespondActivityTaskCompleted(ctx context.Context, request *h.RespondActivityTaskCompletedRequest) error RespondActivityTaskFailed(ctx context.Context, request *h.RespondActivityTaskFailedRequest) error RespondActivityTaskCanceled(ctx context.Context, request *h.RespondActivityTaskCanceledRequest) error RecordActivityTaskHeartbeat(ctx context.Context, request *h.RecordActivityTaskHeartbeatRequest) (*workflow.RecordActivityTaskHeartbeatResponse, error) RequestCancelWorkflowExecution(ctx context.Context, request *h.RequestCancelWorkflowExecutionRequest) error SignalWorkflowExecution(ctx context.Context, request *h.SignalWorkflowExecutionRequest) error SignalWithStartWorkflowExecution(ctx context.Context, request *h.SignalWithStartWorkflowExecutionRequest) (*workflow.StartWorkflowExecutionResponse, error) RemoveSignalMutableState(ctx context.Context, request *h.RemoveSignalMutableStateRequest) error TerminateWorkflowExecution(ctx context.Context, request *h.TerminateWorkflowExecutionRequest) error ResetWorkflowExecution(ctx context.Context, request *h.ResetWorkflowExecutionRequest) (*workflow.ResetWorkflowExecutionResponse, error) ScheduleDecisionTask(ctx context.Context, request *h.ScheduleDecisionTaskRequest) error RecordChildExecutionCompleted(ctx context.Context, request *h.RecordChildExecutionCompletedRequest) error ReplicateEvents(ctx context.Context, request *h.ReplicateEventsRequest) error ReplicateRawEvents(ctx context.Context, request *h.ReplicateRawEventsRequest) error SyncShardStatus(ctx context.Context, request *h.SyncShardStatusRequest) error SyncActivity(ctx context.Context, request *h.SyncActivityRequest) error GetReplicationMessages(ctx context.Context, taskID int64) (*replicator.ReplicationMessages, error) QueryWorkflow(ctx context.Context, request *h.QueryWorkflowRequest) (*h.QueryWorkflowResponse, error) NotifyNewHistoryEvent(event *historyEventNotification) NotifyNewTransferTasks(tasks []persistence.Task) NotifyNewReplicationTasks(tasks []persistence.Task) NotifyNewTimerTasks(tasks []persistence.Task) }
Engine represents an interface for managing workflow execution history.
func NewEngineWithShardContext ¶
func NewEngineWithShardContext( shard ShardContext, visibilityMgr persistence.VisibilityManager, matching matching.Client, historyClient hc.Client, publicClient workflowserviceclient.Interface, historyEventNotifier historyEventNotifier, publisher messaging.Producer, config *Config, replicationTaskFetchers *ReplicationTaskFetchers, domainReplicator replicator.DomainReplicator, ) Engine
NewEngineWithShardContext creates an instance of history engine
type EngineFactory ¶
type EngineFactory interface {
CreateEngine(context ShardContext) Engine
}
EngineFactory is used to create an instance of sharded history engine
type Handler ¶
Handler - Thrift handler interface for history service
func NewHandler ¶
func NewHandler( sVice service.Service, config *Config, shardManager persistence.ShardManager, metadataMgr persistence.MetadataManager, visibilityMgr persistence.VisibilityManager, historyMgr persistence.HistoryManager, historyV2Mgr persistence.HistoryV2Manager, executionMgrFactory persistence.ExecutionManagerFactory, domainCache cache.DomainCache, publicClient workflowserviceclient.Interface, ) *Handler
NewHandler creates a thrift handler for the history service
func (*Handler) CloseShard ¶ added in v0.9.0
func (h *Handler) CloseShard( ctx context.Context, request *gen.CloseShardRequest, ) (retError error)
CloseShard returns information about the internal states of a history host
func (*Handler) CreateEngine ¶
func (h *Handler) CreateEngine(context ShardContext) Engine
CreateEngine is implementation for HistoryEngineFactory used for creating the engine instance for shard
func (*Handler) DescribeHistoryHost ¶ added in v0.3.13
func (h *Handler) DescribeHistoryHost(ctx context.Context, request *gen.DescribeHistoryHostRequest) (resp *gen.DescribeHistoryHostResponse, retError error)
DescribeHistoryHost returns information about the internal states of a history host
func (*Handler) DescribeMutableState ¶ added in v0.3.13
func (h *Handler) DescribeMutableState(ctx context.Context, request *hist.DescribeMutableStateRequest) (resp *hist.DescribeMutableStateResponse, retError error)
DescribeMutableState - returns the internal analysis of workflow execution state
func (*Handler) DescribeWorkflowExecution ¶ added in v0.3.3
func (h *Handler) DescribeWorkflowExecution(ctx context.Context, request *hist.DescribeWorkflowExecutionRequest) (resp *gen.DescribeWorkflowExecutionResponse, retError error)
DescribeWorkflowExecution returns information about the specified workflow execution.
func (*Handler) GetMutableState ¶ added in v0.3.5
func (h *Handler) GetMutableState(ctx context.Context, getRequest *hist.GetMutableStateRequest) (resp *hist.GetMutableStateResponse, retError error)
GetMutableState - returns the id of the next event in the execution's history
func (*Handler) GetReplicationMessages ¶ added in v0.9.0
func (h *Handler) GetReplicationMessages( ctx context.Context, request *r.GetReplicationMessagesRequest, ) (resp *r.GetReplicationMessagesResponse, retError error)
GetReplicationMessages is called by remote peers to get replicated messages for cross DC replication
func (*Handler) QueryWorkflow ¶ added in v0.9.0
func (h *Handler) QueryWorkflow( ctx context.Context, request *hist.QueryWorkflowRequest, ) (resp *hist.QueryWorkflowResponse, retError error)
QueryWorkflow queries a workflow.
func (*Handler) RecordActivityTaskHeartbeat ¶
func (h *Handler) RecordActivityTaskHeartbeat(ctx context.Context, wrappedRequest *hist.RecordActivityTaskHeartbeatRequest) (resp *gen.RecordActivityTaskHeartbeatResponse, retError error)
RecordActivityTaskHeartbeat - Record Activity Task Heart beat.
func (*Handler) RecordActivityTaskStarted ¶
func (h *Handler) RecordActivityTaskStarted(ctx context.Context, recordRequest *hist.RecordActivityTaskStartedRequest) (resp *hist.RecordActivityTaskStartedResponse, retError error)
RecordActivityTaskStarted - Record Activity Task started.
func (*Handler) RecordChildExecutionCompleted ¶
func (h *Handler) RecordChildExecutionCompleted(ctx context.Context, request *hist.RecordChildExecutionCompletedRequest) (retError error)
RecordChildExecutionCompleted is used for reporting the completion of child workflow execution to parent. This is mainly called by transfer queue processor during the processing of DeleteExecution task.
func (*Handler) RecordDecisionTaskStarted ¶
func (h *Handler) RecordDecisionTaskStarted(ctx context.Context, recordRequest *hist.RecordDecisionTaskStartedRequest) (resp *hist.RecordDecisionTaskStartedResponse, retError error)
RecordDecisionTaskStarted - Record Decision Task started.
func (*Handler) RegisterHandler ¶ added in v0.5.8
func (h *Handler) RegisterHandler()
RegisterHandler register this handler, must be called before Start()
func (*Handler) RemoveSignalMutableState ¶ added in v0.3.6
func (h *Handler) RemoveSignalMutableState(ctx context.Context, wrappedRequest *hist.RemoveSignalMutableStateRequest) (retError error)
RemoveSignalMutableState is used to remove a signal request ID that was previously recorded. This is currently used to clean execution info when signal decision finished.
func (*Handler) RemoveTask ¶ added in v0.9.0
func (h *Handler) RemoveTask( ctx context.Context, request *gen.RemoveTaskRequest, ) (retError error)
RemoveTask returns information about the internal states of a history host
func (*Handler) ReplicateEvents ¶ added in v0.3.11
func (h *Handler) ReplicateEvents(ctx context.Context, replicateRequest *hist.ReplicateEventsRequest) (retError error)
ReplicateEvents is called by processor to replicate history events for passive domains
func (*Handler) ReplicateRawEvents ¶ added in v0.5.0
func (h *Handler) ReplicateRawEvents(ctx context.Context, replicateRequest *hist.ReplicateRawEventsRequest) (retError error)
ReplicateRawEvents is called by processor to replicate history raw events for passive domains
func (*Handler) RequestCancelWorkflowExecution ¶
func (h *Handler) RequestCancelWorkflowExecution(ctx context.Context, request *hist.RequestCancelWorkflowExecutionRequest) (retError error)
RequestCancelWorkflowExecution - requests cancellation of a workflow
func (*Handler) ResetStickyTaskList ¶ added in v0.3.7
func (h *Handler) ResetStickyTaskList(ctx context.Context, resetRequest *hist.ResetStickyTaskListRequest) (resp *hist.ResetStickyTaskListResponse, retError error)
ResetStickyTaskList reset the volatile information in mutable state of a given workflow. Volatile information are the information related to client, such as: 1. StickyTaskList 2. StickyScheduleToStartTimeout 3. ClientLibraryVersion 4. ClientFeatureVersion 5. ClientImpl
func (*Handler) ResetWorkflowExecution ¶ added in v0.5.2
func (h *Handler) ResetWorkflowExecution(ctx context.Context, wrappedRequest *hist.ResetWorkflowExecutionRequest) (resp *gen.ResetWorkflowExecutionResponse, retError error)
ResetWorkflowExecution reset an existing workflow execution in the history and immediately terminating the execution instance.
func (*Handler) RespondActivityTaskCanceled ¶
func (h *Handler) RespondActivityTaskCanceled(ctx context.Context, wrappedRequest *hist.RespondActivityTaskCanceledRequest) (retError error)
RespondActivityTaskCanceled - records failure of an activity task
func (*Handler) RespondActivityTaskCompleted ¶
func (h *Handler) RespondActivityTaskCompleted(ctx context.Context, wrappedRequest *hist.RespondActivityTaskCompletedRequest) (retError error)
RespondActivityTaskCompleted - records completion of an activity task
func (*Handler) RespondActivityTaskFailed ¶
func (h *Handler) RespondActivityTaskFailed(ctx context.Context, wrappedRequest *hist.RespondActivityTaskFailedRequest) (retError error)
RespondActivityTaskFailed - records failure of an activity task
func (*Handler) RespondDecisionTaskCompleted ¶
func (h *Handler) RespondDecisionTaskCompleted(ctx context.Context, wrappedRequest *hist.RespondDecisionTaskCompletedRequest) (resp *hist.RespondDecisionTaskCompletedResponse, retError error)
RespondDecisionTaskCompleted - records completion of a decision task
func (*Handler) RespondDecisionTaskFailed ¶ added in v0.3.3
func (h *Handler) RespondDecisionTaskFailed(ctx context.Context, wrappedRequest *hist.RespondDecisionTaskFailedRequest) (retError error)
RespondDecisionTaskFailed - failed response to decision task
func (*Handler) ScheduleDecisionTask ¶
func (h *Handler) ScheduleDecisionTask(ctx context.Context, request *hist.ScheduleDecisionTaskRequest) (retError error)
ScheduleDecisionTask is used for creating a decision task for already started workflow execution. This is mainly used by transfer queue processor during the processing of StartChildWorkflowExecution task, where it first starts child execution without creating the decision task and then calls this API after updating the mutable state of parent execution.
func (*Handler) SignalWithStartWorkflowExecution ¶ added in v0.3.11
func (h *Handler) SignalWithStartWorkflowExecution(ctx context.Context, wrappedRequest *hist.SignalWithStartWorkflowExecutionRequest) (resp *gen.StartWorkflowExecutionResponse, retError error)
SignalWithStartWorkflowExecution is used to ensure sending a signal event to a workflow execution. If workflow is running, this results in WorkflowExecutionSignaled event recorded in the history and a decision task being created for the execution. If workflow is not running or not found, this results in WorkflowExecutionStarted and WorkflowExecutionSignaled event recorded in history, and a decision task being created for the execution
func (*Handler) SignalWorkflowExecution ¶
func (h *Handler) SignalWorkflowExecution(ctx context.Context, wrappedRequest *hist.SignalWorkflowExecutionRequest) (retError error)
SignalWorkflowExecution is used to send a signal event to running workflow execution. This results in WorkflowExecutionSignaled event recorded in the history and a decision task being created for the execution.
func (*Handler) StartWorkflowExecution ¶
func (h *Handler) StartWorkflowExecution(ctx context.Context, wrappedRequest *hist.StartWorkflowExecutionRequest) (resp *gen.StartWorkflowExecutionResponse, retError error)
StartWorkflowExecution - creates a new workflow execution
func (*Handler) SyncActivity ¶ added in v0.4.0
func (h *Handler) SyncActivity(ctx context.Context, syncActivityRequest *hist.SyncActivityRequest) (retError error)
SyncActivity is called by processor to sync activity
func (*Handler) SyncShardStatus ¶ added in v0.3.14
func (h *Handler) SyncShardStatus(ctx context.Context, syncShardStatusRequest *hist.SyncShardStatusRequest) (retError error)
SyncShardStatus is called by processor to sync history shard information from another cluster
func (*Handler) TerminateWorkflowExecution ¶
func (h *Handler) TerminateWorkflowExecution(ctx context.Context, wrappedRequest *hist.TerminateWorkflowExecutionRequest) (retError error)
TerminateWorkflowExecution terminates an existing workflow execution by recording WorkflowExecutionTerminated event in the history and immediately terminating the execution instance.
type LocalTimerGate ¶ added in v0.3.11
type LocalTimerGate interface { TimerGate }
LocalTimerGate interface
func NewLocalTimerGate ¶ added in v0.3.11
func NewLocalTimerGate(timeSource clock.TimeSource) LocalTimerGate
NewLocalTimerGate create a new timer gate instance
type LocalTimerGateImpl ¶ added in v0.3.11
type LocalTimerGateImpl struct {
// contains filtered or unexported fields
}
LocalTimerGateImpl is an timer implementation, which basically is an wrapper of golang's timer and additional feature
func (*LocalTimerGateImpl) Close ¶ added in v0.3.11
func (timerGate *LocalTimerGateImpl) Close()
Close shutdown the timer
func (*LocalTimerGateImpl) FireAfter ¶ added in v0.3.11
func (timerGate *LocalTimerGateImpl) FireAfter(now time.Time) bool
FireAfter check will the timer get fired after a certain time
func (*LocalTimerGateImpl) FireChan ¶ added in v0.3.11
func (timerGate *LocalTimerGateImpl) FireChan() <-chan struct{}
FireChan return the channel which will be fired when time is up
type MockEventsCache ¶ added in v0.5.2
MockEventsCache is used as mock implementation for EventsCache
type MockHistoryEngine ¶
MockHistoryEngine is used as mock implementation for HistoryEngine
func (*MockHistoryEngine) DescribeMutableState ¶ added in v0.3.13
func (_m *MockHistoryEngine) DescribeMutableState(ctx context.Context, request *gohistory.DescribeMutableStateRequest) (*gohistory.DescribeMutableStateResponse, error)
DescribeMutableState is mock implementation for DescribeMutableState of HistoryEngine
func (*MockHistoryEngine) DescribeWorkflowExecution ¶ added in v0.3.3
func (_m *MockHistoryEngine) DescribeWorkflowExecution(ctx context.Context, request *gohistory.DescribeWorkflowExecutionRequest) (*shared.DescribeWorkflowExecutionResponse, error)
DescribeWorkflowExecution is mock implementation for DescribeWorkflowExecution of HistoryEngine
func (*MockHistoryEngine) GetMutableState ¶ added in v0.3.5
func (_m *MockHistoryEngine) GetMutableState(ctx context.Context, request *gohistory.GetMutableStateRequest) (*gohistory.GetMutableStateResponse, error)
GetMutableState is mock implementation for GetMutableState of HistoryEngine
func (*MockHistoryEngine) GetReplicationMessages ¶ added in v0.9.0
func (_m *MockHistoryEngine) GetReplicationMessages(ctx context.Context, taskID int64) (*replicator.ReplicationMessages, error)
GetReplicationMessages is mock implementation for GetReplicationTasks of HistoryEngine
func (*MockHistoryEngine) NotifyNewHistoryEvent ¶ added in v0.7.0
func (_m *MockHistoryEngine) NotifyNewHistoryEvent(event *historyEventNotification)
NotifyNewHistoryEvent is mock implementation for NotifyNewHistoryEvent of HistoryEngine
func (*MockHistoryEngine) NotifyNewReplicationTasks ¶ added in v0.7.0
func (_m *MockHistoryEngine) NotifyNewReplicationTasks(tasks []persistence.Task)
NotifyNewReplicationTasks is mock implementation for NotifyNewReplicationTasks of HistoryEngine
func (*MockHistoryEngine) NotifyNewTimerTasks ¶ added in v0.7.0
func (_m *MockHistoryEngine) NotifyNewTimerTasks(tasks []persistence.Task)
NotifyNewTimerTasks is mock implementation for SyncActivity of HistoryEngine
func (*MockHistoryEngine) NotifyNewTransferTasks ¶ added in v0.7.0
func (_m *MockHistoryEngine) NotifyNewTransferTasks(tasks []persistence.Task)
NotifyNewTransferTasks is mock implementation for NotifyNewTransferTasks of HistoryEngine
func (*MockHistoryEngine) QueryWorkflow ¶ added in v0.9.0
func (_m *MockHistoryEngine) QueryWorkflow(ctx context.Context, request *gohistory.QueryWorkflowRequest) (*gohistory.QueryWorkflowResponse, error)
QueryWorkflow is mock implementation for QueryWorkflow of HistoryEngine
func (*MockHistoryEngine) RecordActivityTaskHeartbeat ¶
func (_m *MockHistoryEngine) RecordActivityTaskHeartbeat(ctx context.Context, request *gohistory.RecordActivityTaskHeartbeatRequest) (*shared.RecordActivityTaskHeartbeatResponse, error)
RecordActivityTaskHeartbeat is mock implementation for RecordActivityTaskHeartbeat of HistoryEngine
func (*MockHistoryEngine) RecordActivityTaskStarted ¶
func (_m *MockHistoryEngine) RecordActivityTaskStarted(ctx context.Context, request *gohistory.RecordActivityTaskStartedRequest) (*gohistory.RecordActivityTaskStartedResponse, error)
RecordActivityTaskStarted is mock implementation for RecordActivityTaskStarted of HistoryEngine
func (*MockHistoryEngine) RecordChildExecutionCompleted ¶
func (_m *MockHistoryEngine) RecordChildExecutionCompleted(ctx context.Context, request *gohistory.RecordChildExecutionCompletedRequest) error
RecordChildExecutionCompleted is mock implementation for CompleteChildExecution of HistoryEngine
func (*MockHistoryEngine) RecordDecisionTaskStarted ¶
func (_m *MockHistoryEngine) RecordDecisionTaskStarted(ctx context.Context, request *gohistory.RecordDecisionTaskStartedRequest) (*gohistory.RecordDecisionTaskStartedResponse, error)
RecordDecisionTaskStarted is mock implementation for RecordDecisionTaskStarted of HistoryEngine
func (*MockHistoryEngine) RemoveSignalMutableState ¶ added in v0.3.6
func (_m *MockHistoryEngine) RemoveSignalMutableState(ctx context.Context, request *gohistory.RemoveSignalMutableStateRequest) error
RemoveSignalMutableState is mock implementation for RemoveSignalMutableState of HistoryEngine
func (*MockHistoryEngine) ReplicateEvents ¶ added in v0.3.11
func (_m *MockHistoryEngine) ReplicateEvents(ctx context.Context, request *gohistory.ReplicateEventsRequest) error
ReplicateEvents is mock implementation for ReplicateEvents of HistoryEngine
func (*MockHistoryEngine) ReplicateRawEvents ¶ added in v0.5.0
func (_m *MockHistoryEngine) ReplicateRawEvents(ctx context.Context, request *gohistory.ReplicateRawEventsRequest) error
ReplicateRawEvents is mock implementation for ReplicateRawEvents of HistoryEngine
func (*MockHistoryEngine) RequestCancelWorkflowExecution ¶
func (_m *MockHistoryEngine) RequestCancelWorkflowExecution(ctx context.Context, request *gohistory.RequestCancelWorkflowExecutionRequest) error
RequestCancelWorkflowExecution is mock implementation for RequestCancelWorkflowExecution of HistoryEngine
func (*MockHistoryEngine) ResetStickyTaskList ¶ added in v0.3.7
func (_m *MockHistoryEngine) ResetStickyTaskList(ctx context.Context, request *gohistory.ResetStickyTaskListRequest) (*gohistory.ResetStickyTaskListResponse, error)
ResetStickyTaskList is mock implementation for ResetStickyTaskList of HistoryEngine
func (*MockHistoryEngine) ResetWorkflowExecution ¶ added in v0.5.2
func (_m *MockHistoryEngine) ResetWorkflowExecution(ctx context.Context, request *gohistory.ResetWorkflowExecutionRequest) (*shared.ResetWorkflowExecutionResponse, error)
ResetWorkflowExecution is mock implementation for TerminateWorkflowExecution of HistoryEngine
func (*MockHistoryEngine) RespondActivityTaskCanceled ¶
func (_m *MockHistoryEngine) RespondActivityTaskCanceled(ctx context.Context, request *gohistory.RespondActivityTaskCanceledRequest) error
RespondActivityTaskCanceled is mock implementation for RespondActivityTaskCanceled of HistoryEngine
func (*MockHistoryEngine) RespondActivityTaskCompleted ¶
func (_m *MockHistoryEngine) RespondActivityTaskCompleted(ctx context.Context, request *gohistory.RespondActivityTaskCompletedRequest) error
RespondActivityTaskCompleted is mock implementation for RespondActivityTaskCompleted of HistoryEngine
func (*MockHistoryEngine) RespondActivityTaskFailed ¶
func (_m *MockHistoryEngine) RespondActivityTaskFailed(ctx context.Context, request *gohistory.RespondActivityTaskFailedRequest) error
RespondActivityTaskFailed is mock implementation for RespondActivityTaskFailed of HistoryEngine
func (*MockHistoryEngine) RespondDecisionTaskCompleted ¶
func (_m *MockHistoryEngine) RespondDecisionTaskCompleted(ctx context.Context, request *gohistory.RespondDecisionTaskCompletedRequest) (*gohistory.RespondDecisionTaskCompletedResponse, error)
RespondDecisionTaskCompleted is mock implementation for RespondDecisionTaskCompleted of HistoryEngine
func (*MockHistoryEngine) RespondDecisionTaskFailed ¶ added in v0.3.3
func (_m *MockHistoryEngine) RespondDecisionTaskFailed(ctx context.Context, request *gohistory.RespondDecisionTaskFailedRequest) error
RespondDecisionTaskFailed is mock implementation for RespondDecisionTaskFailed of HistoryEngine
func (*MockHistoryEngine) ScheduleDecisionTask ¶
func (_m *MockHistoryEngine) ScheduleDecisionTask(ctx context.Context, request *gohistory.ScheduleDecisionTaskRequest) error
ScheduleDecisionTask is mock implementation for ScheduleDecisionTask of HistoryEngine
func (*MockHistoryEngine) SignalWithStartWorkflowExecution ¶ added in v0.3.11
func (_m *MockHistoryEngine) SignalWithStartWorkflowExecution(ctx context.Context, request *gohistory.SignalWithStartWorkflowExecutionRequest) ( *shared.StartWorkflowExecutionResponse, error)
SignalWithStartWorkflowExecution is mock implementation for SignalWithStartWorkflowExecution of HistoryEngine
func (*MockHistoryEngine) SignalWorkflowExecution ¶
func (_m *MockHistoryEngine) SignalWorkflowExecution(ctx context.Context, request *gohistory.SignalWorkflowExecutionRequest) error
SignalWorkflowExecution is mock implementation for SignalWorkflowExecution of HistoryEngine
func (*MockHistoryEngine) Start ¶
func (_m *MockHistoryEngine) Start()
Start is mock implementation for Start for HistoryEngine
func (*MockHistoryEngine) StartWorkflowExecution ¶
func (_m *MockHistoryEngine) StartWorkflowExecution(ctx context.Context, request *gohistory.StartWorkflowExecutionRequest) (*shared.StartWorkflowExecutionResponse, error)
StartWorkflowExecution is mock implementation for StartWorkflowExecution of HistoryEngine
func (*MockHistoryEngine) Stop ¶
func (_m *MockHistoryEngine) Stop()
Stop is mock implementation for Stop of HistoryEngine
func (*MockHistoryEngine) SyncActivity ¶ added in v0.4.0
func (_m *MockHistoryEngine) SyncActivity(ctx context.Context, request *gohistory.SyncActivityRequest) error
SyncActivity is mock implementation for SyncActivity of HistoryEngine
func (*MockHistoryEngine) SyncShardStatus ¶ added in v0.3.14
func (_m *MockHistoryEngine) SyncShardStatus(ctx context.Context, request *gohistory.SyncShardStatusRequest) error
SyncShardStatus is mock implementation for SyncShardStatus of HistoryEngine
func (*MockHistoryEngine) TerminateWorkflowExecution ¶
func (_m *MockHistoryEngine) TerminateWorkflowExecution(ctx context.Context, request *gohistory.TerminateWorkflowExecutionRequest) error
TerminateWorkflowExecution is mock implementation for TerminateWorkflowExecution of HistoryEngine
type MockHistoryEngineFactory ¶
MockHistoryEngineFactory is mock implementation for HistoryEngineFactory
func (*MockHistoryEngineFactory) CreateEngine ¶
func (_m *MockHistoryEngineFactory) CreateEngine(context ShardContext) Engine
CreateEngine is mock implementation for CreateEngine of HistoryEngineFactory
type MockProcessor ¶ added in v0.3.12
MockProcessor is used as mock implementation for Processor
type MockQueueAckMgr ¶ added in v0.3.12
MockQueueAckMgr is used as mock implementation for QueueAckMgr
type MockReplicatorQueueProcessor ¶ added in v0.9.0
type MockReplicatorQueueProcessor struct {
// contains filtered or unexported fields
}
MockReplicatorQueueProcessor is a mock of ReplicatorQueueProcessor interface
func NewMockReplicatorQueueProcessor ¶ added in v0.9.0
func NewMockReplicatorQueueProcessor(ctrl *gomock.Controller) *MockReplicatorQueueProcessor
NewMockReplicatorQueueProcessor creates a new mock instance
func (*MockReplicatorQueueProcessor) EXPECT ¶ added in v0.9.0
func (m *MockReplicatorQueueProcessor) EXPECT() *MockReplicatorQueueProcessorMockRecorder
EXPECT returns an object that allows the caller to indicate expected use
func (*MockReplicatorQueueProcessor) Start ¶ added in v0.9.0
func (m *MockReplicatorQueueProcessor) Start()
Start mocks base method
func (*MockReplicatorQueueProcessor) Stop ¶ added in v0.9.0
func (m *MockReplicatorQueueProcessor) Stop()
Stop mocks base method
type MockReplicatorQueueProcessorMockRecorder ¶ added in v0.9.0
type MockReplicatorQueueProcessorMockRecorder struct {
// contains filtered or unexported fields
}
MockReplicatorQueueProcessorMockRecorder is the mock recorder for MockReplicatorQueueProcessor
func (*MockReplicatorQueueProcessorMockRecorder) Start ¶ added in v0.9.0
func (mr *MockReplicatorQueueProcessorMockRecorder) Start() *gomock.Call
Start indicates an expected call of Start
func (*MockReplicatorQueueProcessorMockRecorder) Stop ¶ added in v0.9.0
func (mr *MockReplicatorQueueProcessorMockRecorder) Stop() *gomock.Call
Stop indicates an expected call of Stop
type MockTimerProcessor ¶ added in v0.4.0
MockTimerProcessor is used as mock implementation for timerProcessor
type MockTimerQueueAckMgr ¶ added in v0.3.11
MockTimerQueueAckMgr is used as mock implementation for TimerQueueAckMgr
type MockTimerQueueProcessor ¶ added in v0.3.12
MockTimerQueueProcessor is used as mock implementation for Processor
func (*MockTimerQueueProcessor) FailoverDomain ¶ added in v0.3.12
func (_m *MockTimerQueueProcessor) FailoverDomain(domainIDs map[string]struct{})
FailoverDomain is mock implementation for FailoverDomain of Processor
func (*MockTimerQueueProcessor) LockTaskPrrocessing ¶ added in v0.5.0
func (_m *MockTimerQueueProcessor) LockTaskPrrocessing()
LockTaskPrrocessing is mock implementation for LockTaskPrrocessing of Processor
func (*MockTimerQueueProcessor) NotifyNewTimers ¶ added in v0.3.12
func (_m *MockTimerQueueProcessor) NotifyNewTimers(clusterName string, timerTask []persistence.Task)
NotifyNewTimers is mock implementation for NotifyNewTimers of Processor
func (*MockTimerQueueProcessor) Start ¶ added in v0.3.12
func (_m *MockTimerQueueProcessor) Start()
Start is mock implementation for Start of Processor
func (*MockTimerQueueProcessor) Stop ¶ added in v0.3.12
func (_m *MockTimerQueueProcessor) Stop()
Stop is mock implementation for Stop of Processor
func (*MockTimerQueueProcessor) UnlockTaskPrrocessing ¶ added in v0.5.0
func (_m *MockTimerQueueProcessor) UnlockTaskPrrocessing()
UnlockTaskPrrocessing is mock implementation for UnlockTaskPrrocessing of Processor
type MockTransferQueueProcessor ¶ added in v0.3.12
MockTransferQueueProcessor is used as mock implementation for Processor
func (*MockTransferQueueProcessor) FailoverDomain ¶ added in v0.3.12
func (_m *MockTransferQueueProcessor) FailoverDomain(domainIDs map[string]struct{})
FailoverDomain is mock implementation for FailoverDomain of Processor
func (*MockTransferQueueProcessor) LockTaskPrrocessing ¶ added in v0.5.0
func (_m *MockTransferQueueProcessor) LockTaskPrrocessing()
LockTaskPrrocessing is mock implementation for LockTaskPrrocessing of Processor
func (*MockTransferQueueProcessor) NotifyNewTask ¶ added in v0.3.12
func (_m *MockTransferQueueProcessor) NotifyNewTask(clusterName string, transferTask []persistence.Task)
NotifyNewTask is mock implementation for NotifyNewTask of Processor
func (*MockTransferQueueProcessor) Start ¶ added in v0.3.12
func (_m *MockTransferQueueProcessor) Start()
Start is mock implementation for Start of Processor
func (*MockTransferQueueProcessor) Stop ¶ added in v0.3.12
func (_m *MockTransferQueueProcessor) Stop()
Stop is mock implementation for Stop of Processor
func (*MockTransferQueueProcessor) UnlockTaskPrrocessing ¶ added in v0.5.0
func (_m *MockTransferQueueProcessor) UnlockTaskPrrocessing()
UnlockTaskPrrocessing is mock implementation for UnlockTaskPrrocessing of Processor
type Query ¶ added in v0.9.0
type Query interface { ID() string QueryInput() *shared.WorkflowQuery QueryResult() *shared.WorkflowQueryResult State() QueryState TerminationCh() <-chan struct{} RecordEvent(QueryEvent, *shared.WorkflowQueryResult) (bool, error) }
Query represents a query state machine.
type QueryEvent ¶ added in v0.9.0
type QueryEvent int
QueryEvent represents an event that can be posted to a query potentially updating the state that it is in.
const ( // QueryEventRebuffer event to move query from started back to buffered. QueryEventRebuffer QueryEvent = iota // QueryEventStart event to move query from buffered to started. QueryEventStart // QueryEventRecordResult event to record a query result, this may result in query entering complete state. QueryEventRecordResult // QueryEventPersistenceConditionSatisfied event to record that dependent history events have been persisted. QueryEventPersistenceConditionSatisfied // QueryEventExpire event to move query from buffered or started to expired. QueryEventExpire )
type QueryRegistry ¶ added in v0.9.0
type QueryRegistry interface { BufferQuery(*shared.WorkflowQuery) Query GetBuffered() map[string]Query GetStarted() map[string]Query }
QueryRegistry keeps track of all outstanding queries for a single workflow execution
func NewQueryRegistry ¶ added in v0.9.0
func NewQueryRegistry() QueryRegistry
NewQueryRegistry constructs a new QueryRegistry. One QueryRegistry exists per workflowExecutionContext, and it should be accessed through the workflowExecutionContext.
type QueryState ¶ added in v0.9.0
type QueryState int
QueryState represents the state of the query.
const ( // QueryStateBuffered indicates query is ready to be dispatched to worker. QueryStateBuffered QueryState = iota // QueryStateStarted indicates query has been dispatched to worker but query is not yet ready to return to caller. QueryStateStarted // QueryStateCompleted indicates query has been completed, this means result has been recorded and any // dependent history events have been persisted. QueryStateCompleted // QueryStateExpired means the query expired. QueryStateExpired )
type QueueProcessorOptions ¶ added in v0.3.11
type QueueProcessorOptions struct { BatchSize dynamicconfig.IntPropertyFn WorkerCount dynamicconfig.IntPropertyFn MaxPollRPS dynamicconfig.IntPropertyFn MaxPollInterval dynamicconfig.DurationPropertyFn MaxPollIntervalJitterCoefficient dynamicconfig.FloatPropertyFn UpdateAckInterval dynamicconfig.DurationPropertyFn UpdateAckIntervalJitterCoefficient dynamicconfig.FloatPropertyFn MaxRetryCount dynamicconfig.IntPropertyFn MetricScope int }
QueueProcessorOptions is options passed to queue processor implementation
type RemoteTimerGate ¶ added in v0.3.11
type RemoteTimerGate interface { TimerGate // SetCurrentTime set the current time, and additionally fire the fire chan // if new "current" time is after the next wake up time, return true if // "current" is actually updated SetCurrentTime(nextTime time.Time) bool }
RemoteTimerGate interface
func NewRemoteTimerGate ¶ added in v0.3.11
func NewRemoteTimerGate() RemoteTimerGate
NewRemoteTimerGate create a new timer gate instance
type RemoteTimerGateImpl ¶ added in v0.3.11
type RemoteTimerGateImpl struct { // lock for timer and next wake up time sync.Mutex // contains filtered or unexported fields }
RemoteTimerGateImpl is an timer implementation, which basically is an wrapper of golang's timer and additional feature
func (*RemoteTimerGateImpl) Close ¶ added in v0.5.0
func (timerGate *RemoteTimerGateImpl) Close()
Close shutdown the timer
func (*RemoteTimerGateImpl) FireAfter ¶ added in v0.3.11
func (timerGate *RemoteTimerGateImpl) FireAfter(now time.Time) bool
FireAfter check will the timer get fired after a certain time
func (*RemoteTimerGateImpl) FireChan ¶ added in v0.3.11
func (timerGate *RemoteTimerGateImpl) FireChan() <-chan struct{}
FireChan return the channel which will be fired when time is up
func (*RemoteTimerGateImpl) SetCurrentTime ¶ added in v0.3.11
func (timerGate *RemoteTimerGateImpl) SetCurrentTime(currentTime time.Time) bool
SetCurrentTime set the current time, and additionally fire the fire chan if new "current" time is after the next wake up time, return true if "current" is actually updated
type ReplicationTaskFetcher ¶ added in v0.9.0
type ReplicationTaskFetcher struct {
// contains filtered or unexported fields
}
ReplicationTaskFetcher is responsible for fetching replication messages from remote DC.
func (*ReplicationTaskFetcher) GetRequestChan ¶ added in v0.9.0
func (f *ReplicationTaskFetcher) GetRequestChan() chan<- *request
GetRequestChan returns the request chan for the fetcher
func (*ReplicationTaskFetcher) GetSourceCluster ¶ added in v0.9.0
func (f *ReplicationTaskFetcher) GetSourceCluster() string
GetSourceCluster returns the source cluster for the fetcher
func (*ReplicationTaskFetcher) Start ¶ added in v0.9.0
func (f *ReplicationTaskFetcher) Start()
Start starts the fetcher
func (*ReplicationTaskFetcher) Stop ¶ added in v0.9.0
func (f *ReplicationTaskFetcher) Stop()
Stop stops the fetcher
type ReplicationTaskFetchers ¶ added in v0.9.0
type ReplicationTaskFetchers struct {
// contains filtered or unexported fields
}
ReplicationTaskFetchers is a group of fetchers, one per source DC.
func NewReplicationTaskFetchers ¶ added in v0.9.0
func NewReplicationTaskFetchers( logger log.Logger, consumerConfig *config.ReplicationConsumerConfig, clusterMetadata cluster.Metadata, clientBean client.Bean, ) *ReplicationTaskFetchers
NewReplicationTaskFetchers creates an instance of ReplicationTaskFetchers with given configs.
func (*ReplicationTaskFetchers) GetFetchers ¶ added in v0.9.0
func (f *ReplicationTaskFetchers) GetFetchers() []*ReplicationTaskFetcher
GetFetchers returns all the fetchers
func (*ReplicationTaskFetchers) Start ¶ added in v0.9.0
func (f *ReplicationTaskFetchers) Start()
Start starts the fetchers
func (*ReplicationTaskFetchers) Stop ¶ added in v0.9.0
func (f *ReplicationTaskFetchers) Stop()
Stop stops the fetchers
type ReplicationTaskProcessor ¶ added in v0.9.0
type ReplicationTaskProcessor struct {
// contains filtered or unexported fields
}
ReplicationTaskProcessor is responsible for processing replication tasks for a shard.
func NewReplicationTaskProcessor ¶ added in v0.9.0
func NewReplicationTaskProcessor( shard ShardContext, historyEngine Engine, domainReplicator replicator.DomainReplicator, metricsClient metrics.Client, replicationTaskFetcher *ReplicationTaskFetcher, ) *ReplicationTaskProcessor
NewReplicationTaskProcessor creates a new replication task processor.
func (*ReplicationTaskProcessor) Start ¶ added in v0.9.0
func (p *ReplicationTaskProcessor) Start()
Start starts the processor
func (*ReplicationTaskProcessor) Stop ¶ added in v0.9.0
func (p *ReplicationTaskProcessor) Stop()
Stop stops the processor
type ReplicatorQueueProcessor ¶ added in v0.9.0
type ReplicatorQueueProcessor interface {
// contains filtered or unexported methods
}
ReplicatorQueueProcessor is the interface for replicator queue processor
type SequenceNumberGenerator ¶
type SequenceNumberGenerator interface {
NextSeq() int64
}
SequenceNumberGenerator - Generates next sequence number.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service represents the cadence-history service
type ShardContext ¶
type ShardContext interface { GetShardID() int GetService() service.Service GetExecutionManager() persistence.ExecutionManager GetHistoryManager() persistence.HistoryManager GetHistoryV2Manager() persistence.HistoryV2Manager GetDomainCache() cache.DomainCache GetClusterMetadata() cluster.Metadata GetConfig() *Config GetEventsCache() eventsCache GetLogger() log.Logger GetThrottledLogger() log.Logger GetMetricsClient() metrics.Client GetTimeSource() clock.TimeSource GetEngine() Engine SetEngine(Engine) GenerateTransferTaskID() (int64, error) GenerateTransferTaskIDs(number int) ([]int64, error) GetTransferMaxReadLevel() int64 UpdateTimerMaxReadLevel(cluster string) time.Time SetCurrentTime(cluster string, currentTime time.Time) GetCurrentTime(cluster string) time.Time GetTimerMaxReadLevel(cluster string) time.Time GetTransferAckLevel() int64 UpdateTransferAckLevel(ackLevel int64) error GetTransferClusterAckLevel(cluster string) int64 UpdateTransferClusterAckLevel(cluster string, ackLevel int64) error GetReplicatorAckLevel() int64 UpdateReplicatorAckLevel(ackLevel int64) error GetClusterReplicationLevel(cluster string) int64 UpdateClusterReplicationLevel(cluster string, lastTaskID int64) error GetTimerAckLevel() time.Time UpdateTimerAckLevel(ackLevel time.Time) error GetTimerClusterAckLevel(cluster string) time.Time UpdateTimerClusterAckLevel(cluster string, ackLevel time.Time) error UpdateTransferFailoverLevel(failoverID string, level persistence.TransferFailoverLevel) error DeleteTransferFailoverLevel(failoverID string) error GetAllTransferFailoverLevels() map[string]persistence.TransferFailoverLevel UpdateTimerFailoverLevel(failoverID string, level persistence.TimerFailoverLevel) error DeleteTimerFailoverLevel(failoverID string) error GetAllTimerFailoverLevels() map[string]persistence.TimerFailoverLevel GetDomainNotificationVersion() int64 UpdateDomainNotificationVersion(domainNotificationVersion int64) error CreateWorkflowExecution(request *persistence.CreateWorkflowExecutionRequest) (*persistence.CreateWorkflowExecutionResponse, error) UpdateWorkflowExecution(request *persistence.UpdateWorkflowExecutionRequest) (*persistence.UpdateWorkflowExecutionResponse, error) ConflictResolveWorkflowExecution(request *persistence.ConflictResolveWorkflowExecutionRequest) error ResetWorkflowExecution(request *persistence.ResetWorkflowExecutionRequest) error AppendHistoryEvents(request *persistence.AppendHistoryEventsRequest) (int, error) AppendHistoryV2Events(request *persistence.AppendHistoryNodesRequest, domainID string, execution shared.WorkflowExecution) (int, error) }
ShardContext represents a history engine shard
type TestBase ¶ added in v0.3.0
type TestBase struct { persistencetests.TestBase ShardContext *TestShardContext }
TestBase wraps the base setup needed to create workflows over engine layer.
func (*TestBase) SetupDomains ¶ added in v0.3.11
func (s *TestBase) SetupDomains()
SetupDomains setup the domains used for testing
func (*TestBase) SetupWorkflowStore ¶ added in v0.3.0
func (s *TestBase) SetupWorkflowStore()
SetupWorkflowStore to setup workflow test base
func (*TestBase) TeardownDomains ¶ added in v0.3.11
func (s *TestBase) TeardownDomains()
TeardownDomains delete the domains used for testing
type TestShardContext ¶ added in v0.3.0
TestShardContext shard context for testing.
func (*TestShardContext) AppendHistoryEvents ¶ added in v0.3.0
func (s *TestShardContext) AppendHistoryEvents(request *persistence.AppendHistoryEventsRequest) (int, error)
AppendHistoryEvents test implementation
func (*TestShardContext) AppendHistoryV2Events ¶ added in v0.5.0
func (s *TestShardContext) AppendHistoryV2Events( request *persistence.AppendHistoryNodesRequest, domainID string, execution shared.WorkflowExecution) (int, error)
AppendHistoryV2Events append history V2 events
func (*TestShardContext) ConflictResolveWorkflowExecution ¶ added in v0.7.0
func (s *TestShardContext) ConflictResolveWorkflowExecution(request *persistence.ConflictResolveWorkflowExecutionRequest) error
ConflictResolveWorkflowExecution test implementation
func (*TestShardContext) CreateWorkflowExecution ¶ added in v0.3.0
func (s *TestShardContext) CreateWorkflowExecution(request *persistence.CreateWorkflowExecutionRequest) ( *persistence.CreateWorkflowExecutionResponse, error)
CreateWorkflowExecution test implementation
func (*TestShardContext) DeleteTimerFailoverLevel ¶ added in v0.3.14
func (s *TestShardContext) DeleteTimerFailoverLevel(failoverID string) error
DeleteTimerFailoverLevel test implementation
func (*TestShardContext) DeleteTransferFailoverLevel ¶ added in v0.3.14
func (s *TestShardContext) DeleteTransferFailoverLevel(failoverID string) error
DeleteTransferFailoverLevel test implementation
func (*TestShardContext) GenerateTransferTaskID ¶ added in v0.7.0
func (s *TestShardContext) GenerateTransferTaskID() (int64, error)
GenerateTransferTaskID test implementation
func (*TestShardContext) GenerateTransferTaskIDs ¶ added in v0.7.0
func (s *TestShardContext) GenerateTransferTaskIDs(number int) ([]int64, error)
GenerateTransferTaskIDs test implementation
func (*TestShardContext) GetAllTimerFailoverLevels ¶ added in v0.3.14
func (s *TestShardContext) GetAllTimerFailoverLevels() map[string]persistence.TimerFailoverLevel
GetAllTimerFailoverLevels test implementation
func (*TestShardContext) GetAllTransferFailoverLevels ¶ added in v0.3.14
func (s *TestShardContext) GetAllTransferFailoverLevels() map[string]persistence.TransferFailoverLevel
GetAllTransferFailoverLevels test implementation
func (*TestShardContext) GetClusterMetadata ¶ added in v0.7.0
func (s *TestShardContext) GetClusterMetadata() cluster.Metadata
GetClusterMetadata test implementation
func (*TestShardContext) GetClusterReplicationLevel ¶ added in v0.9.0
func (s *TestShardContext) GetClusterReplicationLevel(cluster string) int64
GetClusterReplicationLevel test implementation
func (*TestShardContext) GetConfig ¶ added in v0.3.1
func (s *TestShardContext) GetConfig() *Config
GetConfig test implementation
func (*TestShardContext) GetCurrentTime ¶ added in v0.3.11
func (s *TestShardContext) GetCurrentTime(cluster string) time.Time
GetCurrentTime test implementation
func (*TestShardContext) GetDomainCache ¶ added in v0.3.5
func (s *TestShardContext) GetDomainCache() cache.DomainCache
GetDomainCache test implementation
func (*TestShardContext) GetDomainNotificationVersion ¶ added in v0.3.13
func (s *TestShardContext) GetDomainNotificationVersion() int64
GetDomainNotificationVersion test implementation
func (*TestShardContext) GetEngine ¶ added in v0.7.0
func (s *TestShardContext) GetEngine() Engine
GetEngine test implementation
func (*TestShardContext) GetEventsCache ¶ added in v0.5.2
func (s *TestShardContext) GetEventsCache() eventsCache
GetEventsCache test implementation
func (*TestShardContext) GetExecutionManager ¶ added in v0.3.0
func (s *TestShardContext) GetExecutionManager() persistence.ExecutionManager
GetExecutionManager test implementation
func (*TestShardContext) GetHistoryManager ¶ added in v0.3.0
func (s *TestShardContext) GetHistoryManager() persistence.HistoryManager
GetHistoryManager test implementation
func (*TestShardContext) GetHistoryV2Manager ¶ added in v0.5.0
func (s *TestShardContext) GetHistoryV2Manager() persistence.HistoryV2Manager
GetHistoryV2Manager return historyV2
func (*TestShardContext) GetLogger ¶ added in v0.3.0
func (s *TestShardContext) GetLogger() log.Logger
GetLogger test implementation
func (*TestShardContext) GetMetricsClient ¶ added in v0.3.0
func (s *TestShardContext) GetMetricsClient() metrics.Client
GetMetricsClient test implementation
func (*TestShardContext) GetRangeID ¶ added in v0.3.0
func (s *TestShardContext) GetRangeID() int64
GetRangeID test implementation
func (*TestShardContext) GetReplicatorAckLevel ¶ added in v0.3.11
func (s *TestShardContext) GetReplicatorAckLevel() int64
GetReplicatorAckLevel test implementation
func (*TestShardContext) GetService ¶ added in v0.3.11
func (s *TestShardContext) GetService() service.Service
GetService test implementation
func (*TestShardContext) GetShardID ¶ added in v0.3.12
func (s *TestShardContext) GetShardID() int
GetShardID test implementation
func (*TestShardContext) GetThrottledLogger ¶ added in v0.5.7
func (s *TestShardContext) GetThrottledLogger() log.Logger
GetThrottledLogger returns a throttled logger
func (*TestShardContext) GetTimeSource ¶ added in v0.3.0
func (s *TestShardContext) GetTimeSource() clock.TimeSource
GetTimeSource test implementation
func (*TestShardContext) GetTimerAckLevel ¶ added in v0.3.0
func (s *TestShardContext) GetTimerAckLevel() time.Time
GetTimerAckLevel test implementation
func (*TestShardContext) GetTimerClusterAckLevel ¶ added in v0.3.12
func (s *TestShardContext) GetTimerClusterAckLevel(cluster string) time.Time
GetTimerClusterAckLevel test implementation
func (*TestShardContext) GetTimerMaxReadLevel ¶ added in v0.4.0
func (s *TestShardContext) GetTimerMaxReadLevel(cluster string) time.Time
GetTimerMaxReadLevel test implementation
func (*TestShardContext) GetTransferAckLevel ¶ added in v0.3.0
func (s *TestShardContext) GetTransferAckLevel() int64
GetTransferAckLevel test implementation
func (*TestShardContext) GetTransferClusterAckLevel ¶ added in v0.3.12
func (s *TestShardContext) GetTransferClusterAckLevel(cluster string) int64
GetTransferClusterAckLevel test implementation
func (*TestShardContext) GetTransferMaxReadLevel ¶ added in v0.3.0
func (s *TestShardContext) GetTransferMaxReadLevel() int64
GetTransferMaxReadLevel test implementation
func (*TestShardContext) Reset ¶ added in v0.3.0
func (s *TestShardContext) Reset()
Reset test implementation
func (*TestShardContext) ResetWorkflowExecution ¶ added in v0.5.2
func (s *TestShardContext) ResetWorkflowExecution(request *persistence.ResetWorkflowExecutionRequest) error
ResetWorkflowExecution test implementation
func (*TestShardContext) SetCurrentTime ¶ added in v0.3.11
func (s *TestShardContext) SetCurrentTime(cluster string, currentTime time.Time)
SetCurrentTime test implementation
func (*TestShardContext) SetEngine ¶ added in v0.7.0
func (s *TestShardContext) SetEngine(engine Engine)
SetEngine test implementation
func (*TestShardContext) UpdateClusterReplicationLevel ¶ added in v0.9.0
func (s *TestShardContext) UpdateClusterReplicationLevel(cluster string, lastTaskID int64) error
UpdateClusterReplicationLevel test implementation
func (*TestShardContext) UpdateDomainNotificationVersion ¶ added in v0.3.13
func (s *TestShardContext) UpdateDomainNotificationVersion(domainNotificationVersion int64) error
UpdateDomainNotificationVersion test implementation
func (*TestShardContext) UpdateReplicatorAckLevel ¶ added in v0.3.11
func (s *TestShardContext) UpdateReplicatorAckLevel(ackLevel int64) error
UpdateReplicatorAckLevel test implementation
func (*TestShardContext) UpdateTimerAckLevel ¶ added in v0.3.0
func (s *TestShardContext) UpdateTimerAckLevel(ackLevel time.Time) error
UpdateTimerAckLevel test implementation
func (*TestShardContext) UpdateTimerClusterAckLevel ¶ added in v0.3.12
func (s *TestShardContext) UpdateTimerClusterAckLevel(cluster string, ackLevel time.Time) error
UpdateTimerClusterAckLevel test implementation
func (*TestShardContext) UpdateTimerFailoverLevel ¶ added in v0.3.14
func (s *TestShardContext) UpdateTimerFailoverLevel(failoverID string, level persistence.TimerFailoverLevel) error
UpdateTimerFailoverLevel test implementation
func (*TestShardContext) UpdateTimerMaxReadLevel ¶ added in v0.4.0
func (s *TestShardContext) UpdateTimerMaxReadLevel(cluster string) time.Time
UpdateTimerMaxReadLevel test implementation
func (*TestShardContext) UpdateTransferAckLevel ¶ added in v0.3.0
func (s *TestShardContext) UpdateTransferAckLevel(ackLevel int64) error
UpdateTransferAckLevel test implementation
func (*TestShardContext) UpdateTransferClusterAckLevel ¶ added in v0.3.12
func (s *TestShardContext) UpdateTransferClusterAckLevel(cluster string, ackLevel int64) error
UpdateTransferClusterAckLevel test implementation
func (*TestShardContext) UpdateTransferFailoverLevel ¶ added in v0.3.14
func (s *TestShardContext) UpdateTransferFailoverLevel(failoverID string, level persistence.TransferFailoverLevel) error
UpdateTransferFailoverLevel test implementation
func (*TestShardContext) UpdateWorkflowExecution ¶ added in v0.3.0
func (s *TestShardContext) UpdateWorkflowExecution(request *persistence.UpdateWorkflowExecutionRequest) (*persistence.UpdateWorkflowExecutionResponse, error)
UpdateWorkflowExecution test implementation
type TimerGate ¶ added in v0.3.11
type TimerGate interface { // FireChan return the channel which will be fired when time is up FireChan() <-chan struct{} // FireAfter check will the timer get fired after a certain time FireAfter(now time.Time) bool // Update update the timer gate, return true if update is a success // success means timer is idle or timer is set with a sooner time to fire Update(nextTime time.Time) bool // Close shutdown the timer Close() }
TimerGate interface
type TimerSequenceID ¶ added in v0.3.11
TimerSequenceID - Visibility timer stamp + Sequence Number.
func (TimerSequenceID) String ¶ added in v0.3.11
func (s TimerSequenceID) String() string
Source Files ¶
- MockConflictResolver.go
- MockEventsCache.go
- MockHistoryEngine.go
- MockHistoryEngineFactory.go
- MockMutableState.go
- MockProcessor.go
- MockQueueAckMgr.go
- MockStateBuilder.go
- MockTimerProcessor.go
- MockTimerQueueAckMgr.go
- MockTimerQueueProcessor.go
- MockTransferQueueProcessor.go
- MockWorkflowExecutionContext.go
- MockWorkflowResetor.go
- conflictResolver.go
- decisionChecker.go
- decisionHandler.go
- decisionTaskHandler.go
- eventsCache.go
- handler.go
- historyBuilder.go
- historyCache.go
- historyEngine.go
- historyEngineInterfaces.go
- historyEventNotifier.go
- historyReplicator.go
- historyTestBase.go
- mutableState.go
- mutableStateBuilder.go
- mutableStateTaskGenerator.go
- mutableStateTaskRefresher.go
- mutableStateUtil.go
- query.go
- queryRegistry.go
- queueAckMgr.go
- queueProcessor.go
- queueProcessor_mock.go
- replicationTaskFetcher.go
- replicationTaskProcessor.go
- replicatorQueueProcessor.go
- replicatorQueueProcessor_mock.go
- retry.go
- service.go
- shardContext.go
- shardController.go
- stateBuilder.go
- taskAllocator.go
- taskProcessor.go
- timerBuilder.go
- timerGate.go
- timerQueueAckMgr.go
- timerQueueActiveProcessor.go
- timerQueueProcessor.go
- timerQueueProcessorBase.go
- timerQueueStandbyProcessor.go
- transferQueueActiveProcessor.go
- transferQueueProcessor.go
- transferQueueProcessorBase.go
- transferQueueStandbyProcessor.go
- workflowExecutionContext.go
- workflowExecutionUtil.go
- workflowMetrics.go
- workflowResetor.go
- xdcUtil.go