diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/oxidized/nodes.rb | 3 | ||||
| -rw-r--r-- | lib/oxidized/worker.rb | 5 | 
2 files changed, 5 insertions, 3 deletions
| diff --git a/lib/oxidized/nodes.rb b/lib/oxidized/nodes.rb index f5a1ad0..011bfc3 100644 --- a/lib/oxidized/nodes.rb +++ b/lib/oxidized/nodes.rb @@ -4,7 +4,7 @@ module Oxidized    class Oxidized::NotSupported < OxidizedError; end    class Oxidized::NodeNotFound < OxidizedError; end    class Nodes < Array -    attr_accessor :source +    attr_accessor :source, :jobs      alias :put :unshift      def load node_want=nil        with_lock do @@ -73,6 +73,7 @@ module Oxidized            # set last job to nil so that the node is picked for immediate update            n.last = nil            put n +          jobs.want += 1          end        end      end diff --git a/lib/oxidized/worker.rb b/lib/oxidized/worker.rb index 1952d01..80d65cb 100644 --- a/lib/oxidized/worker.rb +++ b/lib/oxidized/worker.rb @@ -3,8 +3,9 @@ module Oxidized    require 'oxidized/jobs'    class Worker      def initialize nodes -      @nodes   = nodes -      @jobs    = Jobs.new(Oxidized.config.threads, Oxidized.config.interval, @nodes) +      @nodes      = nodes +      @jobs       = Jobs.new(Oxidized.config.threads, Oxidized.config.interval, @nodes) +      @nodes.jobs = @jobs        Thread.abort_on_exception = true      end | 
