summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@gitlab.com>2017-07-11 17:11:41 +0100
committerSean McGivern <sean@gitlab.com>2017-07-19 10:21:18 +0100
commitb3a588bccaaa078a81e8ce322d75ee167f642e13 (patch)
tree1b17451bbca296708e4e70b0539ea0bc3085d6c1
parentc57ae83dcfaeff9c358b5f896202e04a86ad6ef3 (diff)
downloadgitlab-ce-b3a588bccaaa078a81e8ce322d75ee167f642e13.tar.gz
Fix issuable state caching
We were including controller params in the cache key, so the key for the header didn't match the one for the list itself!
-rw-r--r--app/controllers/concerns/issuable_collections.rb8
-rw-r--r--app/finders/issuable_finder.rb2
2 files changed, 3 insertions, 7 deletions
diff --git a/app/controllers/concerns/issuable_collections.rb b/app/controllers/concerns/issuable_collections.rb
index e18778cdf80..b43b2c5621f 100644
--- a/app/controllers/concerns/issuable_collections.rb
+++ b/app/controllers/concerns/issuable_collections.rb
@@ -32,10 +32,10 @@ module IssuableCollections
def filter_params
set_sort_order_from_cookie
- set_default_scope
set_default_state
- @filter_params = params.dup
+ # Skip irrelevant Rails routing params
+ @filter_params = params.dup.except(:controller, :action, :namespace_id)
@filter_params[:sort] ||= default_sort_order
@sort = @filter_params[:sort]
@@ -55,10 +55,6 @@ module IssuableCollections
@filter_params
end
- def set_default_scope
- params[:scope] = 'all' if params[:scope].blank?
- end
-
def set_default_state
params[:state] = 'opened' if params[:state].blank?
end
diff --git a/app/finders/issuable_finder.rb b/app/finders/issuable_finder.rb
index 1585c11ab3a..d3010eff262 100644
--- a/app/finders/issuable_finder.rb
+++ b/app/finders/issuable_finder.rb
@@ -22,7 +22,7 @@ class IssuableFinder
include CreatedAtFilter
NONE = '0'.freeze
- IRRELEVANT_PARAMS_FOR_CACHE_KEY = %i[utf8 sort page].freeze
+ IRRELEVANT_PARAMS_FOR_CACHE_KEY = %i[utf8 sort page state].freeze
attr_accessor :current_user, :params