lib/toiler/actor/fetcher.rb in toiler-0.5.1.pre3 vs lib/toiler/actor/fetcher.rb in toiler-0.5.1.pre4
- old
+ new
@@ -66,11 +66,11 @@
max_number_of_messages: max_number_of_messages
end
end
def poll_messages
- return unless free_processors / 2 > waiting_messages
+ return unless should_poll?
max_number_of_messages = max_messages
@waiting_messages += max_number_of_messages
debug "Fetcher #{queue.name} polling messages..."
@@ -80,9 +80,15 @@
end
future.on_fulfillment! do |msgs|
tell [:assign_messages, msgs] if !msgs.nil? && !msgs.empty?
tell :poll_messages
end
+
+ tell :poll_messages if should_poll?
+ end
+
+ def should_poll?
+ free_processors / 2 > waiting_messages
end
def processor_pool
@processor_pool ||= Toiler.processor_pool queue.name
end