The type of the job data.
The type of the job result.
The type of the job name.
Optional
opts: QueueProOptionsAdds a Job to the queue.
Optional
opts: JobsProOptionsAdds an array of jobs to the queue. This method may be faster than adding one job at a time in a sequence.
The array of jobs to add to the queue. Each job is defined by 3 properties, 'name', 'data' and 'opts'. They follow the same signature as 'Queue.add'.
Cleans all the jobs that are part of a group.
Cleans all the groups in this queue
Gets the active count of jobs inside a given group id. It will only return data when using concurrency per group, otherwise it will return NaN.
Gets group concurrency.
Get jobs that are part of a given group.
Gets the count of jobs inside a given group id.
Gets group rate limit options.
Returns the time to live for a rate limited key in milliseconds.
group identifier
Optional
maxJobs: numbermax jobs to be considered in rate limit state. If not passed it will return the remaining ttl without considering if max jobs is excedeed.
-2 if the key does not exist. -1 if the key exists but has no associated expire.
Get the group ids with jobs current jobs in them.
TODO: Support group id filtering.
Gets all the groups that are in a particular status.
GroupStatus so we can filter by status
start index, used for pagination.
end index, used for pagination.
an array of objects with the group id and status.
Get the total number of groups with jobs in them.
Gets the count of all the jobs belonging to any group.
limit of groups per each iteration
Get the given group status.
The group id to get the status for.
GroupStatus - The status of the group or null if the group does not exist.
Get library version.
the content of the meta.library field.
Completely destroys the queue and all of its contents irreversibly. This method will the pause the queue and requires that there are no active jobs. It is possible to bypass this requirement, i.e. not having active jobs using the "force" option.
Note: This operation requires to iterate on all the jobs stored in the queue and can be slow for very large queues.
Optional
opts: { count?: number; force?: boolean }Obliterate options.
Pauses the processing of a specific group globally.
Adding jobs requires a LUA script to check first if the paused list exist and in that case it will add it there instead of the wait list or group list.
Removes group concurrency.
Remove group configuration.
Removes group rate limit.
Repairs a maxed group.
It seems that in some unknown situations a group can become maxed although there are no active jobs in the group. This function will try to repair this situation.
the group to repair
Optional
concurrency: numbermaximum number of simultaneous jobs that the workers can handle within a specific group
Repairs stalled key when you are migrating from v4 or below to v6 or above. This key used a zset and now it uses a set, this is why this method is needed. An error like: 'WRONGTYPE Operation against a key holding the wrong kind of value' in moveStalledJobsToWait script is a good indicator of this change. Note: Migration from v5 to v6 won't need to call this method
Resumes the processing of a specific group globally.
The method reverses the pause operation by resuming the processing of the group.
the group to resume
Sets group concurrency.
Sets group rate limit.
QueuePro extends the functionality of Queue with additional features for handling job groups, rate limiting, concurrency per group, and more.