Time limit database lock when rebasing a merge request
`MergeRequest#rebase_async` can lock indefinitely with a SELECT FOR UPDATE call. If an update is idle in transaction or another rebase attempts to run, `MergeRequest#rebase_async` could queue indefinitely or until statement timeouts are triggered. To limit the impact of this operation, we now just bail out after 5 s if we can't get the lock. The user will see an error message if this happens. Part of https://gitlab.com/gitlab-org/gitlab/issues/30528
Showing
Please register or sign in to comment