diff options
author | Sean McGivern <sean@mcgivern.me.uk> | 2018-03-08 13:33:59 +0300 |
---|---|---|
committer | Sean McGivern <sean@mcgivern.me.uk> | 2018-03-08 13:33:59 +0300 |
commit | 15b4e9815e88de7a1ef0eda1603685c49ae80aa1 (patch) | |
tree | 7344414579e5724ee8c5c82a82f1cd48dd77ae35 /app/models/repository.rb | |
parent | 0a6c82ea52ae1b1d62003dd303c687cef4508952 (diff) | |
parent | 611929eb96c0ee9f07d98163d0610325d8a2a322 (diff) |
Merge branch 'sh-remove-double-caching-repo-empty' into 'master'
Remove double caching of Repository#empty?
Closes #43882
See merge request gitlab-org/gitlab-ce!17588
Diffstat (limited to 'app/models/repository.rb')
-rw-r--r-- | app/models/repository.rb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/app/models/repository.rb b/app/models/repository.rb index 461dfbec2bc..386fd0b1c9a 100644 --- a/app/models/repository.rb +++ b/app/models/repository.rb @@ -35,7 +35,7 @@ class Repository CACHED_METHODS = %i(size commit_count rendered_readme contribution_guide changelog license_blob license_key gitignore koding_yml gitlab_ci_yml branch_names tag_names branch_count - tag_count avatar exists? empty? root_ref has_visible_content? + tag_count avatar exists? root_ref has_visible_content? issue_template_names merge_request_template_names).freeze # Methods that use cache_method but only memoize the value @@ -360,7 +360,7 @@ class Repository def expire_emptiness_caches return unless empty? - expire_method_caches(%i(empty? has_visible_content?)) + expire_method_caches(%i(has_visible_content?)) end def lookup_cache @@ -506,12 +506,14 @@ class Repository end cache_method :exists? + # We don't need to cache the output of this method because both exists? and + # has_visible_content? are already memoized and cached. There's no guarantee + # that the values are expired and loaded atomically. def empty? return true unless exists? !has_visible_content? end - cache_method :empty? # The size of this repository in megabytes. def size |