diff options
| author | dakkar <dakkar@thenautilus.net> | 2024-11-22 23:02:39 +0000 |
|---|---|---|
| committer | dakkar <dakkar@thenautilus.net> | 2024-11-22 23:02:39 +0000 |
| commit | 3ae9f4e8e646967b79b4a5d13234f3deafdd1b3f (patch) | |
| tree | 003e376f4f84304e89c7206da5ae8f3e946b8c77 /packages/backend/src/queue/processors/InboxProcessorService.ts | |
| parent | merge: Support following feed in Deck UI (resolves #789) (!724) (diff) | |
| parent | pass resolver when creating notes via side-effect (diff) | |
| download | sharkey-3ae9f4e8e646967b79b4a5d13234f3deafdd1b3f.tar.gz sharkey-3ae9f4e8e646967b79b4a5d13234f3deafdd1b3f.tar.bz2 sharkey-3ae9f4e8e646967b79b4a5d13234f3deafdd1b3f.zip | |
merge: Accept Like(Note) and Update(Note) activities where the Note isn't already cached (resolves #795 and #748) (!729)
View MR for information: https://activitypub.software/TransFem-org/Sharkey/-/merge_requests/729
Closes #795 and #748
Approved-by: dakkar <dakkar@thenautilus.net>
Approved-by: Marie <github@yuugi.dev>
Diffstat (limited to 'packages/backend/src/queue/processors/InboxProcessorService.ts')
| -rw-r--r-- | packages/backend/src/queue/processors/InboxProcessorService.ts | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/packages/backend/src/queue/processors/InboxProcessorService.ts b/packages/backend/src/queue/processors/InboxProcessorService.ts index 102e835e24..260ebe0d40 100644 --- a/packages/backend/src/queue/processors/InboxProcessorService.ts +++ b/packages/backend/src/queue/processors/InboxProcessorService.ts @@ -7,6 +7,7 @@ import { URL } from 'node:url'; import { Inject, Injectable, OnApplicationShutdown } from '@nestjs/common'; import httpSignature from '@peertube/http-signature'; import * as Bull from 'bullmq'; +import { AbortError } from 'node-fetch'; import type Logger from '@/logger.js'; import { FederatedInstanceService } from '@/core/FederatedInstanceService.js'; import { FetchInstanceMetadataService } from '@/core/FetchInstanceMetadataService.js'; @@ -232,6 +233,19 @@ export class InboxProcessorService implements OnApplicationShutdown { return e.message; } } + + if (e instanceof StatusError) { + if (e.isRetryable) { + return `temporary error ${e.statusCode}`; + } else { + return `skip: permanent error ${e.statusCode}`; + } + } + + if (e instanceof AbortError) { + return 'request aborted'; + } + throw e; } return 'ok'; |