diff options
| author | Mohamed Bassem <me@mbassem.com> | 2025-10-06 08:28:58 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-10-06 08:28:58 +0100 |
| commit | bae8386d36855c8a8bbe77ccd6f4e67618eb2a9a (patch) | |
| tree | 4f8edae4d50fe42eec19c1961ce66ecf49c7af01 /apps | |
| parent | 57d731ba18357cdcbeddd540b0488bc210995bf3 (diff) | |
| download | karakeep-bae8386d36855c8a8bbe77ccd6f4e67618eb2a9a.tar.zst | |
fix: round feed refresh hour for idempotency (#2013)
Diffstat (limited to 'apps')
| -rw-r--r-- | apps/workers/workers/feedWorker.ts | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/apps/workers/workers/feedWorker.ts b/apps/workers/workers/feedWorker.ts index 048d9696..19076b50 100644 --- a/apps/workers/workers/feedWorker.ts +++ b/apps/workers/workers/feedWorker.ts @@ -26,13 +26,18 @@ export const FeedRefreshingWorker = cron.schedule( where: eq(rssFeedsTable.enabled, true), }) .then((feeds) => { + const currentHour = new Date(); + currentHour.setMinutes(0, 0, 0); + const hourlyWindow = currentHour.toISOString(); + for (const feed of feeds) { + const idempotencyKey = `${feed.id}-${hourlyWindow}`; FeedQueue.enqueue( { feedId: feed.id, }, { - idempotencyKey: feed.id, + idempotencyKey, }, ); } |
