MCPcopy Index your code
hub / github.com/dagucloud/dagu / DispatchTaskStore

Interface DispatchTaskStore

internal/core/exec/distributed.go:114–122  ·  view source on GitHub ↗

DispatchTaskStore manages the shared distributed dispatch queue.

Source from the content-addressed store, hash-verified

112
113// DispatchTaskStore manages the shared distributed dispatch queue.
114type DispatchTaskStore interface {
115 Enqueue(ctx context.Context, task *DispatchTask) error
116 ClaimNext(ctx context.Context, claim DispatchTaskClaim) (*ClaimedDispatchTask, error)
117 GetClaim(ctx context.Context, claimToken string) (*ClaimedDispatchTask, error)
118 ReleaseClaim(ctx context.Context, claimToken string) error
119 DeleteClaim(ctx context.Context, claimToken string) error
120 CountOutstandingByQueue(ctx context.Context, queueName string, claimTimeout time.Duration) (int, error)
121 HasOutstandingAttempt(ctx context.Context, attemptKey string, claimTimeout time.Duration) (bool, error)
122}
123
124// WorkerHeartbeatRecord is the shared presence record for a worker.
125type WorkerHeartbeatRecord struct {

Implementers 6

mockDispatchTaskStoreinternal/service/scheduler/queue_proce
queueConditionDispatchTaskStoreinternal/service/scheduler/queue_condi
claimReleaseStoreinternal/service/coordinator/handler_e
pollingDispatchStoreinternal/service/coordinator/handler_e
failingDispatchTaskStoreinternal/service/coordinator/handler_t
DispatchTaskStoreinternal/persis/store/distributed_disp

Calls

no outgoing calls

Tested by

no test coverage detected