Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix slow patch checking with commits that add or remove many files (#31548) #31560

Merged
merged 1 commit into from
Jul 5, 2024

Conversation

GiteaBot
Copy link
Collaborator

@GiteaBot GiteaBot commented Jul 4, 2024

Backport #31548 by @brechtvl

Running git update-index for every individual file is slow, so add and remove everything with a single git command.

When such a big commit lands in the default branch, it could cause PR creation and patch checking for all open PRs to be slow, or time out entirely. For example, a commit that removes 1383 files was measured to take more than 60 seconds and timed out. With this change checking took about a second.

This is related to #27967, though this will not help with commits that change many lines in few files.

…o-gitea#31548)

Running git update-index for every individual file is slow, so add and
remove everything with a single git command.

When such a big commit lands in the default branch, it could cause PR
creation and patch checking for all open PRs to be slow, or time out
entirely. For example, a commit that removes 1383 files was measured to
take more than 60 seconds and timed out. With this change checking took
about a second.

This is related to go-gitea#27967, though this will not help with commits that
change many lines in few files.
@GiteaBot GiteaBot added modifies/go Pull requests that update Go code performance/speed performance issues with slow downs labels Jul 4, 2024
@GiteaBot GiteaBot added this to the 1.22.1 milestone Jul 4, 2024
@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Jul 4, 2024
@GiteaBot GiteaBot requested review from lunny and silverwind July 4, 2024 18:57
@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels Jul 4, 2024
@GiteaBot GiteaBot added lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels Jul 5, 2024
@silverwind silverwind merged commit 6486c8b into go-gitea:release/v1.22 Jul 5, 2024
26 checks passed
@go-gitea go-gitea locked as resolved and limited conversation to collaborators Oct 3, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. modifies/go Pull requests that update Go code performance/speed performance issues with slow downs
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants