Removing jobs
Sometimes it is necessary to remove a job. For example, there could be a job that has bad data.
TypeScript
Python
import { Queue } from 'bullmq';
const queue = new Queue('paint');
const job = await queue.add('wall', { color: 1 });
await job.remove();
from bullmq import Queue
queue = Queue('paint')
job = await queue.add('wall', {'color': 1})
await job.remove()
Locked jobs (in active state) can not be removed. An error will be thrown.
There are 2 possible cases:
- 1.There are not pending dependencies; in this case the parent is moved to wait status, we may try to process this job.
- 2.There are pending dependencies; in this case the parent is kept in waiting-children status.
Take into consideration that processed values will be kept in processed
hset
from the parent if this child is in completed state at the time when it's removed.We may try to remove all its pending descendants first.
If any of the children are locked, the deletion process will be stopped.
Last modified 10d ago