Class: Job<D, R>
Defined in: glide-mq/src/job.ts:12
Type Parameters
| Type Parameter | Default type |
|---|---|
D | any |
R | any |
Properties
abortSignal?
optional abortSignal?: AbortSignal;Defined in: glide-mq/src/job.ts:42
AbortSignal that fires when this job is revoked during processing. The processor should check signal.aborted cooperatively. Only set when the job is being processed by a Worker.
attemptsMade
attemptsMade: number;Defined in: glide-mq/src/job.ts:17
cost?
optional cost?: number;Defined in: glide-mq/src/job.ts:33
data
data: D;Defined in: glide-mq/src/job.ts:15
deserializationFailed
deserializationFailed: boolean = false;Defined in: glide-mq/src/job.ts:61
Set to true when data or returnvalue could not be deserialized from Valkey. This typically indicates a serializer mismatch between the producer and consumer. When true, data is set to {} as D and returnvalue to undefined.
discarded
discarded: boolean = false;Defined in: glide-mq/src/job.ts:48
When true, the job will not be retried on failure regardless of attempts config. Set by calling discard() inside the processor.
expireAt?
optional expireAt?: number;Defined in: glide-mq/src/job.ts:34
failedReason
failedReason: string | undefined;Defined in: glide-mq/src/job.ts:19
finishedOn
finishedOn: number | undefined;Defined in: glide-mq/src/job.ts:22
groupKey?
optional groupKey?: string;Defined in: glide-mq/src/job.ts:32
id
readonly id: string;Defined in: glide-mq/src/job.ts:13
name
readonly name: string;Defined in: glide-mq/src/job.ts:14
opts
readonly opts: JobOptions;Defined in: glide-mq/src/job.ts:16
orderingKey?
optional orderingKey?: string;Defined in: glide-mq/src/job.ts:30
orderingSeq?
optional orderingSeq?: number;Defined in: glide-mq/src/job.ts:31
parentId?
optional parentId?: string;Defined in: glide-mq/src/job.ts:24
parentIds?
optional parentIds?: string[];Defined in: glide-mq/src/job.ts:27
Additional parent IDs for DAG multi-parent jobs.
parentQueue?
optional parentQueue?: string;Defined in: glide-mq/src/job.ts:25
parentQueues?
optional parentQueues?: string[];Defined in: glide-mq/src/job.ts:29
Additional parent queues for DAG multi-parent jobs (parallel array to parentIds).
processedOn
processedOn: number | undefined;Defined in: glide-mq/src/job.ts:23
progress
progress: number | object;Defined in: glide-mq/src/job.ts:20
returnvalue
returnvalue: R | undefined;Defined in: glide-mq/src/job.ts:18
schedulerName?
optional schedulerName?: string;Defined in: glide-mq/src/job.ts:35
timestamp
timestamp: number;Defined in: glide-mq/src/job.ts:21
Methods
changeDelay()
changeDelay(newDelay): Promise<void>;Defined in: glide-mq/src/job.ts:360
Change the delay of this job. Supports delayed, waiting, and prioritized states. Setting delay to 0 promotes a delayed job immediately. Setting delay > 0 on a waiting/prioritized job moves it to the scheduled ZSet. Throws if the job is in an invalid state (active, completed, failed).
Parameters
| Parameter | Type |
|---|---|
newDelay | number |
Returns
Promise<void>
changePriority()
changePriority(newPriority): Promise<void>;Defined in: glide-mq/src/job.ts:340
Change the priority of this job. Supports waiting, prioritized, and delayed states. Setting priority to 0 moves a prioritized job back to the stream (waiting). Throws if the job is in an invalid state (active, completed, failed).
Parameters
| Parameter | Type |
|---|---|
newPriority | number |
Returns
Promise<void>
discard()
discard(): void;Defined in: glide-mq/src/job.ts:155
Mark this job so it will not be retried on failure. Call inside the processor before throwing to skip all remaining attempts.
Returns
void
getChildrenValues()
getChildrenValues(): Promise<Record<string, R>>;Defined in: glide-mq/src/job.ts:207
Read return values from all child jobs (for flow/parent-child patterns).
Returns
Promise<Record<string, R>>
getParents()
getParents(): Promise<object[]>;Defined in: glide-mq/src/job.ts:254
Read all parent references for this job (for DAG multi-parent patterns). Returns an array of { queue, id } for each parent. For single-parent jobs, returns an array with one element. For jobs with no parent, returns an empty array.
Returns
Promise<object[]>
getState()
getState(): Promise<string>;Defined in: glide-mq/src/job.ts:514
Read the current state from the job hash.
Returns
Promise<string>
isActive()
isActive(): Promise<boolean>;Defined in: glide-mq/src/job.ts:492
Check if this job is in the active state.
Returns
Promise<boolean>
isCompleted()
isCompleted(): Promise<boolean>;Defined in: glide-mq/src/job.ts:471
Check if this job is in the completed state.
Returns
Promise<boolean>
isDelayed()
isDelayed(): Promise<boolean>;Defined in: glide-mq/src/job.ts:485
Check if this job is in the delayed state.
Returns
Promise<boolean>
isFailed()
isFailed(): Promise<boolean>;Defined in: glide-mq/src/job.ts:478
Check if this job is in the failed state.
Returns
Promise<boolean>
isRevoked()
isRevoked(): Promise<boolean>;Defined in: glide-mq/src/job.ts:506
Check if this job has been revoked.
Returns
Promise<boolean>
isWaiting()
isWaiting(): Promise<boolean>;Defined in: glide-mq/src/job.ts:499
Check if this job is in the waiting state.
Returns
Promise<boolean>
log()
log(message): Promise<void>;Defined in: glide-mq/src/job.ts:102
Append a log line to this job's log list.
Parameters
| Parameter | Type |
|---|---|
message | string |
Returns
Promise<void>
moveToDelayed()
moveToDelayed(timestamp, nextStep?): Promise<never>;Defined in: glide-mq/src/job.ts:396
Pause an active job and resume it after the given UNIX timestamp in ms. Optionally updates job.data.step before yielding back to the worker.
This method must be called from inside a Worker processor.
Parameters
| Parameter | Type |
|---|---|
timestamp | number |
nextStep? | string |
Returns
Promise<never>
moveToFailed()
moveToFailed(err): Promise<void>;Defined in: glide-mq/src/job.ts:297
Move this job to the failed state. If attempts remain and backoff is configured, retries via the scheduled ZSet. Requires entryId to be set (set by Worker when processing).
Parameters
| Parameter | Type |
|---|---|
err | Error |
Returns
Promise<void>
moveToWaitingChildren()
moveToWaitingChildren(): Promise<never>;Defined in: glide-mq/src/job.ts:189
Pause an active job and wait for dynamically-added child jobs to complete. When all children finish, this job resumes and the processor is invoked again.
This method must be called from inside a Worker processor.
Returns
Promise<never>
promote()
promote(): Promise<void>;Defined in: glide-mq/src/job.ts:379
Promote a delayed job to waiting immediately. Removes from the scheduled ZSet, adds to the stream, sets state to 'waiting'. Throws if the job is not in the delayed state or does not exist.
Returns
Promise<void>
rateLimitGroup()
rateLimitGroup(duration, opts?): Promise<never>;Defined in: glide-mq/src/job.ts:424
Rate-limit this job's ordering group for the given duration (milliseconds). The current job is re-parked in the group queue (by default at the front) and the entire group is paused until the duration expires.
Can only be called from inside a Worker processor. Throws GroupRateLimitError which the worker catches internally.
Parameters
| Parameter | Type |
|---|---|
duration | number |
opts? | GroupRateLimitOptions |
Returns
Promise<never>
remove()
remove(): Promise<void>;Defined in: glide-mq/src/job.ts:331
Remove this job from all data structures.
Returns
Promise<void>
retry()
retry(): Promise<void>;Defined in: glide-mq/src/job.ts:439
Retry this job by moving it back to the scheduled ZSet with a score of now (so it gets promoted immediately on the next promote cycle). Removes the job from the failed ZSet first to prevent dual membership.
Returns
Promise<void>
updateData()
updateData(data): Promise<void>;Defined in: glide-mq/src/job.ts:143
Replace the data payload of this job.
Parameters
| Parameter | Type |
|---|---|
data | D |
Returns
Promise<void>
updateProgress()
updateProgress(progress): Promise<void>;Defined in: glide-mq/src/job.ts:113
Update the progress of this job. Persists to the job hash and emits a progress event.
Parameters
| Parameter | Type |
|---|---|
progress | number | object |
Returns
Promise<void>
waitUntilFinished()
waitUntilFinished(pollIntervalMs?, timeoutMs?): Promise<"completed" | "failed">;Defined in: glide-mq/src/job.ts:524
Wait until the job reaches a terminal state (completed or failed). Polls the job hash state at the given interval. Returns the final state.
Parameters
| Parameter | Type | Default value |
|---|---|---|
pollIntervalMs | number | 500 |
timeoutMs | number | 30000 |
Returns
Promise<"completed" | "failed">