Commit a65de9c2 authored by Stan Hu's avatar Stan Hu
Browse files

Reduce delay in destroying a project from 1-minute to immediately

Run ProjectDestroyWorker after pending_delete attribute has been committed to DB
parent 2e116227
......@@ -6,6 +6,7 @@ v 8.8.0 (unreleased)
- Log to application.log when an admin starts and stops impersonating a user
- Updated gitlab_git to 10.1.0
- GitAccess#protected_tag? no longer loads all tags just to check if a single one exists
- Reduce delay in destroying a project from 1-minute to immediately
- Make build status canceled if any of the jobs was canceled and none failed
- Upgrade Sidekiq to 4.1.2
- Sanitize repo paths in new project error message
......
......@@ -1039,4 +1039,11 @@ def runners_token
def wiki
@wiki ||= ProjectWiki.new(self, self.owner)
end
def schedule_delete!(user_id, params)
# Queue this task for after the commit, so once we mark pending_delete it will run
run_after_commit { ProjectDestroyWorker.perform_async(id, user_id, params) }
update_attribute(:pending_delete, true)
end
end
......@@ -7,9 +7,7 @@ class DestroyError < StandardError; end
DELETED_FLAG = '+deleted'
def pending_delete!
project.update_attribute(:pending_delete, true)
ProjectDestroyWorker.perform_in(1.minute, project.id, current_user.id, params)
project.schedule_delete!(current_user.id, params)
end
def execute
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment