# File lib/taps/utils.rb, line 98 def calculate_chunksize(old_chunksize) c = Taps::Chunksize.new(old_chunksize) begin c.start_time = Time.now c.time_in_db = yield c rescue Errno::EPIPE, RestClient::RequestFailed, RestClient::RequestTimeout c.retries += 1 raise if c.retries > 2 # we got disconnected, the chunksize could be too large # reset the chunksize based on the number of retries c.reset_chunksize retry end c.end_time = Time.now c.calc_new_chunksize end