aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2018-01-12 10:02:11 +0100
committerChocobozzz <me@florianbigard.com>2018-01-12 10:02:11 +0100
commit6502c3d43e512e968ad49f5a3bc9abc302471e18 (patch)
tree32f7a95080a7fa17198dc2556226dea5eb4c93b8 /server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts
parent9a8cbd8278a37ee414f17d7de7c7281123484ba1 (diff)
downloadPeerTube-6502c3d43e512e968ad49f5a3bc9abc302471e18.tar.gz
PeerTube-6502c3d43e512e968ad49f5a3bc9abc302471e18.tar.zst
PeerTube-6502c3d43e512e968ad49f5a3bc9abc302471e18.zip
Avoid making retried requests to dead followers
Diffstat (limited to 'server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts')
-rw-r--r--server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts7
1 files changed, 7 insertions, 0 deletions
diff --git a/server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts b/server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts
index 10423a7df..4459152db 100644
--- a/server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts
+++ b/server/lib/jobs/activitypub-http-job-scheduler/activitypub-http-job-scheduler.ts
@@ -4,6 +4,7 @@ import { logger } from '../../../helpers/logger'
4import { getServerActor } from '../../../helpers/utils' 4import { getServerActor } from '../../../helpers/utils'
5import { ACTIVITY_PUB } from '../../../initializers' 5import { ACTIVITY_PUB } from '../../../initializers'
6import { ActorModel } from '../../../models/activitypub/actor' 6import { ActorModel } from '../../../models/activitypub/actor'
7import { ActorFollowModel } from '../../../models/activitypub/actor-follow'
7import { JobHandler, JobScheduler } from '../job-scheduler' 8import { JobHandler, JobScheduler } from '../job-scheduler'
8 9
9import * as activitypubHttpBroadcastHandler from './activitypub-http-broadcast-handler' 10import * as activitypubHttpBroadcastHandler from './activitypub-http-broadcast-handler'
@@ -35,6 +36,12 @@ async function maybeRetryRequestLater (err: Error, payload: ActivityPubHttpPaylo
35 if (attemptNumber < ACTIVITY_PUB.MAX_HTTP_ATTEMPT) { 36 if (attemptNumber < ACTIVITY_PUB.MAX_HTTP_ATTEMPT) {
36 logger.debug('Retrying request to %s (attempt %d/%d).', uri, attemptNumber, ACTIVITY_PUB.MAX_HTTP_ATTEMPT, err) 37 logger.debug('Retrying request to %s (attempt %d/%d).', uri, attemptNumber, ACTIVITY_PUB.MAX_HTTP_ATTEMPT, err)
37 38
39 const actor = await ActorFollowModel.loadByFollowerInbox(uri, undefined)
40 if (!actor) {
41 logger.debug('Actor %s is not a follower, do not retry the request.', uri)
42 return false
43 }
44
38 const newPayload = Object.assign(payload, { 45 const newPayload = Object.assign(payload, {
39 uris: [ uri ], 46 uris: [ uri ],
40 attemptNumber 47 attemptNumber