diff --git a/lib/searchkick/process_queue_job.rb b/lib/searchkick/process_queue_job.rb index 69715cc..f5596a5 100644 --- a/lib/searchkick/process_queue_job.rb +++ b/lib/searchkick/process_queue_job.rb @@ -4,19 +4,18 @@ module Searchkick def perform(class_name:) model = class_name.constantize - limit = model.searchkick_index.options[:batch_size] || 1000 - record_ids = model.searchkick_index.reindex_queue.reserve(limit: limit) - if record_ids.any? - Searchkick::ProcessBatchJob.perform_later( - class_name: model.name, - record_ids: record_ids - ) - # TODO when moving to reliable queuing, mark as complete - if record_ids.size == limit - Searchkick::ProcessQueueJob.perform_later(class_name: class_name) + loop do + record_ids = model.searchkick_index.reindex_queue.reserve(limit: limit) + if record_ids.any? + Searchkick::ProcessBatchJob.perform_later( + class_name: model.name, + record_ids: record_ids + ) + # TODO when moving to reliable queuing, mark as complete end + break unless record_ids.size == limit end end end -- libgit2 0.21.0