Fix database cross-join in `lib/gitlab/application_context.rb`
Description
The following code snippet from lib/gitlab/application_context.rb
creates a cross-database join between projects
and ci_runner_projects
:
def runner_project
strong_memoize(:runner_project) do
next unless runner&.project_type?
projects = runner.projects.take(2)
projects.first if projects.one?
end
end
Proposed solution
From !71545 (comment 693917933):
runner_projects = runner.runner_projects.take(2)
runner_projects.first.project if runner_projects.one?
Edited by Avielle Wolfe