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

Improve loadprojects for issue list #25468

Merged
merged 9 commits into from
Jun 24, 2023

Conversation

lunny
Copy link
Member

@lunny lunny commented Jun 23, 2023

Performance improvements for issue list loadprojects.

@lunny lunny added performance/speed performance issues with slow downs backport/v1.20 This PR should be backported to Gitea 1.20 labels Jun 23, 2023
@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Jun 23, 2023
@pull-request-size pull-request-size bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jun 23, 2023
@lunny lunny added this to the 1.21.0 milestone Jun 23, 2023
@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 Jun 23, 2023
@silverwind
Copy link
Member

Lint failure related.

@lunny
Copy link
Member Author

lunny commented Jun 24, 2023

Lint failure related.

Fixed

@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 Jun 24, 2023
@lunny lunny enabled auto-merge (squash) June 24, 2023 15:10
@lunny lunny merged commit 083818c into go-gitea:main Jun 24, 2023
GiteaBot pushed a commit to GiteaBot/gitea that referenced this pull request Jun 24, 2023
@GiteaBot GiteaBot added the backport/done All backports for this PR have been created label Jun 24, 2023
@lunny lunny deleted the lunny/fix_load_issue_project branch June 30, 2023 08:28
silverwind pushed a commit that referenced this pull request Jul 4, 2023
GiteaBot pushed a commit to GiteaBot/gitea that referenced this pull request Jul 4, 2023
silverwind pushed a commit that referenced this pull request Jul 4, 2023
delvh pushed a commit that referenced this pull request Jul 12, 2023
Before:

![image](https://github.com/go-gitea/gitea/assets/18380374/1ab476dc-2f9b-4c85-9e87-105fc73af1ee)
After:

![image](https://github.com/go-gitea/gitea/assets/18380374/786f984d-5c27-4eff-b3d9-159f68034ce4)

This issue comes from the change in #25468.
`LoadProject` will always return at least one record, so we use
`ProjectID` to check whether an issue is linked to a project in the old
code.
As other `issue.LoadXXX` functions, we need to check the return value
from `xorm.Session.Get`.

In recent unit tests, we only test `issueList.LoadAttributes()` but
don't test `issue.LoadAttributes()`. So I added a new test for
`issue.LoadAttributes()` in this PR.

---------

Co-authored-by: Denys Konovalov <[email protected]>
GiteaBot pushed a commit to GiteaBot/gitea that referenced this pull request Jul 12, 2023
Before:

![image](https://github.com/go-gitea/gitea/assets/18380374/1ab476dc-2f9b-4c85-9e87-105fc73af1ee)
After:

![image](https://github.com/go-gitea/gitea/assets/18380374/786f984d-5c27-4eff-b3d9-159f68034ce4)

This issue comes from the change in go-gitea#25468.
`LoadProject` will always return at least one record, so we use
`ProjectID` to check whether an issue is linked to a project in the old
code.
As other `issue.LoadXXX` functions, we need to check the return value
from `xorm.Session.Get`.

In recent unit tests, we only test `issueList.LoadAttributes()` but
don't test `issue.LoadAttributes()`. So I added a new test for
`issue.LoadAttributes()` in this PR.

---------

Co-authored-by: Denys Konovalov <[email protected]>
silverwind pushed a commit that referenced this pull request Jul 12, 2023
Backport #25802 by @yp05327

You can confirm this issue in
https://try.gitea.io/yp05327/testrepo/issues/2

Before:

![image](https://github.com/go-gitea/gitea/assets/18380374/1ab476dc-2f9b-4c85-9e87-105fc73af1ee)
After:

![image](https://github.com/go-gitea/gitea/assets/18380374/786f984d-5c27-4eff-b3d9-159f68034ce4)

This issue comes from the change in #25468.
`LoadProject` will always return at least one record, so we use
`ProjectID` to check whether an issue is linked to a project in the old
code.
As other `issue.LoadXXX` functions, we need to check the return value
from `xorm.Session.Get`.

In recent unit tests, we only test `issueList.LoadAttributes()` but
don't test `issue.LoadAttributes()`. So I added a new test for
`issue.LoadAttributes()` in this PR.

Co-authored-by: yp05327 <[email protected]>
Co-authored-by: Denys Konovalov <[email protected]>
@lunny lunny added the type/refactoring Existing code has been cleaned up. There should be no new functionality. label Jul 21, 2023
@go-gitea go-gitea locked as resolved and limited conversation to collaborators Sep 22, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
backport/done All backports for this PR have been created backport/v1.20 This PR should be backported to Gitea 1.20 lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. performance/speed performance issues with slow downs size/M Denotes a PR that changes 30-99 lines, ignoring generated files. type/refactoring Existing code has been cleaned up. There should be no new functionality.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants