Prevent multiple handlers for Delete of Actor from running (#9292)
This commit is contained in:
@@ -129,4 +129,10 @@ class ActivityPub::Activity
|
||||
::FetchRemoteStatusService.new.call(@object['url'])
|
||||
end
|
||||
end
|
||||
|
||||
def lock_or_return(key, expire_after = 7.days.seconds)
|
||||
yield if redis.set(key, true, nx: true, ex: expire_after)
|
||||
ensure
|
||||
redis.del(key)
|
||||
end
|
||||
end
|
||||
|
Reference in New Issue
Block a user