diff options
author | Chocobozzz <me@florianbigard.com> | 2018-06-13 14:27:40 +0200 |
---|---|---|
committer | Chocobozzz <me@florianbigard.com> | 2018-06-13 14:27:40 +0200 |
commit | 90d4bb8125e80c8060416d4d135ddeaf0a622ede (patch) | |
tree | b3b7181329a08ecc930b54fe7b48095c4155393c /server/lib/activitypub/process/process-follow.ts | |
parent | 3cd0734fd9b0ff21aaef02317a874e8f1c06e027 (diff) | |
download | PeerTube-90d4bb8125e80c8060416d4d135ddeaf0a622ede.tar.gz PeerTube-90d4bb8125e80c8060416d4d135ddeaf0a622ede.tar.zst PeerTube-90d4bb8125e80c8060416d4d135ddeaf0a622ede.zip |
Refractor retry transaction function
Diffstat (limited to 'server/lib/activitypub/process/process-follow.ts')
-rw-r--r-- | server/lib/activitypub/process/process-follow.ts | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/server/lib/activitypub/process/process-follow.ts b/server/lib/activitypub/process/process-follow.ts index dc1d542b5..f34fd66cc 100644 --- a/server/lib/activitypub/process/process-follow.ts +++ b/server/lib/activitypub/process/process-follow.ts | |||
@@ -11,7 +11,7 @@ async function processFollowActivity (activity: ActivityFollow) { | |||
11 | const activityObject = activity.object | 11 | const activityObject = activity.object |
12 | const actor = await getOrCreateActorAndServerAndModel(activity.actor) | 12 | const actor = await getOrCreateActorAndServerAndModel(activity.actor) |
13 | 13 | ||
14 | return processFollow(actor, activityObject) | 14 | return retryTransactionWrapper(processFollow, actor, activityObject) |
15 | } | 15 | } |
16 | 16 | ||
17 | // --------------------------------------------------------------------------- | 17 | // --------------------------------------------------------------------------- |
@@ -22,16 +22,7 @@ export { | |||
22 | 22 | ||
23 | // --------------------------------------------------------------------------- | 23 | // --------------------------------------------------------------------------- |
24 | 24 | ||
25 | function processFollow (actor: ActorModel, targetActorURL: string) { | 25 | async function processFollow (actor: ActorModel, targetActorURL: string) { |
26 | const options = { | ||
27 | arguments: [ actor, targetActorURL ], | ||
28 | errorMessage: 'Cannot follow with many retries.' | ||
29 | } | ||
30 | |||
31 | return retryTransactionWrapper(follow, options) | ||
32 | } | ||
33 | |||
34 | async function follow (actor: ActorModel, targetActorURL: string) { | ||
35 | await sequelizeTypescript.transaction(async t => { | 26 | await sequelizeTypescript.transaction(async t => { |
36 | const targetActor = await ActorModel.loadByUrl(targetActorURL, t) | 27 | const targetActor = await ActorModel.loadByUrl(targetActorURL, t) |
37 | 28 | ||