Releases: actionhero/node-resque
v4.0.5 Retry keys
v4.0.4: Bugfix
- fix bug which might cause multiWorker to always work less than minTaskProcessors
- by @evantahler via 67f0a70
No-Op Error Plugin; Ensure Integers for enqueue delays
- Demonstrate an 'error-ignoring' resque plugin
- Ensure that time delays / time stamps are integers for
queue.enqueueAt
andqueue.enqueueIn
- by @jamesjnadeau via #178
Offload pid parsing to OS to reduce returned buffer size
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
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
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 usedomains
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 usecatch()
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 jobnode-resque
was working on to the redis error queue withworker.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)
(Solves #158).
Removes a multi
delete command when untracking workers to prevent errors when using a redis cluster.
remove event listiners from redis when connections end
Soves an issue where stopping and starting multiWorker
child workers when passing in a redis connection directly would cause an event-emitter warning.
See #155 for more details.
v3.0.2: Check if setInterval().unref() exists before call
v3.0.1
Speed up the shutdown behavior of mutliWorker