diff options
author | Yorick Peterse <yorickpeterse@gmail.com> | 2017-09-11 16:05:14 +0200 |
---|---|---|
committer | Yorick Peterse <yorickpeterse@gmail.com> | 2017-09-11 16:18:59 +0200 |
commit | 615ba0071a8bcd3da93f6c27e45128af865cc7bb (patch) | |
tree | ae9b090f896889e01ce9e0947456e59b361e2c52 | |
parent | 5cc140b202a0fc9bf2056b481c977bbcf9255919 (diff) | |
download | gitlab-ce-dashboards-projects-controller.tar.gz |
Eager load namespace owners for project dashboardsdashboards-projects-controller
This solves an N+1 query problem where we'd run multiple queries when
getting the namespace owners of the displayed projects.
-rw-r--r-- | app/controllers/dashboard/projects_controller.rb | 2 | ||||
-rw-r--r-- | changelogs/unreleased/dashboards-projects-controller.yml | 5 |
2 files changed, 6 insertions, 1 deletions
diff --git a/app/controllers/dashboard/projects_controller.rb b/app/controllers/dashboard/projects_controller.rb index f71ab702e71..cd94a36a6e7 100644 --- a/app/controllers/dashboard/projects_controller.rb +++ b/app/controllers/dashboard/projects_controller.rb @@ -48,7 +48,7 @@ class Dashboard::ProjectsController < Dashboard::ApplicationController ProjectsFinder .new(params: finder_params, current_user: current_user) .execute - .includes(:route, :creator, namespace: :route) + .includes(:route, :creator, namespace: [:route, :owner]) end def load_events diff --git a/changelogs/unreleased/dashboards-projects-controller.yml b/changelogs/unreleased/dashboards-projects-controller.yml new file mode 100644 index 00000000000..8b350f70a80 --- /dev/null +++ b/changelogs/unreleased/dashboards-projects-controller.yml @@ -0,0 +1,5 @@ +--- +title: Eager load namespace owners for project dashboards +merge_request: +author: +type: other |