summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStan Hu <stanhu@gmail.com>2016-07-28 18:28:14 -0700
committerStan Hu <stanhu@gmail.com>2016-07-28 18:33:54 -0700
commit02d1df3f93b96754d18b8ff3566279bd8a483ea1 (patch)
tree0ecb2edd5aa3318733123b0913d92995269150b8
parenta330b29b701b2de49206f864e654a01ad1a031c7 (diff)
downloadgitlab-ce-use-request-store-store.tar.gz
Fix memory leak with use of RequestStoreuse-request-store-store
Use RequestStore.store to ensure objects are cleared out properly via `RequestStore#clear!`
-rw-r--r--CHANGELOG1
-rw-r--r--lib/banzai/filter/abstract_reference_filter.rb6
-rw-r--r--lib/banzai/filter/external_issue_reference_filter.rb2
-rw-r--r--lib/banzai/reference_parser/base_parser.rb2
4 files changed, 6 insertions, 5 deletions
diff --git a/CHANGELOG b/CHANGELOG
index 8759bb04dec..b287d2826f7 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -30,6 +30,7 @@ v 8.11.0 (unreleased)
- Change requests_profiles resource constraint to catch virtually any file
v 8.10.3 (unreleased)
+ - Fix memory leak with use of RequestStore
v 8.10.2
- User can now search branches by name. !5144
diff --git a/lib/banzai/filter/abstract_reference_filter.rb b/lib/banzai/filter/abstract_reference_filter.rb
index d77a5e3ff09..2c78e2241c9 100644
--- a/lib/banzai/filter/abstract_reference_filter.rb
+++ b/lib/banzai/filter/abstract_reference_filter.rb
@@ -263,17 +263,17 @@ module Banzai
private
def project_refs_cache
- RequestStore[:banzai_project_refs] ||= {}
+ RequestStore.store[:banzai_project_refs] ||= {}
end
def find_objects_cache
- RequestStore[:banzai_find_objects_cache] ||= Hash.new do |hash, key|
+ RequestStore.store[:banzai_find_objects_cache] ||= Hash.new do |hash, key|
hash[key] = Hash.new { |h, k| h[k] = {} }
end
end
def url_for_object_cache
- RequestStore[:banzai_url_for_object] ||= Hash.new do |hash, key|
+ RequestStore.store[:banzai_url_for_object] ||= Hash.new do |hash, key|
hash[key] = Hash.new { |h, k| h[k] = {} }
end
end
diff --git a/lib/banzai/filter/external_issue_reference_filter.rb b/lib/banzai/filter/external_issue_reference_filter.rb
index eaa702952cc..72106cf9051 100644
--- a/lib/banzai/filter/external_issue_reference_filter.rb
+++ b/lib/banzai/filter/external_issue_reference_filter.rb
@@ -93,7 +93,7 @@ module Banzai
private
def default_issues_tracker_cache
- RequestStore[:banzai_default_issues_tracker_cache] ||= {}
+ RequestStore.store[:banzai_default_issues_tracker_cache] ||= {}
end
end
end
diff --git a/lib/banzai/reference_parser/base_parser.rb b/lib/banzai/reference_parser/base_parser.rb
index 6cf218aaa0d..5870b80cea3 100644
--- a/lib/banzai/reference_parser/base_parser.rb
+++ b/lib/banzai/reference_parser/base_parser.rb
@@ -227,7 +227,7 @@ module Banzai
end
def collection_cache
- RequestStore[:banzai_collection_cache] ||= Hash.new do |hash, key|
+ RequestStore.store[:banzai_collection_cache] ||= Hash.new do |hash, key|
hash[key] = {}
end
end