in elasticsearch-api/api-spec-testing/wipe_cluster.rb [197:213]
def wait_for_pending_rollup_tasks(client)
filter = 'xpack/rollup/job'
start_time = Time.now.to_i
count = 0
loop do
results = client.cat.tasks(detailed: true).split("\n")
results.each do |task|
next if task.empty? || skippable_task?(task) || task.include?(filter)
count += 1
end
break unless count.positive? && Time.now.to_i < (start_time + 1)
end
client.logger.debug("Waited for #{count} pending rollup tasks for #{Time.now.to_i - start_time}s.") if count.positive?
end