forgejo/models/issues
Giteabot c3b7120042
Add index to issue_user.issue_id (#27154) (#27158)
Backport #27154 by @JakobDev

This fixes a performance bottleneck. It was discovered by Codeberg.
Every where query on that table (which has grown big over time) uses
this column, but there is no index on it.

See this part of the log which was posted on Matrix:
```
2023/09/10 00:52:01 ...rs/web/repo/issue.go:1446:ViewIssue() [W] [Slow SQL Query] UPDATE `issue_user` SET is_read=? WHERE uid=? AND issue_id=? [true x y] - 51.395434887s
2023/09/10 00:52:01 ...rs/web/repo/issue.go:1447:ViewIssue() [E] ReadBy: Error 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
2023/09/10 00:52:01 ...eb/routing/logger.go:102:func1() [I] router: completed GET /Codeberg/Community/issues/1201 for [::ffff:xxx]:0, 500 Internal Server Error in 52384.2ms @ repo/issue.go:1256(repo.ViewIssue)
```

Co-authored-by: JakobDev <jakobdev@gmx.de>
2023-09-21 11:42:34 +08:00
..
assignees.go Make more functions use ctx instead of db.DefaultContext (#24068) 2023-04-14 14:18:28 -04:00
assignees_test.go Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00
comment.go More refactoring of db.DefaultContext (#27083) 2023-09-15 06:13:19 +00:00
comment_code.go Show outdated comments in files changed tab (#24936) 2023-06-21 16:08:12 +00:00
comment_list.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
comment_test.go Move some functions to service layer (#26969) 2023-09-08 21:09:23 +00:00
content_history.go
content_history_test.go Rename Sync2 -> Sync (#26479) 2023-08-13 21:17:21 +02:00
dependency.go Add API to manage issue dependencies (#17935) 2023-03-28 13:23:25 -04:00
dependency_test.go
issue.go Move some functions to service layer (#26969) 2023-09-08 21:09:23 +00:00
issue_index.go
issue_label.go Update tool dependencies, lock govulncheck and actionlint (#25655) 2023-07-09 11:58:06 +00:00
issue_list.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
issue_list_test.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
issue_lock.go
issue_project.go Use more IssueList instead of []*Issue (#26369) 2023-08-07 19:26:40 +00:00
issue_search.go Fix wrong review requested number (#26784) 2023-09-03 02:12:38 +00:00
issue_stats.go Remove the useless function GetUserIssueStats and move relevant tests to indexer_test.go (#27067) 2023-09-14 12:35:53 -04:00
issue_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
issue_update.go Update tool dependencies, lock govulncheck and actionlint (#25655) 2023-07-09 11:58:06 +00:00
issue_user.go Add index to issue_user.issue_id (#27154) (#27158) 2023-09-21 11:42:34 +08:00
issue_user_test.go Fix bug with sqlite load read (#26305) 2023-08-05 10:40:27 +08:00
issue_watch.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
issue_watch_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
issue_xref.go
issue_xref_test.go Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00
label.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
label_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
main_test.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
milestone.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
milestone_list.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
milestone_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
pull.go Move some functions to service layer (#26969) 2023-09-08 21:09:23 +00:00
pull_list.go More refactoring of db.DefaultContext (#27083) 2023-09-15 06:13:19 +00:00
pull_test.go More refactoring of db.DefaultContext (#27083) 2023-09-15 06:13:19 +00:00
reaction.go Always show usernames in reaction tooltips (#26444) 2023-08-10 21:20:01 +00:00
reaction_test.go Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00
review.go Add transaction when creating pull request created dirty data (#26259) 2023-08-10 02:39:21 +00:00
review_list.go Add commits dropdown in PR files view and allow commit by commit review (#25528) 2023-07-28 21:18:12 +02:00
review_test.go Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00
stopwatch.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
stopwatch_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
tracked_time.go Add context parameter to some database functions (#26055) 2023-07-22 22:14:27 +08:00
tracked_time_test.go Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00