Skip to content

Releases: actionhero/node-resque

v4.0.8: Ensure that toRun is passed to enqueue even with an error.

21 Aug 22:46

Choose a tag to compare

If you are enqueuing a job which fails with an error, we weren't properly returning toRun (which would be false) as well. We are now!

v4.0.7: Fix call callback for stopMultiWorker before stop all workers

08 Jun 16:58

Choose a tag to compare

In some cases stop callback for multiWorker called before all workers stopped.
It's happened through calling self.workers.pop() in checkWorkers method, and check self.workers.length === 0 in stopWait.

v4.0.6

18 May 17:18

Choose a tag to compare

  • Project now includes a linter as part of the test suite via standardjs.com (#184)
  • Support for string'd errors from a worker (#188)
  • Update ioredis to v3.x.x (#204)

v4.0.5 Retry keys

15 Nov 15:55

Choose a tag to compare

Fix an issue with the retry plugin in which keys for complex args were being stored as [Object object] in all cases

v4.0.4: Bugfix

01 Nov 05:48

Choose a tag to compare

  • fix bug which might cause multiWorker to always work less than minTaskProcessors

No-Op Error Plugin; Ensure Integers for enqueue delays

24 Oct 22:08

Choose a tag to compare

  • Demonstrate an 'error-ignoring' resque plugin
  • Ensure that time delays / time stamps are integers for queue.enqueueAt and queue.enqueueIn

Offload pid parsing to OS to reduce returned buffer size

11 Oct 19:26

Choose a tag to compare

When getting a list of all runing PIDs on this host (so we can cleanup any previously crashed workers), we had previously taken in the whole PS string and parsed it in Node. If your OS is busy, this list can be quite large and crash your application. Now, we'll offload some of the parsing of this list to AWK (another process) and only get back a list of PIDs to parse.

This shouldn't harm compatibility, as AWK is ubiquitous as GREP.

Fix worker queue reporting on success

05 Oct 16:59

Choose a tag to compare

This PR changes the internal worker methods of worker.fail and worker.succeed to use (and wait for) a callback internally. This prevents the followup methods, specifically worker.poll to fire before they complete.

This was causing a problem where worker.poll could potentially change the value worker.queue before the success (or failure) event fires, which reads from worker.queue

Remove Domains

05 Oct 16:58

Choose a tag to compare

From the new README:

It is very important that your jobs handle uncaughtRejections and other errors of this type properly. As of node-resque version 4, we no longer use domains to catch what would otherwise be crash-inducing errors in your jobs. This means that a job which causes your application to crash WILL BE LOST FOREVER. Please use catch() on your promises, handle all of your callbacks, and otherwise write robust node.js applications.

If you choose to use domains, process.onExit, or any other method of "catching" a process crash, you can still move the job node-resque was working on to the redis error queue with worker.fail(error, callback).


This is a breaking change which will trigger the v4 release

Solves #166. Visit this issue for a discussion of the possible alternative solutions

Update worker untrack commands to work across cluster (no multi)

04 Sep 17:28

Choose a tag to compare

(Solves #158).
Removes a multi delete command when untracking workers to prevent errors when using a redis cluster.