Fix cache_collection crashing when given an empty collection (#15921)
* Fix cache_collection crashing when given an empty collection * Add tests
This commit is contained in:
@@ -31,7 +31,9 @@ module CacheConcern
|
||||
def cache_collection(raw, klass)
|
||||
return raw unless klass.respond_to?(:with_includes)
|
||||
|
||||
raw = raw.cache_ids.to_a if raw.is_a?(ActiveRecord::Relation)
|
||||
raw = raw.cache_ids.to_a if raw.is_a?(ActiveRecord::Relation)
|
||||
return [] if raw.empty?
|
||||
|
||||
cached_keys_with_value = Rails.cache.read_multi(*raw).transform_keys(&:id)
|
||||
uncached_ids = raw.map(&:id) - cached_keys_with_value.keys
|
||||
|
||||
|
@@ -16,7 +16,9 @@ class EntityCache
|
||||
end
|
||||
|
||||
def emoji(shortcodes, domain)
|
||||
shortcodes = Array(shortcodes)
|
||||
shortcodes = Array(shortcodes)
|
||||
return [] if shortcodes.empty?
|
||||
|
||||
cached = Rails.cache.read_multi(*shortcodes.map { |shortcode| to_key(:emoji, shortcode, domain) })
|
||||
uncached_ids = []
|
||||
|
||||
|
Reference in New Issue
Block a user