diff options
Diffstat (limited to 'app/workers/import_issues_csv_worker.rb')
-rw-r--r-- | app/workers/import_issues_csv_worker.rb | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/app/workers/import_issues_csv_worker.rb b/app/workers/import_issues_csv_worker.rb index c7b5f8cd0a7..521e5b8fbc2 100644 --- a/app/workers/import_issues_csv_worker.rb +++ b/app/workers/import_issues_csv_worker.rb @@ -3,6 +3,7 @@ class ImportIssuesCsvWorker # rubocop:disable Scalability/IdempotentWorker include ApplicationWorker + idempotent! feature_category :issue_tracking worker_resource_boundary :cpu weight 2 @@ -12,13 +13,15 @@ class ImportIssuesCsvWorker # rubocop:disable Scalability/IdempotentWorker end def perform(current_user_id, project_id, upload_id) - @user = User.find(current_user_id) - @project = Project.find(project_id) - @upload = Upload.find(upload_id) + user = User.find(current_user_id) + project = Project.find(project_id) + upload = Upload.find(upload_id) - importer = Issues::ImportCsvService.new(@user, @project, @upload.retrieve_uploader) + importer = Issues::ImportCsvService.new(user, project, upload.retrieve_uploader) importer.execute - @upload.destroy + upload.destroy + rescue ActiveRecord::RecordNotFound + # Resources have been removed, job should not be retried end end |