1
0
cvsa/packages/crawler/mq/exec/directSnapshot.ts
2025-11-10 04:29:10 +08:00

18 lines
597 B
TypeScript

import { Job } from "bullmq";
import { insertVideoSnapshot } from "mq/task/getVideoStats";
import { sql } from "@core/db/dbNew";
import { lockManager } from "@core/mq/lockManager";
export const directSnapshotWorker = async (job: Job): Promise<void> => {
const lock = await lockManager.isLocked(`directSnapshot-${job.data.aid}`);
if (lock) {
return;
}
const aid = job.data.aid;
if (!aid) {
throw new Error("aid does not exists");
}
await insertVideoSnapshot(sql, aid, "snapshotMilestoneVideo");
await lockManager.acquireLock(`directSnapshot-${job.data.aid}`, 75);
};