summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaksim Pechnikov <parallel588@gmail.com>2020-06-04 17:01:45 +0300
committerMaksim Pechnikov <parallel588@gmail.com>2020-06-04 17:01:45 +0300
commit03369b5c4a2c91b26059240cfa076da4885e86e7 (patch)
tree1b07732deacea81b6a775f789b0ce5210acb6d5f
parent3fd27954122655f7a18bb75f35ad129024796010 (diff)
fix cache keys
-rw-r--r--lib/pleroma/web/activity_pub/activity_pub.ex12
-rw-r--r--lib/pleroma/web/media_proxy/invalidation.ex2
-rw-r--r--lib/pleroma/web/media_proxy/media_proxy.ex11
3 files changed, 12 insertions, 13 deletions
diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex
index c49972e8d..52d310dda 100644
--- a/lib/pleroma/web/activity_pub/activity_pub.ex
+++ b/lib/pleroma/web/activity_pub/activity_pub.ex
@@ -92,14 +92,12 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
def maybe_remove_mediaproxy_invalidation(true, %{
"object" => %{"attachment" => [_ | _] = attachments}
}) do
- Task.start(fn ->
- attachments
- |> Enum.flat_map(fn
- %{"url" => urls} -> Enum.map(urls, &MediaProxy.url(&1["href"]))
- _ -> []
- end)
- |> MediaProxy.remove_from_deleted_urls()
+ attachments
+ |> Enum.flat_map(fn
+ %{"url" => urls} -> Enum.map(urls, & &1["href"])
+ _ -> []
end)
+ |> MediaProxy.remove_from_deleted_urls()
:ok
end
diff --git a/lib/pleroma/web/media_proxy/invalidation.ex b/lib/pleroma/web/media_proxy/invalidation.ex
index 162d20262..fac731c5c 100644
--- a/lib/pleroma/web/media_proxy/invalidation.ex
+++ b/lib/pleroma/web/media_proxy/invalidation.ex
@@ -28,7 +28,7 @@ defmodule Pleroma.Web.MediaProxy.Invalidation do
provider.purge(urls, Config.get(provider))
end
- defp prepare_urls(urls) do
+ def prepare_urls(urls) do
urls
|> List.wrap()
|> Enum.map(&MediaProxy.url(&1))
diff --git a/lib/pleroma/web/media_proxy/media_proxy.ex b/lib/pleroma/web/media_proxy/media_proxy.ex
index b3988b946..7b8e7e823 100644
--- a/lib/pleroma/web/media_proxy/media_proxy.ex
+++ b/lib/pleroma/web/media_proxy/media_proxy.ex
@@ -6,30 +6,31 @@ defmodule Pleroma.Web.MediaProxy do
alias Pleroma.Config
alias Pleroma.Upload
alias Pleroma.Web
+ alias Pleroma.Web.MediaProxy.Invalidation
@base64_opts [padding: false]
@spec in_deleted_urls(String.t()) :: boolean()
- def in_deleted_urls(url), do: elem(Cachex.exists?(:deleted_urls_cache, url), 1)
+ def in_deleted_urls(url), do: elem(Cachex.exists?(:deleted_urls_cache, url(url)), 1)
def remove_from_deleted_urls(urls) when is_list(urls) do
Cachex.execute!(:deleted_urls_cache, fn cache ->
- Enum.each(urls, &Cachex.del(cache, &1))
+ Enum.each(Invalidation.prepare_urls(urls), &Cachex.del(cache, &1))
end)
end
def remove_from_deleted_urls(url) when is_binary(url) do
- Cachex.del(:deleted_urls_cache, url)
+ Cachex.del(:deleted_urls_cache, url(url))
end
def put_in_deleted_urls(urls) when is_list(urls) do
Cachex.execute!(:deleted_urls_cache, fn cache ->
- Enum.each(urls, &Cachex.put(cache, &1, true))
+ Enum.each(Invalidation.prepare_urls(urls), &Cachex.put(cache, &1, true))
end)
end
def put_in_deleted_urls(url) when is_binary(url) do
- Cachex.put(:deleted_urls_cache, url, true)
+ Cachex.put(:deleted_urls_cache, url(url), true)
end
def url(url) when is_nil(url) or url == "", do: nil