about summary refs log tree commit diff
path: root/app/workers/activitypub/delivery_worker.rb
diff options
context:
space:
mode:
authorThibG <thib@sitedethib.com>2019-05-23 15:00:30 +0200
committerEugen Rochko <eugen@zeonfederated.com>2019-05-23 15:00:30 +0200
commit9efcca3c543ec76e7fa86605b94aefb46a238cc6 (patch)
tree962c6a0ec9ca7586cabbc1bed66bd7446d99451b /app/workers/activitypub/delivery_worker.rb
parent9ddeb30f90f9402eb567c88354d4956fcfdf0361 (diff)
Retry ActivityPub inbox delivery on HTTP 401 and 408 errors (#10812)
HTTP 401 responses returned by Mastodon's inbox controller may
be temporary if, for instance, the requesting user's actor/key json
could not be retrieved in a timely fashion. This changes allow retries
instead of dropping the message entirely.

Also added HTTP 408 as that error is by nature temporary.
Diffstat (limited to 'app/workers/activitypub/delivery_worker.rb')
-rw-r--r--app/workers/activitypub/delivery_worker.rb2
1 files changed, 1 insertions, 1 deletions
diff --git a/app/workers/activitypub/delivery_worker.rb b/app/workers/activitypub/delivery_worker.rb
index f9c385ea3..5e4c391f0 100644
--- a/app/workers/activitypub/delivery_worker.rb
+++ b/app/workers/activitypub/delivery_worker.rb
@@ -51,7 +51,7 @@ class ActivityPub::DeliveryWorker
   end
 
   def response_error_unsalvageable?(response)
-    (400...500).cover?(response.code) && response.code != 429
+    (400...500).cover?(response.code) && ![401, 408, 429].include?(response.code)
   end
 
   def failure_tracker