lib/zold/remotes.rb in zold-0.16.9 vs lib/zold/remotes.rb in zold-0.16.10
- old
+ new
@@ -26,12 +26,12 @@
require 'net/http'
require 'time'
require 'futex'
require 'fileutils'
require 'backtrace'
+require 'zold/score'
require_relative 'age'
-require_relative 'score'
require_relative 'http'
require_relative 'node/farm'
# The list of remotes.
# Author:: Yegor Bugayenko (yegor256@gmail.com)
@@ -117,11 +117,11 @@
def assert_score_value(score, min)
raise "Score #{score.value} is too small (<#{min}): #{score}" if score.value < min
end
end
- def initialize(file:, network: 'test', timeout: 16)
+ def initialize(file:, network: 'test', timeout: Http::READ_TIMEOUT + Http::CONNECT_TIMEOUT)
@file = file
@network = network
@timeout = timeout
end
@@ -179,11 +179,10 @@
raise 'Log can\'t be nil' if log.nil?
raise 'Farm can\'t be nil' if farm.nil?
list = all
return if list.empty?
best = farm.best[0]
- require_relative 'score'
score = best.nil? ? Score::ZERO : best
idx = 0
pool = Concurrent::FixedThreadPool.new([list.count, Concurrent.processor_count * 4].min, max_queue: 0)
list.each do |r|
pool.post do
@@ -200,10 +199,10 @@
network: @network
)
raise 'Took too long to execute' if (Time.now - start).round > @timeout
rescue StandardError => e
error(r[:host], r[:port])
- log.info("#{Rainbow("#{r[:host]}:#{r[:port]}").red}: \"#{e.message}\" in #{Age.new(start)}")
+ log.info("#{Rainbow("#{r[:host]}:#{r[:port]}").red}: #{e.message} in #{Age.new(start)}")
log.debug(Backtrace.new(e).to_s)
remove(r[:host], r[:port]) if errors > Remotes::TOLERANCE
end
end
idx += 1