Class: Webhookdb::Jobs::Backfill

Inherits:
Object
  • Object
show all
Extended by:
Async::Job
Includes:
Amigo::DurableJob, Amigo::QueueBackoffJob
Defined in:
lib/webhookdb/jobs/backfill.rb

Instance Method Summary collapse

Methods included from Async::Job

extended

Methods included from Amigo::DurableJob

enabled?, ensure_jobs_tables, heartbeat, heartbeat!, included, insert_job, lock_job, poll_jobs, reconnect, replace_database_settings, set_database_setting, storage_datasets, unlock_job

Instance Method Details

#_perform(event) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
# File 'lib/webhookdb/jobs/backfill.rb', line 21

def _perform(event)
  bfjob = self.lookup_model(Webhookdb::BackfillJob, event.payload)
  sint = bfjob.service_integration
  self.with_log_tags(sint.log_tags.merge(backfill_job_id: bfjob.opaque_id)) do
    if bfjob.finished?
      self.logger.info "skipping_finished_backfill_job"
    else
      sint.replicator.backfill(bfjob)
    end
  end
end

#dependent_queuesObject



16
17
18
19
# File 'lib/webhookdb/jobs/backfill.rb', line 16

def dependent_queues
  # This is really the lowest-priority job so always defer to other queues.
  return super
end