Merge branch 'feature/jobs' into 'develop'
[akkoma] / lib / pleroma / web / twitter_api / twitter_api.ex
index 162beb9be06b7ffb7f95b51efb434ed3d5d1871a..db521a3ad09599568d52dc597c2b1e469e8dc6e4 100644 (file)
@@ -310,8 +310,16 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do
     else
       _e ->
         changeset = Object.context_mapping(context)
-        {:ok, object} = Object.insert_or_get(changeset)
-        object.id
+
+        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