class ActiveSupport::Cache::MemoryStore

def write_entry(key, entry, **options)

def write_entry(key, entry, **options)
  payload = serialize_entry(entry, **options)
  synchronize do
    return false if options[:unless_exist] && exist?(key, namespace: nil)
    old_payload = @data[key]
    if old_payload
      @cache_size -= (old_payload.bytesize - payload.bytesize)
    else
      @cache_size += cached_size(key, payload)
    end
    @data[key] = payload
    prune(@max_size * 0.75, @max_prune_time) if @cache_size > @max_size
    true
  end
end