i've written snippet below identify if potential job unique , if not, not run it. iterating on each job in scheduled queue , looking @ job's arguments passed through. dependent on arguments, can determine if unique:
job_exists = { :appointment => false } sidekiq::scheduledset.new.sort.each |job| case job['args'][0] when 'appointment' job_exists[:appointment] = true end end and in next snippet of code, checks boolean value , if doesn't exist run it.
however, i've been getting error comparison of sidekiq::sortedentry sidekiq::sortedentry thrown line: sidekiq::scheduledset.new.sort.each |job|.
why line causing error thrown?
because sorting entire set in memory. don't that.
Comments
Post a Comment