From df48af22296ccce8e9bd18e5d35c9a3cdf5acb0f Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Wed, 1 Mar 2023 20:14:02 +0100 Subject: [PATCH] Order pull request conflict checking by recently updated, for each push (#23220) When a change is pushed to the default branch and many pull requests are open for that branch, conflict checking can take some time. Previously it would go from oldest to newest pull request. Now prioritize pull requests that are likely being actively worked on or prepared for merging. This only changes the order within one push to one repository, but the change is trivial and can already be quite helpful for smaller Gitea instances where a few repositories have most pull requests. A global order would require deeper changes to queues. --- models/issues/pull_list.go | 1 + 1 file changed, 1 insertion(+) diff --git a/models/issues/pull_list.go b/models/issues/pull_list.go index f4efd916c..6c9e8c4e0 100644 --- a/models/issues/pull_list.go +++ b/models/issues/pull_list.go @@ -111,6 +111,7 @@ func GetUnmergedPullRequestsByBaseInfo(repoID int64, branch string) ([]*PullRequ return prs, db.GetEngine(db.DefaultContext). Where("base_repo_id=? AND base_branch=? AND has_merged=? AND issue.is_closed=?", repoID, branch, false, false). + OrderBy("issue.updated_unix DESC"). Join("INNER", "issue", "issue.id=pull_request.issue_id"). Find(&prs) }