aboutsummaryrefslogtreecommitdiffstats
path: root/apps/workers/videoWorker.ts
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2024-11-09 14:00:27 +0000
committerMohamed Bassem <me@mbassem.com>2024-11-09 14:00:27 +0000
commitf8bed574ae11a29c9c59f7d96721805188a507db (patch)
tree1f897f80976c1264eb78d42b7aa9b912379b38a8 /apps/workers/videoWorker.ts
parent10070c1752b5efcbfdf351454de06fbbbe9fb0b6 (diff)
downloadkarakeep-f8bed574ae11a29c9c59f7d96721805188a507db.tar.zst
fix: Only update bookmark tagging/crawling status when worker is out of retries
Diffstat (limited to 'apps/workers/videoWorker.ts')
-rw-r--r--apps/workers/videoWorker.ts13
1 files changed, 9 insertions, 4 deletions
diff --git a/apps/workers/videoWorker.ts b/apps/workers/videoWorker.ts
index a85a8cae..444448f7 100644
--- a/apps/workers/videoWorker.ts
+++ b/apps/workers/videoWorker.ts
@@ -14,7 +14,11 @@ import {
} from "@hoarder/shared/assetdb";
import serverConfig from "@hoarder/shared/config";
import logger from "@hoarder/shared/logger";
-import { VideoWorkerQueue, ZVideoRequest } from "@hoarder/shared/queues";
+import {
+ VideoWorkerQueue,
+ ZVideoRequest,
+ zvideoRequestSchema,
+} from "@hoarder/shared/queues";
import { withTimeout } from "./utils";
import { getBookmarkDetails, updateAsset } from "./workerUtils";
@@ -33,14 +37,14 @@ export class VideoWorker {
/* timeoutSec */ serverConfig.crawler.downloadVideoTimeout,
),
onComplete: async (job) => {
- const jobId = job?.id ?? "unknown";
+ const jobId = job.id;
logger.info(
`[VideoCrawler][${jobId}] Video Download Completed successfully`,
);
return Promise.resolve();
},
onError: async (job) => {
- const jobId = job?.id ?? "unknown";
+ const jobId = job.id;
logger.error(
`[VideoCrawler][${jobId}] Video Download job failed: ${job.error}`,
);
@@ -51,6 +55,7 @@ export class VideoWorker {
pollIntervalMs: 1000,
timeoutSecs: serverConfig.crawler.downloadVideoTimeout,
concurrency: 1,
+ validator: zvideoRequestSchema,
},
);
}
@@ -71,7 +76,7 @@ function prepareYtDlpArguments(url: string, assetPath: string) {
}
async function runWorker(job: DequeuedJob<ZVideoRequest>) {
- const jobId = job.id ?? "unknown";
+ const jobId = job.id;
const { bookmarkId } = job.data;
const {