* Only update merge_base if not already merged
Fix #10766
Signed-off-by: Andrew Thornton <art27@cantab.net>
* Prevent race in transfer pull request
* Update services/pull/pull.go
// Make sure there is no waiting test to process before leaving the checking status.
if !pullRequestQueue.Exist(pr.ID) {
- if err := pr.UpdateCols("merge_base", "status", "conflicted_files"); err != nil {
+ if err := pr.UpdateColsIfNotMerged("merge_base", "status", "conflicted_files"); err != nil {
log.Error("Update[%d]: %v", pr.ID, err)
}
}
if pr.Status == models.PullRequestStatusChecking {
pr.Status = models.PullRequestStatusMergeable
}
- if err := pr.UpdateCols("status, conflicted_files, base_branch"); err != nil {
+ if err := pr.UpdateColsIfNotMerged("merge_base", "status", "conflicted_files", "base_branch"); err != nil {
return err
}