Thanks you rinpatch, very cool

This commit is contained in:
rinpatch 2019-01-16 10:35:06 +03:00
parent 0039d45b5b
commit a76793006b

View File

@ -2,10 +2,17 @@ defmodule Pleroma.Web.Metadata do
alias Phoenix.HTML alias Phoenix.HTML
@parsers Pleroma.Config.get([:metadata, :providers], []) @parsers Pleroma.Config.get([:metadata, :providers], [])
def get_cached_tags(%{activity: activity, user: user} = params) do
# We don't need to use the both activity and a user since the object can't change it's content
key = "#{:erlang.term_to_binary(user)}#{activity.data["id"]}"
Cachex.fetch!(:metadata_cache, key, fn _key ->
{:commit, build_tags(params)}
end)
end
def get_cached_tags(%{user: user} = params) do def get_cached_tags(%{user: user} = params) do
# I am unsure how well ETS works with big keys # I am unsure how well ETS works with big keys
# We don't need to use the both activity and a user since the object can't change it's content
key = :erlang.term_to_binary(user) key = :erlang.term_to_binary(user)
Cachex.fetch!(:metadata_cache, key, fn _key -> Cachex.fetch!(:metadata_cache, key, fn _key ->