gitea/services/convert
Lunny Xiao 7df09e31fa
Move issue pin to an standalone table for querying performance (#33452)
Noticed a SQL in gitea.com has a bigger load. It seems both `is_pull`
and `pin_order` are not indexed columns in the database.

```SQL
SELECT `id`, `repo_id`, `index`, `poster_id`, `original_author`, `original_author_id`, `name`, `content`, `content_version`, `milestone_id`, `priority`, `is_closed`, `is_pull`, `num_comments`, `ref`, `pin_order`, `deadline_unix`, `created_unix`, `updated_unix`, `closed_unix`, `is_locked`, `time_estimate` FROM `issue` WHERE (repo_id =?) AND (is_pull = 0) AND (pin_order > 0) ORDER BY pin_order
```

I came across a comment
https://github.com/go-gitea/gitea/pull/24406#issuecomment-1527747296
from @delvh , which presents a more reasonable approach. Based on this,
this PR will migrate all issue and pull request pin data from the
`issue` table to the `issue_pin` table. This change benefits larger
Gitea instances by improving scalability and performance.

---------

Co-authored-by: wxiaoguang <wxiaoguang@gmail.com>
2025-02-17 11:28:37 -08:00
..
activity.go For API attachments, use API URL (#25639) 2023-07-10 09:31:19 +00:00
attachment.go Fix attachment download bug (#27486) 2023-10-10 15:33:56 +00:00
convert.go Move commits signature and verify functions to service layers (#33605) 2025-02-16 12:24:07 +00:00
git_commit.go Move context from modules to services (#29440) 2024-02-27 08:12:22 +01:00
git_commit_test.go Adjust object format interface (#28469) 2023-12-17 11:56:08 +00:00
issue.go Move issue pin to an standalone table for querying performance (#33452) 2025-02-17 11:28:37 -08:00
issue_comment.go Make tracked time representation display as hours (#33315) 2025-01-19 09:30:44 +08:00
issue_test.go Move `convert` package to services (#22264) 2022-12-29 10:57:15 +08:00
main_test.go make writing main test easier (#27270) 2023-09-28 01:38:53 +00:00
mirror.go Even more `db.DefaultContext` refactor (#27352) 2023-10-03 10:30:41 +00:00
notification.go Performance improvements for pull request list page (#29900) 2024-03-21 14:13:08 +01:00
package.go Clarify permission "HasAccess" behavior (#30585) 2024-04-20 03:15:04 +00:00
pull.go Move issue pin to an standalone table for querying performance (#33452) 2025-02-17 11:28:37 -08:00
pull_review.go Fix possible NPE in ToPullReviewList (#29759) 2024-03-13 19:46:15 +00:00
pull_review_test.go Enable tenv and testifylint rules (#32852) 2024-12-15 10:41:29 +00:00
pull_test.go Fix `Permission` in API returned repository struct (#25388) 2023-06-22 13:08:08 +00:00
release.go add Upload URL to release API (#26663) 2023-08-24 10:36:10 +00:00
release_test.go add Upload URL to release API (#26663) 2023-08-24 10:36:10 +00:00
repository.go Fix various problems (artifact order, api empty slice, assignee check, fuzzy prompt, mirror proxy, adopt git) (#33569) 2025-02-13 03:26:27 +08:00
secret.go feat: implement organization secret creation API (#26566) 2023-08-22 11:20:34 +08:00
status.go refactor improve NoBetterThan (#26126) 2023-07-26 08:52:07 +00:00
user.go Make gitea webhooks openproject compatible (#28435) 2024-05-26 04:08:13 +00:00
user_test.go Add context cache as a request level cache (#22294) 2023-02-15 21:37:34 +08:00
utils.go Fix typo in gitea downloader test and add missing codebase in `ToGitServiceType` (#33146) 2025-01-08 18:34:53 +00:00
utils_test.go Fix typo in gitea downloader test and add missing codebase in `ToGitServiceType` (#33146) 2025-01-08 18:34:53 +00:00
wiki.go Fix an actions schedule bug (#28942) 2024-01-31 14:55:12 +00:00