diff options
author | Rémy Coutable <remy@rymai.me> | 2018-05-29 18:39:03 +0200 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2018-06-01 14:01:27 +0200 |
commit | 4eda09e3fbfe82fd1467e97cbc5bd085b91f257d (patch) | |
tree | db0e8fbd141ff3252df450f60b9f1f5636c68489 /app/models/concerns | |
parent | a886532cc04bfa7ec6885ea883889f6d138961bd (diff) | |
download | gitlab-ce-4eda09e3fbfe82fd1467e97cbc5bd085b91f257d.tar.gz |
Use RequestStore in CacheableAttributes.cached for greater performance
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'app/models/concerns')
-rw-r--r-- | app/models/concerns/cacheable_attributes.rb | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/app/models/concerns/cacheable_attributes.rb b/app/models/concerns/cacheable_attributes.rb index dd4fccc811d..d58d7165969 100644 --- a/app/models/concerns/cacheable_attributes.rb +++ b/app/models/concerns/cacheable_attributes.rb @@ -25,7 +25,11 @@ module CacheableAttributes end def cached - retrieve_from_cache + if RequestStore.active? + RequestStore[:"#{name}_cached_attributes"] ||= retrieve_from_cache + else + retrieve_from_cache + end end def retrieve_from_cache |