diff options
Diffstat (limited to 'app/workers/project_destroy_worker.rb')
-rw-r--r-- | app/workers/project_destroy_worker.rb | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/app/workers/project_destroy_worker.rb b/app/workers/project_destroy_worker.rb index 482e1e38cd1..209cf11e893 100644 --- a/app/workers/project_destroy_worker.rb +++ b/app/workers/project_destroy_worker.rb @@ -3,17 +3,14 @@ class ProjectDestroyWorker include DedicatedSidekiqQueue def perform(project_id, user_id, params) - begin - project = Project.unscoped.find(project_id) - rescue ActiveRecord::RecordNotFound - return - end - + project = Project.find(project_id) user = User.find(user_id) ::Projects::DestroyService.new(project, user, params.symbolize_keys).execute - rescue StandardError => error - project.assign_attributes(delete_error: error.message, pending_delete: false) - project.save!(validate: false) + rescue Exception => error # rubocop:disable Lint/RescueException + project&.update_attributes(delete_error: error.message, pending_delete: false) + Rails.logger.error("Deletion failed on #{project&.full_path} with the following message: #{error.message}") + + raise end end |