diff options
author | lambda <pleromagit@rogerbraun.net> | 2019-02-11 08:07:39 +0000 |
---|---|---|
committer | lambda <pleromagit@rogerbraun.net> | 2019-02-11 08:07:39 +0000 |
commit | d53e36bf1e004177277cb5917bb290d512278aa9 (patch) | |
tree | 96ae3dd7387dc70db67cd79fb99ee6081cad23ce /lib/pleroma/web | |
parent | 06c4935c11fc58f5ede18706bc46dcc502e64052 (diff) | |
download | pleroma-d53e36bf1e004177277cb5917bb290d512278aa9.tar.gz |
Revert "Merge branch 'object-creation' into 'develop'"
This reverts merge request !802
Diffstat (limited to 'lib/pleroma/web')
-rw-r--r-- | lib/pleroma/web/activity_pub/utils.ex | 10 | ||||
-rw-r--r-- | lib/pleroma/web/twitter_api/twitter_api.ex | 12 |
2 files changed, 18 insertions, 4 deletions
diff --git a/lib/pleroma/web/activity_pub/utils.ex b/lib/pleroma/web/activity_pub/utils.ex index da6cca4dd..964e11c9d 100644 --- a/lib/pleroma/web/activity_pub/utils.ex +++ b/lib/pleroma/web/activity_pub/utils.ex @@ -142,8 +142,14 @@ defmodule Pleroma.Web.ActivityPub.Utils do context = context || generate_id("contexts") changeset = Object.context_mapping(context) - with {:ok, object} <- Object.insert_or_get(changeset) do - object + case Repo.insert(changeset) do + {:ok, object} -> + object + + # 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) end end diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex index 162beb9be..db521a3ad 100644 --- a/lib/pleroma/web/twitter_api/twitter_api.ex +++ b/lib/pleroma/web/twitter_api/twitter_api.ex @@ -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 |