diff options
author | Douwe Maan <douwe@selenight.nl> | 2018-12-28 14:19:55 +0300 |
---|---|---|
committer | Douwe Maan <douwe@selenight.nl> | 2019-01-02 17:31:35 +0300 |
commit | e893f560e01c0039a4fc4c6c93be8e82b5888b3b (patch) | |
tree | 03d8014fb8b3ad9906ccd90b25507bca629e7e58 /app/models | |
parent | 7388a911aa61ad3a9fb061517e22e74427155b5e (diff) |
Remove unnecessary double caching (in hash and request store)
Diffstat (limited to 'app/models')
-rw-r--r-- | app/models/project.rb | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/app/models/project.rb b/app/models/project.rb index 162222f2131..a1a8ae7fc54 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1932,23 +1932,11 @@ class Project < ActiveRecord::Base end def any_branch_allows_collaboration?(user) - return false unless user - fetch_branch_allows_collaboration(user) end def branch_allows_collaboration?(user, branch_name) - return false unless user - - cache_key = "user:#{user.id}:#{branch_name}:branch_allows_push" - - memoized_results = strong_memoize(:branch_allows_collaboration) do - Hash.new do |result, cache_key| - result[cache_key] = fetch_branch_allows_collaboration(user, branch_name) - end - end - - memoized_results[cache_key] + fetch_branch_allows_collaboration(user, branch_name) end def licensed_features @@ -2153,6 +2141,8 @@ class Project < ActiveRecord::Base end def fetch_branch_allows_collaboration(user, branch_name = nil) + return false unless user + Gitlab::SafeRequestStore.fetch("project-#{id}:branch-#{branch_name}:user-#{user.id}:branch_allows_collaboration") do next false if empty_repo? |