Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYorick Peterse <yorickpeterse@gmail.com>2017-06-01 15:21:43 +0300
committerYorick Peterse <yorickpeterse@gmail.com>2017-06-01 15:21:43 +0300
commitc72abcefe79dd906cbbf0088b442a8979e9fc746 (patch)
tree53761819c5579b21d462ffff956f219d54a432c0 /app/models
parent358662a9f7474b41755ec0128efaaa8bef3cb249 (diff)
parent7f73f440f9a4a8761c083a6781d3c4015228d9b9 (diff)
Merge branch 'fix-n-plus-one-queries-for-user-access' into 'master'
Fix N+1 queries for non-members in comment threads See merge request !11827
Diffstat (limited to 'app/models')
-rw-r--r--app/models/project_team.rb9
1 files changed, 8 insertions, 1 deletions
diff --git a/app/models/project_team.rb b/app/models/project_team.rb
index 543b9b293e0..e1cc56551ba 100644
--- a/app/models/project_team.rb
+++ b/app/models/project_team.rb
@@ -167,7 +167,7 @@ class ProjectTeam
access = RequestStore.store[key]
end
- # Lookup only the IDs we need
+ # Look up only the IDs we need
user_ids = user_ids - access.keys
return access if user_ids.empty?
@@ -178,6 +178,13 @@ class ProjectTeam
maximum(:access_level)
access.merge!(users_access)
+
+ missing_user_ids = user_ids - users_access.keys
+
+ missing_user_ids.each do |user_id|
+ access[user_id] = Gitlab::Access::NO_ACCESS
+ end
+
access
end