Browse Source

Fix possible race condition when processing statuses (#10815)

pull/5/head
ThibG 7 years ago committed by Eugen Rochko
parent
commit
130fbf839b
  1. 6
      app/lib/activitypub/activity/create.rb

6
app/lib/activitypub/activity/create.rb

@ -267,7 +267,11 @@ class ActivityPub::Activity::Create < ActivityPub::Activity
def conversation_from_uri(uri)
return nil if uri.nil?
return Conversation.find_by(id: OStatus::TagManager.instance.unique_tag_to_local_id(uri, 'Conversation')) if OStatus::TagManager.instance.local_id?(uri)
Conversation.find_by(uri: uri) || Conversation.create(uri: uri)
begin
Conversation.find_or_create_by!(uri: uri)
rescue ActiveRecord::RecordInvalid, ActiveRecord::RecordNotUnique
retry
end
end
def visibility_from_audience

Loading…
Cancel
Save