forgejo/models
Gusted 548adb94b4
Avoid database lookups for DescriptionHTML (#18924)
* Avoid database lookups for `DescriptionHTML`

- Don't Compose meta's for DescriptionHTML, they are only needed in
order to correctly format and show issue's but it's highly unlikely that
a repository description will refer to a local issue.

Using 125 Connections for 5 seconds: on `/explore/repos`(which is the most
noticeable usage by this function's database lookups):

Before:

Statistics        Avg      Stdev        Max
  Reqs/sec       569.41     506.05    2715.00
  Latency      214.27ms    16.60ms   294.84ms
  HTTP codes:
    1xx - 0, 2xx - 2974, 3xx - 0, 4xx - 0, 5xx - 0
    others - 0
  Throughput:    27.17MB/s

After:

Statistics        Avg      Stdev        Max
  Reqs/sec      1585.04     789.84    4144.56
  Latency       78.89ms    15.89ms   206.94ms
  HTTP codes:
    1xx - 0, 2xx - 7975, 3xx - 0, 4xx - 0, 5xx - 0
    others - 0
  Throughput:    73.85MB/s

Co-authored-by: 6543 <6543@obermui.de>
Co-authored-by: zeripath <art27@cantab.net>
2022-02-27 18:51:34 +01:00
..
admin Propagate context and ensure git commands run in request context (#17868) 2022-01-19 23:26:57 +00:00
appstate
asymkey Collaborator trust model should trust collaborators (#18539) 2022-02-02 11:10:06 +01:00
auth Attempt to fix the webauthn migration again - part 3 (#18770) 2022-02-16 21:03:58 +00:00
avatars format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
db Move deletebeans into models/db (#18781) 2022-02-17 16:37:48 +08:00
fixtures Set is_empty in fixtures (#18869) 2022-02-26 01:15:25 -05:00
issues Show fullname on issue edits and gpg/ssh signing info (#18827) 2022-02-20 19:50:11 +00:00
migrations Fix page and missing return on unadopted repos API (#18848) 2022-02-27 20:17:42 +08:00
perm Team permission allow different unit has different permission (#17811) 2022-01-05 11:37:00 +08:00
repo Avoid database lookups for DescriptionHTML (#18924) 2022-02-27 18:51:34 +01:00
unit Let MinUnitAccessMode return correct perm (#18675) 2022-02-08 21:16:17 +00:00
unittest Add separate SSH_USER config option (#17584) 2022-02-07 16:56:45 -05:00
user Don't update email for organisation (#18905) 2022-02-26 10:38:08 +08:00
webhook Add packagist webhook (#18224) 2022-01-23 21:46:30 +08:00
access.go Team permission allow different unit has different permission (#17811) 2022-01-05 11:37:00 +08:00
access_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
action.go Prevent hang in git cat-file if repository is not a valid repository and other fixes (#17991) 2021-12-16 19:01:14 +00:00
action_list.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
action_test.go Some repository refactors (#17950) 2021-12-12 23:48:20 +08:00
branches.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
branches_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
commit.go Collaborator trust model should trust collaborators (#18539) 2022-02-02 11:10:06 +01:00
commit_status.go Add missing X-Total-Count and fix some related bugs (#17968) 2021-12-15 13:39:34 +08:00
commit_status_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
consistency.go format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
consistency_test.go A better go code formatter, and now make fmt can run in Windows (#17684) 2021-11-17 20:34:35 +08:00
engine_test.go Refactor install page (db type) (#17919) 2021-12-07 13:44:08 +08:00
error.go Some repository refactors (#17950) 2021-12-12 23:48:20 +08:00
fixture_generation.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
fixture_test.go Decouple unit test code from business code (#17623) 2021-11-12 22:36:47 +08:00
helper.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
helper_directory.go
helper_environment.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue.go add test coverage for original author conversion during migrations (#18506) 2022-02-01 13:20:28 -05:00
issue_assignees.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue_assignees_test.go Move user related model into models/user (#17781) 2021-11-24 17:49:20 +08:00
issue_comment.go add test coverage for original author conversion during migrations (#18506) 2022-02-01 13:20:28 -05:00
issue_comment_list.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue_comment_test.go Propagate context and ensure git commands run in request context (#17868) 2022-01-19 23:26:57 +00:00
issue_dependency.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue_dependency_test.go Move user related model into models/user (#17781) 2021-11-24 17:49:20 +08:00
issue_label.go Be more lenient with label colors (#17752) 2022-02-07 21:21:02 +00:00
issue_label_test.go Be more lenient with label colors (#17752) 2022-02-07 21:21:02 +00:00
issue_list.go Use conditions but not repo ids as query condition (#16839) 2021-12-29 21:02:12 +08:00
issue_list_test.go Decouple unit test, remove intermediate unittestbridge package (#17662) 2021-11-16 16:53:21 +08:00
issue_lock.go Fix CheckRepoStats and reuse it during migration (#18264) 2022-01-17 19:31:58 +01:00
issue_milestone.go Only view milestones from current repo (#18414) 2022-01-26 20:01:35 +00:00
issue_milestone_test.go Fix CheckRepoStats and reuse it during migration (#18264) 2022-01-17 19:31:58 +01:00
issue_reaction.go add test coverage for original author conversion during migrations (#18506) 2022-02-01 13:20:28 -05:00
issue_reaction_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue_stopwatch.go Fix display time of milestones (#18753) 2022-02-16 00:50:10 +08:00
issue_stopwatch_test.go Move user related model into models/user (#17781) 2021-11-24 17:49:20 +08:00
issue_test.go Automatically pause queue if index service is unavailable (#15066) 2022-01-27 10:30:51 +02:00
issue_tracked_time.go Fix display time of milestones (#18753) 2022-02-16 00:50:10 +08:00
issue_tracked_time_test.go Fix display time of milestones (#18753) 2022-02-16 00:50:10 +08:00
issue_user.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue_user_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
issue_watch.go Add missing X-Total-Count and fix some related bugs (#17968) 2021-12-15 13:39:34 +08:00
issue_watch_test.go A better go code formatter, and now make fmt can run in Windows (#17684) 2021-11-17 20:34:35 +08:00
issue_xref.go Lock gofumpt to v0.3.0 and run it (#18866) 2022-02-23 20:16:07 +00:00
issue_xref_test.go Propagate context and ensure git commands run in request context (#17868) 2022-01-19 23:26:57 +00:00
lfs.go format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
lfs_lock.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
main_test.go Move keys to models/asymkey (#17917) 2021-12-10 16:14:24 +08:00
migrate.go remove redundant call to UpdateRepoStats during migration (#18591) 2022-02-07 10:43:08 -05:00
migrate_test.go remove redundant call to UpdateRepoStats during migration (#18591) 2022-02-07 10:43:08 -05:00
notification.go Fix various typos (#18219) 2022-01-10 17:32:37 +08:00
notification_test.go Move user related model into models/user (#17781) 2021-11-24 17:49:20 +08:00
org.go Move deletebeans into models/db (#18781) 2022-02-17 16:37:48 +08:00
org_team.go Add GetUserTeams (#18499) 2022-02-01 14:09:24 -05:00
org_team_test.go Add GetUserTeams (#18499) 2022-02-01 14:09:24 -05:00
org_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
project.go Remove NewSession method from db.Engine interface (#17577) 2021-11-21 23:41:00 +08:00
project_board.go Support sorting for project board issuses (#17152) 2021-12-08 14:57:18 +08:00
project_issue.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
project_test.go Decouple unit test code from business code (#17623) 2021-11-12 22:36:47 +08:00
protected_tag.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
protected_tag_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
pull.go Propagate context and ensure git commands run in request context (#17868) 2022-01-19 23:26:57 +00:00
pull_list.go Don't delete branch if other PRs with this branch are open (#18164) 2022-01-03 20:45:58 +01:00
pull_test.go Don't delete branch if other PRs with this branch are open (#18164) 2022-01-03 20:45:58 +01:00
release.go add test coverage for original author conversion during migrations (#18506) 2022-02-01 13:20:28 -05:00
repo.go Update assignees check to include any writing team and change org sidebar (#18680) 2022-02-23 22:07:05 +00:00
repo_activity.go Propagate context and ensure git commands run in request context (#17868) 2022-01-19 23:26:57 +00:00
repo_collaboration.go Some repository refactors (#17950) 2021-12-12 23:48:20 +08:00
repo_collaboration_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
repo_generate.go Some repository refactors (#17950) 2021-12-12 23:48:20 +08:00
repo_generate_test.go
repo_list.go Allow to filter repositories by language in explore, user and organization repositories lists (#18430) 2022-01-28 13:29:04 +02:00
repo_list_test.go Decouple unit test, remove intermediate unittestbridge package (#17662) 2021-11-16 16:53:21 +08:00
repo_permission.go Team permission allow different unit has different permission (#17811) 2022-01-05 11:37:00 +08:00
repo_permission_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
repo_test.go Fix CheckRepoStats and reuse it during migration (#18264) 2022-01-17 19:31:58 +01:00
repo_transfer.go Some repository refactors (#17950) 2021-12-12 23:48:20 +08:00
repo_transfer_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
review.go add test coverage for original author conversion during migrations (#18506) 2022-02-01 13:20:28 -05:00
review_test.go format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
statistic.go Refactor auth package (#17962) 2022-01-02 21:12:35 +08:00
task.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
token.go Use base32 for 2FA scratch token (#18384) 2022-01-26 12:10:10 +08:00
token_test.go A better go code formatter, and now make fmt can run in Windows (#17684) 2021-11-17 20:34:35 +08:00
upload.go Remove NewSession method from db.Engine interface (#17577) 2021-11-21 23:41:00 +08:00
user.go Move deletebeans into models/db (#18781) 2022-02-17 16:37:48 +08:00
user_heatmap.go Move user related model into models/user (#17781) 2021-11-24 17:49:20 +08:00
user_heatmap_test.go Move user related model into models/user (#17781) 2021-11-24 17:49:20 +08:00
user_test.go Use conditions but not repo ids as query condition (#16839) 2021-12-29 21:02:12 +08:00
userlist.go Move more model into models/user (#17826) 2021-11-28 22:11:58 +08:00
userlist_test.go Move more model into models/user (#17826) 2021-11-28 22:11:58 +08:00