Commit af49c111 authored by lain's avatar lain
Browse files

Work around upserting problems in context mapping.

parent 45c75198
......@@ -43,6 +43,6 @@ def get_cached_by_ap_id(ap_id) do
end
def context_mapping(context) do
%Object{data: %{"id" => context}}
Object.change(%Object{}, %{data: %{"id" => context}})
end
end
......@@ -283,10 +283,14 @@ defp make_date do
def context_to_conversation_id(context) do
with %Object{id: id} <- Object.get_cached_by_ap_id(context) do
id
else _e ->
changeset = Object.context_mapping(context)
{:ok, %{id: id}} = Repo.insert(changeset)
id
else _e ->
changeset = Object.context_mapping(context)
case Repo.insert(changeset) do
{:ok, %{id: id}} -> id
# This should be solved by an upsert, but it seems ecto
# has problems accessing the constraint inside the jsonb.
{:error, _} -> Object.get_cached_by_ap_id(context).id
end
end
end
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment