Fix inconsistency in error handling when removing a status (#17974)
Not completely sure this could actually have any ill effect, but if `RemoveStatusService` fails to acquire a lock in an `ActivityPub::ProcessingWorker` job processing a `Delete`, the status is currently discarded and causes a job failure but the next time the job is attempted, it will skip deleting the status due to it being discarded. This commit makes the behavior of `RemoveStatusService` a bit more consistent in case of failure to acquire the lock.gh/stable
parent
62c6e12fa5
commit
abb11778d7
|
@ -17,10 +17,10 @@ class RemoveStatusService < BaseService
|
|||
@account = status.account
|
||||
@options = options
|
||||
|
||||
@status.discard
|
||||
|
||||
RedisLock.acquire(lock_options) do |lock|
|
||||
if lock.acquired?
|
||||
@status.discard
|
||||
|
||||
remove_from_self if @account.local?
|
||||
remove_from_followers
|
||||
remove_from_lists
|
||||
|
|
Reference in New Issue