From 687196baed9462b0882514919e365e9b854ba7c4 Mon Sep 17 00:00:00 2001 From: Alex Sherman Date: Mon, 12 Apr 2021 17:03:30 +0500 Subject: [PATCH] Add logging of Que jobs skipped in migration --- db/data/20210405081552_migrate_que_jobs.rb | 23 ++++++++++++++-------- db/data_schema.rb | 2 +- 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/db/data/20210405081552_migrate_que_jobs.rb b/db/data/20210405081552_migrate_que_jobs.rb index f7a667799a..bbd15e3bf8 100644 --- a/db/data/20210405081552_migrate_que_jobs.rb +++ b/db/data/20210405081552_migrate_que_jobs.rb @@ -1,17 +1,24 @@ class MigrateQueJobs < ActiveRecord::Migration[6.0] def up QueJob.all.each do |job| - next if job.last_error.present? - - klass = job.job_class.constantize - next unless klass < ApplicationJob - - args = job.args - klass.perform_later(args) + if skip_condition(job) + logger.info "Skipped Que job migration: #{job.inspect}" + else + args = job.args + job.job_class.constantize.perform_later(args) + end end end def down - raise ActiveRecord::IrreversibleMigration + # raise ActiveRecord::IrreversibleMigration + end + + def logger + @logger ||= Logger.new(Rails.root.join('log', 'que_to_sidekiq_migration.log')) + end + + def skip_condition(job) + job.last_error.present? || !(job.job_class.constantize < ApplicationJob) end end diff --git a/db/data_schema.rb b/db/data_schema.rb index 15f126bd94..2df4aad1e3 100644 --- a/db/data_schema.rb +++ b/db/data_schema.rb @@ -1,2 +1,2 @@ # encoding: UTF-8 -DataMigrate::Data.define(version: 20210407140317) +DataMigrate::Data.define(version: 20210405081552)