Documentation
¶
Index ¶
- Variables
- func EnsureQueueSignal(ctx workflow.Context, ownerID, ownerType string, signalType signal.SignalType) error
- type Client
- func (c *Client) AwaitSignal(ctx context.Context, queueSignalID string) (*handler.FinishedResponse, error)
- func (c *Client) CancelSignal(ctx context.Context, queueSignalID string) (*handler.CancelResponse, error)
- func (c *Client) CheckCAN(ctx context.Context, queueID string) (*queue.CheckCANResponse, error)
- func (c *Client) ClearQueue(ctx context.Context, queueID string) (int, error)
- func (c *Client) CompleteSignal(ctx context.Context, signalID, updateName string) error
- func (c *Client) Create(ctx context.Context, req *CreateQueueRequest) (*app.Queue, error)
- func (c *Client) DirectExecuteSignal(ctx context.Context, queueSignalID string) (*queue.DirectExecuteResponse, error)
- func (c *Client) EnqueueSignal(ctx context.Context, req *EnqueueSignalRequest) (*queue.EnqueueResponse, error)
- func (c *Client) EnsureSignal(ctx context.Context, req *EnsureSignalRequest) (*EnsureSignalResponse, error)
- func (c *Client) FetchEagerStepGroups(ctx context.Context, req FetchEagerStepGroupsRequest) (*app.GenerateStepsResult, error)
- func (c *Client) FetchSteps(ctx context.Context, req FetchStepsRequest) (*app.GenerateStepsResult, error)
- func (c *Client) ForceRestart(ctx context.Context, queueID string) error
- func (c *Client) GetQueue(ctx context.Context, id string) (*app.Queue, error)
- func (c *Client) GetQueueByOwner(ctx context.Context, ownerID, ownerType string) (*app.Queue, error)
- func (c *Client) GetQueueByOwnerAndName(ctx context.Context, ownerID, ownerType, name string) (*app.Queue, error)
- func (c *Client) GetQueueSignal(ctx context.Context, id string) (*app.QueueSignal, error)
- func (c *Client) GetQueueStatus(ctx context.Context, queueID string) (*queue.StatusResponse, error)
- func (c *Client) HintRestart(ctx context.Context, queueIDs []string) error
- func (c *Client) HintRestartByOrg(ctx context.Context, orgID string) error
- func (c *Client) HintRestartSingle(ctx context.Context, queueID string) error
- func (c *Client) ListQueues(ctx context.Context, orgID, ownerID, ownerType string, limit, offset int) ([]app.Queue, error)
- func (c *Client) ListQueuesByOrgID(ctx context.Context, orgID string) ([]app.Queue, error)
- func (c *Client) Pause(ctx context.Context, queueID string) error
- func (c *Client) PollSignal(ctx context.Context, queueSignalID string, opts *PollSignalOptions) (*handler.StatusResponse, error)
- func (c *Client) QuerySignalStatus(ctx context.Context, queueSignalID string) (*handler.StatusResponse, error)
- func (c *Client) QueueReady(ctx context.Context, queueID string) error
- func (c *Client) RequestCANAll(ctx context.Context, _ *RequestCANAllRequest) (*RequestCANAllResponse, error)
- func (c *Client) Resume(ctx context.Context, queueID string) error
- func (c *Client) Stop(ctx context.Context, queueID string) error
- func (c *Client) Terminate(ctx context.Context, queueID string) error
- func (c *Client) TerminateStrict(ctx context.Context, queueID string) error
- type CreateQueueRequest
- type EnqueueSignalRequest
- type EnsureSignalRequest
- type EnsureSignalResponse
- type FetchEagerStepGroupsRequest
- type FetchStepsRequest
- type Params
- type PollSignalOptions
- type RequestCANAllRequest
- type RequestCANAllResponse
Constants ¶
This section is empty.
Variables ¶
var ErrSignalTimeout = errors.New("timeout waiting for signal completion")
Functions ¶
func EnsureQueueSignal ¶ added in v0.19.978
func EnsureQueueSignal(ctx workflow.Context, ownerID, ownerType string, signalType signal.SignalType) error
EnsureQueueSignal is a workflow-level helper that checks whether the latest signal of a given type for an owner has completed. If it has, it returns immediately. If it is still in flight, it registers a callback and blocks until the signal completes (or times out).
This enables dependent signals to wait for prerequisites without polling, e.g. a component-build signal waiting for org-provision to finish.
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) AwaitSignal ¶
func (c *Client) AwaitSignal(ctx context.Context, queueSignalID string) (*handler.FinishedResponse, error)
AwaitSignal is deprecated — callers should use the callback-based await pattern instead. This method logs an error with the caller's queue signal ID and returns a non-retryable error so the offending call site is surfaced immediately.
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) CancelSignal ¶ added in v0.19.850
func (c *Client) CancelSignal(ctx context.Context, queueSignalID string) (*handler.CancelResponse, error)
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) CheckCAN ¶ added in v0.19.934
CheckCAN triggers an on-demand CAN check on a queue workflow. @temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) ClearQueue ¶ added in v0.19.894
ClearQueue cancels all in-flight (non-terminal) signals in the given queue. Every affected signal is set to StatusCancelled with a "cancelled by clear-queue" description.
func (*Client) CompleteSignal ¶ added in v0.19.850
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) DirectExecuteSignal ¶ added in v0.19.901
func (c *Client) DirectExecuteSignal(ctx context.Context, queueSignalID string) (*queue.DirectExecuteResponse, error)
@temporal-gen-v2 activity @start-to-close-timeout 5m
func (*Client) EnqueueSignal ¶
func (c *Client) EnqueueSignal(ctx context.Context, req *EnqueueSignalRequest) (*queue.EnqueueResponse, error)
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) EnsureSignal ¶ added in v0.19.978
func (c *Client) EnsureSignal(ctx context.Context, req *EnsureSignalRequest) (*EnsureSignalResponse, error)
EnsureSignal checks the latest signal of the given type for the owner. If the signal is already complete (success), it returns immediately. If the signal is in flight (queued/in_progress), it atomically appends the callback and returns AlreadyComplete=false so the caller can Await.
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) FetchEagerStepGroups ¶ added in v0.19.903
func (c *Client) FetchEagerStepGroups(ctx context.Context, req FetchEagerStepGroupsRequest) (*app.GenerateStepsResult, error)
@temporal-gen-v2 activity @start-to-close-timeout 2m @heartbeat-timeout 60s
func (*Client) FetchSteps ¶ added in v0.19.894
func (c *Client) FetchSteps(ctx context.Context, req FetchStepsRequest) (*app.GenerateStepsResult, error)
@temporal-gen-v2 activity @start-to-close-timeout 2m @heartbeat-timeout 60s
func (*Client) ForceRestart ¶ added in v0.19.901
ForceRestart terminates the running queue workflow and starts a fresh one. @temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) GetQueueByOwner ¶ added in v0.19.850
func (c *Client) GetQueueByOwner(ctx context.Context, ownerID, ownerType string) (*app.Queue, error)
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) GetQueueByOwnerAndName ¶ added in v0.19.872
func (c *Client) GetQueueByOwnerAndName(ctx context.Context, ownerID, ownerType, name string) (*app.Queue, error)
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) GetQueueSignal ¶ added in v0.19.927
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) GetQueueStatus ¶ added in v0.19.850
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) HintRestart ¶ added in v0.19.903
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) HintRestartByOrg ¶ added in v0.19.903
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) HintRestartSingle ¶ added in v0.19.934
HintRestartSingle sets restart_hint on a single queue via status_v2 metadata. The queue's CAN listener will pick this up on its next poll cycle and trigger a graceful continue-as-new. @temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) ListQueues ¶ added in v0.19.850
func (c *Client) ListQueues(ctx context.Context, orgID, ownerID, ownerType string, limit, offset int) ([]app.Queue, error)
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) ListQueuesByOrgID ¶ added in v0.19.895
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) PollSignal ¶ added in v0.19.850
func (c *Client) PollSignal(ctx context.Context, queueSignalID string, opts *PollSignalOptions) (*handler.StatusResponse, error)
func (*Client) QuerySignalStatus ¶ added in v0.19.872
func (c *Client) QuerySignalStatus(ctx context.Context, queueSignalID string) (*handler.StatusResponse, error)
QuerySignalStatus queries the status of a signal handler. If the handler workflow is sleeping or completed, it falls back to the database status.
func (*Client) QueueReady ¶
@temporal-gen-v2 activity @start-to-close-timeout 1m
func (*Client) RequestCANAll ¶ added in v0.19.903
func (c *Client) RequestCANAll(ctx context.Context, _ *RequestCANAllRequest) (*RequestCANAllResponse, error)
RequestCANAll sets restart_hint on all queues via status_v2 metadata. @temporal-gen-v2 activity @start-to-close-timeout 1m
type CreateQueueRequest ¶
type EnqueueSignalRequest ¶ added in v0.19.850
type EnqueueSignalRequest struct {
QueueID string `validate:"required"`
Signal signal.Signal `validate:"required"`
OwnerID string
OwnerType string
ExpiresAt *time.Time
// Callback describes where the handler should send a Temporal signal on completion.
// Deprecated: use Callbacks for new code.
Callback callback.Ref
// Callbacks supports multiple completion targets.
Callbacks callback.Refs
}
type EnsureSignalRequest ¶ added in v0.19.978
type EnsureSignalRequest struct {
OwnerID string `json:"owner_id" validate:"required"`
OwnerType string `json:"owner_type" validate:"required"`
SignalType signal.SignalType `json:"signal_type" validate:"required"`
// Callback to register on the signal if it is still in flight.
Callback callback.Ref `json:"callback"`
}
type EnsureSignalResponse ¶ added in v0.19.978
type FetchEagerStepGroupsRequest ¶ added in v0.19.903
type FetchEagerStepGroupsRequest struct {
QueueSignalID string `json:"queue_signal_id" validate:"required"`
}
type FetchStepsRequest ¶ added in v0.19.894
type FetchStepsRequest struct {
QueueSignalID string `json:"queue_signal_id" validate:"required"`
}
type PollSignalOptions ¶ added in v0.19.850
type RequestCANAllRequest ¶ added in v0.19.903
type RequestCANAllRequest struct{}
type RequestCANAllResponse ¶ added in v0.19.903
type RequestCANAllResponse struct {
RowsAffected int64 `json:"rows_affected"`
}
Source Files
¶
- await_queue_signal.go
- await_signal.go
- cancel_signal.go
- check_can.go
- clear_queue.go
- client.go
- complete_signal.go
- control.go
- create.go
- direct_execute_signal.go
- enqueue_signal.go
- ensure_queue_signal.go
- ensure_signal.go
- fetch_eager_step_groups.go
- fetch_steps.go
- force_restart.go
- get.go
- hint_restart.go
- list_queues_by_org.go
- poll_signal.go
- query_signal.go
- ready.go
- stop.go
- terminate.go