0
Fork 0
mirror of https://codeberg.org/forgejo/forgejo.git synced 2024-12-28 02:14:06 -05:00
forgejo/models
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
..
actions Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
activities Reduce usage of db.DefaultContext (#27073) 2023-09-14 17:09:32 +00:00
admin Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
asymkey Reduce usage of db.DefaultContext (#27073) 2023-09-14 17:09:32 +00:00
auth Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
avatars Fix context cache bug & enable context cache for dashabord commits' authors (#26991) 2023-09-11 10:14:01 +00:00
db Improve DeleteByID (#26904) 2023-09-05 08:11:35 +02:00
dbfs
fixtures Replace 'userxx' with 'orgxx' in all test files when the user type is org (#27052) 2023-09-14 02:59:53 +00:00
git Search branches (#27055) 2023-09-17 08:24:40 +00:00
issues Add index to issue_user.issue_id (#27154) (#27158) 2023-09-21 11:42:34 +08:00
migrations Add index to issue_user.issue_id (#27154) (#27158) 2023-09-21 11:42:34 +08:00
organization Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
packages move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
perm move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
project Refactor project templates (#26448) 2023-08-12 10:30:28 +00:00
pull
repo Add RemoteAddress to mirrors (#26952) 2023-09-16 16:03:02 +00:00
secret Refactor secrets modification logic (#26873) 2023-09-05 15:21:02 +00:00
shared/types
system Fix context cache bug & enable context cache for dashabord commits' authors (#26991) 2023-09-11 10:14:01 +00:00
unit Use Set[Type] instead of map[Type]bool/struct{}. (#26804) 2023-08-30 06:55:25 +00:00
unittest
user Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
webhook
error.go
fixture_generation.go
fixture_test.go
main_test.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
org.go
org_team.go Use db.WithTx for AddTeamMember to avoid ctx abuse (#27095) 2023-09-16 12:54:23 +00:00
org_team_test.go Reduce usage of db.DefaultContext (#27073) 2023-09-14 17:09:32 +00:00
org_test.go
repo.go move repository deletion to service layer (#26948) 2023-09-08 04:51:15 +00:00
repo_test.go
repo_transfer.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00
repo_transfer_test.go Next round of db.DefaultContext refactor (#27089) 2023-09-16 14:39:12 +00:00