instance method
read_multi_entries
Ruby on Rails edge
Since v5.2.8.1 Private — implementation detail, not part of the public APISignature
read_multi_entries(names, **options)
No documentation comment.
Parameters
-
namesreq -
optionskeyrest
Source
# File activesupport/lib/active_support/cache/redis_cache_store.rb, line 338
def read_multi_entries(names, **options)
options = merged_options(options)
return {} if names == []
raw = options&.fetch(:raw, false)
keys = names.map { |name| normalize_key(name, options) }
keys_index = keys.each_with_index.to_h
results = {}
redis.nodes_for(keys).each do |node, key_subset|
failsafe(:read_multi_entries) do
node.call("mget", *key_subset).each_with_index do |value, index|
if value
results[names[keys_index[key_subset[index]]]] = value
end
end
end
end
results.transform_values! { |value| deserialize_entry(value, raw: raw) }
results.reject! do |name, entry|
entry.nil? || entry.expired? || entry.mismatched?(normalize_version(name, options))
end
results.compact!
results.transform_values! { |entry| entry&.value }
results
end
Defined in activesupport/lib/active_support/cache/redis_cache_store.rb line 338
· View on GitHub
· Improve this page
· Find usages on GitHub
Defined in ActiveSupport::Cache::RedisCacheStore