Job retried through the interface gets its ID passed as a string to the queue event
- Dominant language
- JavaScript
- Stars
- 9.4k
- Forks
- 858
- PR merge metrics
- No merged PRs in 30d
Description
... instead of an integer.
Hello,
To test this:
- Create a test job with a `queue.process` consumer without any callback.
- Add a queue-level event `job enqueue` and watch the job id.
- Get a job stuck in active state by restarting the server.
- Retry the job while in the UI.
- Here, the job id is a string in the queue event.
```
const queue = kue.createQueue();
queue.create('test', {test:'test'})
.attempts(2)
.removeOnComplete(false);
queue.process('test', (job, ctx, done) => {
//nil
});
queue.on('job enqueue', (jobId, type) => {
console.log(jobId);
});
```
### Workaround
Use `parseInt` in the queue event.
Contributor guide
No contributing guide indexed for this repository
Research direction
No file or test is identified in the issue. Reproduce the UI retry flow with the shown queue.process consumer and queue-level 'job enqueue' listener, then trace the retry path to the event emission. Done means a retried job's ID reaches the queue event as an integer, without requiring the parseInt workaround.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js, redis
- Domain
- backend
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 42/100