librelist archives

« back to archive

Resque 1.8.0

Resque 1.8.0

From:
Chris Wanstrath
Date:
2010-04-07 @ 19:59
Grab it: gem install resque

Thanks to Adam Greene, the big change is that jobs that never
completed are now passed to the failure backend as `DirtyExit`
exceptions. So if you `kill -9` a worker mid-process, when it restarts
it should find the incomplete job and send it along to the failure
backend.

I'm not going to say Resque will *never* lose a job, but it just got a hell
of a lot more difficult.

Also, thanks to sr, worker state is now maintained in the parent. This
should make the feature I just described more reliable - really it's a
bugfix, the parent should have managing the child's state all along.
That's the point.

Enjoy.

CHANGES

* Jobs that never complete due to killed worker are now failed.
* Worker "working" state is now maintained by the parent, not the child.
* Stopped using deprecated redis.rb methods
* `Worker.working` race condition fixed
* `Worker#process` has been deprecated.
* Monit example fixed
* Redis::Client and Redis::Namespace can be passed to `Resque.redis=`

Compare view: http://github.com/defunkt/resque/compare/v1.7.1...v1.8.0

Chris

Re: [resque] Resque 1.8.0

From:
Tony Arcieri
Date:
2010-04-07 @ 20:19
On Wed, Apr 7, 2010 at 1:59 PM, Chris Wanstrath <chris@ozmm.org> wrote:

> Also, thanks to sr, worker state is now maintained in the parent. This
> should make the feature I just described more reliable - really it's a
> bugfix, the parent should have managing the child's state all along.
>

Awesome!  Definitely a good decision.

-- 
Tony Arcieri
Medioh! A Kudelski Brand