We added caching to merge requests' list of commits previously (allura.model.repository.MergeRequest#commits
). But it still can sometimes be slow the very first time. This is particularly a problem when creating the merge request and there's been no chance for it to get cached.
There is a similar pattern in place already for seeing if the commits are cleanly mergeable (see "merge_task_status")
Done on db/8214
Note: when logged in as an admin, you'll see one-click merge button and the bg checks happening for that too. Doing a merge-request as a non-admin user will be a more common scenario.
To simulate a very slow task, you can stop
taskd
processes before submitting the merge request, and then start them again a bit later.Merged.