From 7f76bcd2bf9bf14c7e941050888b370c372c7b11 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Sat, 23 May 2026 21:06:36 +0200 Subject: [PATCH] Task/configure queues to keep completed jobs (#6931) * Configure removeOnComplete * Update changelog --- CHANGELOG.md | 1 + libs/common/src/lib/config.ts | 20 ++++++++++++++++---- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f19cdf66..f911a88e9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,6 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed +- Configured the queues to keep the last `5000` completed jobs with a maximum age of one week - Removed the deprecated attributes (`assetClass`, `countries`, `currency`, `dataSource`, `name`, `sectors`, `symbol` and `url`) from the holdings of the public portfolio endpoint response - Upgraded `@keyv/redis` from version `4.4.0` to `5.1.6` diff --git a/libs/common/src/lib/config.ts b/libs/common/src/lib/config.ts index 113dffe4a..33118296f 100644 --- a/libs/common/src/lib/config.ts +++ b/libs/common/src/lib/config.ts @@ -175,7 +175,10 @@ export const GATHER_ASSET_PROFILE_PROCESS_JOB_OPTIONS: JobOptions = { delay: ms('1 minute'), type: 'exponential' }, - removeOnComplete: true + removeOnComplete: { + age: ms('1 week') / 1000, + count: 5000 + } }; export const GATHER_HISTORICAL_MARKET_DATA_PROCESS_JOB_NAME = @@ -186,7 +189,10 @@ export const GATHER_HISTORICAL_MARKET_DATA_PROCESS_JOB_OPTIONS: JobOptions = { delay: ms('1 minute'), type: 'exponential' }, - removeOnComplete: true + removeOnComplete: { + age: ms('1 week') / 1000, + count: 5000 + } }; export const GATHER_STATISTICS_PROCESS_JOB_OPTIONS: JobOptions = { @@ -195,7 +201,10 @@ export const GATHER_STATISTICS_PROCESS_JOB_OPTIONS: JobOptions = { delay: ms('1 minute'), type: 'exponential' }, - removeOnComplete: true + removeOnComplete: { + age: ms('1 week') / 1000, + count: 5000 + } }; export const GATHER_STATISTICS_DOCKER_HUB_PULLS_PROCESS_JOB_NAME = @@ -218,7 +227,10 @@ export const INVESTMENT_ACTIVITY_TYPES = [ export const PORTFOLIO_SNAPSHOT_PROCESS_JOB_NAME = 'PORTFOLIO'; export const PORTFOLIO_SNAPSHOT_PROCESS_JOB_OPTIONS: JobOptions = { - removeOnComplete: true + removeOnComplete: { + age: ms('1 week') / 1000, + count: 5000 + } }; export const HEADER_KEY_IMPERSONATION = 'Impersonation-Id';