diff --git a/app/services/migration/migrators/application.rb b/app/services/migration/migrators/application.rb index 6ea26d1828..0649c2292a 100644 --- a/app/services/migration/migrators/application.rb +++ b/app/services/migration/migrators/application.rb @@ -54,8 +54,12 @@ def records_per_worker def call run_once { report_applications_not_in_ecf_as_failures } + applications_by_ecf_id = ::Application.where(ecf_id: self.class.ecf_npq_applications.pluck(:id)).index_by(&:ecf_id) + migrate(self.class.ecf_npq_applications) do |ecf_npq_application| - application = ::Application.find_by!(ecf_id: ecf_npq_application.id) + application = applications_by_ecf_id[ecf_npq_application.id] + + raise ActiveRecord::RecordNotFound, "Couldn't find Application" unless application ensure_relationships_are_consistent!(ecf_npq_application, application)