Event "failed" is fired for every attempt [BUG]
Created by: misos1
Description
It should be fired like "global:failed" only once after is job definitely failed.
Minimal, Working Test code to reproduce the issue.
let Queue = require("bull");
let queue = new Queue("queue", { defaultJobOptions: { attempts: 3 } });
queue.process(_job => { throw(new Error("err")); });
queue.on("failed", job => console.log("failed", job.id, job.attemptsMade, job.opts.attempts));
queue.on("global:failed", job_id => console.log("global:failed", job_id));
queue.add({});
Possible output:
failed 358 1 3
failed 358 2 3
global:failed 358
failed 358 3 3
Bull version
3.10.0