aboutsummaryrefslogtreecommitdiffstats
path: root/activesupport/lib/active_support
diff options
context:
space:
mode:
authorGodfrey Chan <godfreykfc@gmail.com>2014-03-04 17:58:58 -0800
committerGodfrey Chan <godfreykfc@gmail.com>2014-03-04 17:58:58 -0800
commitccf8f27dddcc36fa5c91f614647e0b0bac861d83 (patch)
tree066275df7d4ce82bcc7901bdfb75bfc21cd74b08 /activesupport/lib/active_support
parent475c96589ca65282e1a61350271c2f83f0d4044f (diff)
downloadrails-ccf8f27dddcc36fa5c91f614647e0b0bac861d83.tar.gz
rails-ccf8f27dddcc36fa5c91f614647e0b0bac861d83.tar.bz2
rails-ccf8f27dddcc36fa5c91f614647e0b0bac861d83.zip
Revert "Merge pull request #14269 from arthurnn/expanded_key_array"
This reverts commit 475c96589ca65282e1a61350271c2f83f0d4044f, reversing changes made to 705915ab5cf24430892107764b0050c07e1df583. We decided that this is not worth busting everyone's cache as this seems like a very unlikely problem. The problem only occurs when the user is 1) not using a namespace, or 2) using the same namesapce for different *kinds* of cache items. The recommended "fix" is to put those cache items into their own namspace: id = 1 Rails.cache.fetch(id, namespace: "user"){ User.find(id) } ids = [1] Rails.cache.fetch(ids, namespace: "users"){ User.find(ids) } See the discussion on #14269 for details.
Diffstat (limited to 'activesupport/lib/active_support')
-rw-r--r--activesupport/lib/active_support/cache.rb7
1 files changed, 3 insertions, 4 deletions
diff --git a/activesupport/lib/active_support/cache.rb b/activesupport/lib/active_support/cache.rb
index f23f6f16d6..a627fa8651 100644
--- a/activesupport/lib/active_support/cache.rb
+++ b/activesupport/lib/active_support/cache.rb
@@ -511,7 +511,7 @@ module ActiveSupport
# called. If the key is a Hash, then keys will be sorted alphabetically.
def expanded_key(key) # :nodoc:
return key.cache_key.to_s if key.respond_to?(:cache_key)
- trailing_slash = false
+
case key
when Array
if key.size > 1
@@ -519,12 +519,11 @@ module ActiveSupport
else
key = key.first
end
- trailing_slash = true
when Hash
key = key.sort_by { |k,_| k.to_s }.collect{|k,v| "#{k}=#{v}"}
end
- key = key.to_param
- trailing_slash ? "#{key}/" : key
+
+ key.to_param
end
# Prefix a key with the namespace. Namespace and key will be delimited