summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2017-09-11 16:05:14 +0200
committerYorick Peterse <yorickpeterse@gmail.com>2017-09-11 16:18:59 +0200
commit615ba0071a8bcd3da93f6c27e45128af865cc7bb (patch)
treeae9b090f896889e01ce9e0947456e59b361e2c52
parent5cc140b202a0fc9bf2056b481c977bbcf9255919 (diff)
downloadgitlab-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.rb2
-rw-r--r--changelogs/unreleased/dashboards-projects-controller.yml5
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