From 773a338397e8e0e229bee7200f0cf3d7e1d49fb8 Mon Sep 17 00:00:00 2001 From: = Date: Tue, 3 Sep 2024 17:33:38 +0530 Subject: [PATCH] fix: resolved looping in audit log resource queue --- backend/src/ee/services/audit-log/audit-log-dal.ts | 4 +++- .../src/services/identity-ua/identity-ua-client-secret-dal.ts | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/backend/src/ee/services/audit-log/audit-log-dal.ts b/backend/src/ee/services/audit-log/audit-log-dal.ts index 249e239c5..0bb9d362b 100644 --- a/backend/src/ee/services/audit-log/audit-log-dal.ts +++ b/backend/src/ee/services/audit-log/audit-log-dal.ts @@ -62,6 +62,7 @@ export const auditLogDALFactory = (db: TDbClient) => { const today = new Date(); let deletedAuditLogIds: { id: string }[] = []; let numberOfRetryOnFailure = 0; + let isRetrying = false; do { try { @@ -84,7 +85,8 @@ export const auditLogDALFactory = (db: TDbClient) => { setTimeout(resolve, 10); // time to breathe for db }); } - } while (deletedAuditLogIds.length > 0 || numberOfRetryOnFailure < MAX_RETRY_ON_FAILURE); + isRetrying = numberOfRetryOnFailure > 0; + } while (deletedAuditLogIds.length > 0 || (isRetrying && numberOfRetryOnFailure < MAX_RETRY_ON_FAILURE)); }; return { ...auditLogOrm, pruneAuditLog, find }; diff --git a/backend/src/services/identity-ua/identity-ua-client-secret-dal.ts b/backend/src/services/identity-ua/identity-ua-client-secret-dal.ts index ec0fd6fbf..8e5d66dc9 100644 --- a/backend/src/services/identity-ua/identity-ua-client-secret-dal.ts +++ b/backend/src/services/identity-ua/identity-ua-client-secret-dal.ts @@ -30,6 +30,7 @@ export const identityUaClientSecretDALFactory = (db: TDbClient) => { let deletedClientSecret: { id: string }[] = []; let numberOfRetryOnFailure = 0; + let isRetrying = false; do { try { @@ -71,7 +72,8 @@ export const identityUaClientSecretDALFactory = (db: TDbClient) => { setTimeout(resolve, 10); // time to breathe for db }); } - } while (deletedClientSecret.length > 0 || numberOfRetryOnFailure < MAX_RETRY_ON_FAILURE); + isRetrying = numberOfRetryOnFailure > 0; + } while (deletedClientSecret.length > 0 || (isRetrying && numberOfRetryOnFailure < MAX_RETRY_ON_FAILURE)); }; return { ...uaClientSecretOrm, incrementUsage, removeExpiredClientSecrets };