Module: SidekiqBulk

Defined in:
lib/sidekiq/bulk.rb

Instance Method Summary collapse

Instance Method Details

#push_bulk(items, limit: 10_000, &block) ⇒ Object



4
5
6
7
8
# File 'lib/sidekiq/bulk.rb', line 4

def push_bulk(items, limit: 10_000, &block)
  items.in_groups_of(limit, false).each do |group|
    push_bulk!(group, &block)
  end
end

#push_bulk!(items, &block) ⇒ Object



10
11
12
13
14
15
16
17
18
# File 'lib/sidekiq/bulk.rb', line 10

def push_bulk!(items, &block)
  if block
    args = items.map(&block)
  else
    args = items.map { |el| [el] }
  end

  Sidekiq::Client.push_bulk("class" => self, "args" => args)
end