From 110a8ea48c679f227d357fae60c11b4414b7bf49 Mon Sep 17 00:00:00 2001 From: Matt Aitken Date: Thu, 12 Dec 2024 13:49:17 +0000 Subject: [PATCH] Added queue updating logging. For Triggering changed the concurrency limit calculation to match deploying --- .../services/createBackgroundWorker.server.ts | 9 ++++++++ .../app/v3/services/triggerTask.server.ts | 23 ++++++++++++++++--- 2 files changed, 29 insertions(+), 3 deletions(-) diff --git a/apps/webapp/app/v3/services/createBackgroundWorker.server.ts b/apps/webapp/app/v3/services/createBackgroundWorker.server.ts index 34acd6e33..c4fc3a2f8 100644 --- a/apps/webapp/app/v3/services/createBackgroundWorker.server.ts +++ b/apps/webapp/app/v3/services/createBackgroundWorker.server.ts @@ -202,6 +202,15 @@ export async function createBackgroundTasks( }); if (typeof taskQueue.concurrencyLimit === "number") { + logger.debug("CreateBackgroundWorkerService: updating concurrency limit", { + workerId: worker.id, + taskQueue, + orgId: environment.organizationId, + projectId: environment.projectId, + environmentId: environment.id, + concurrencyLimit, + taskidentifier: task.id, + }); await marqs?.updateQueueConcurrencyLimits( environment, taskQueue.name, diff --git a/apps/webapp/app/v3/services/triggerTask.server.ts b/apps/webapp/app/v3/services/triggerTask.server.ts index 877c52137..b3eb7b55d 100644 --- a/apps/webapp/app/v3/services/triggerTask.server.ts +++ b/apps/webapp/app/v3/services/triggerTask.server.ts @@ -439,9 +439,16 @@ export class TriggerTaskService extends BaseService { if (body.options?.queue) { const concurrencyLimit = - typeof body.options.queue.concurrencyLimit === "number" - ? Math.max(0, body.options.queue.concurrencyLimit) - : undefined; + typeof body.options.queue?.concurrencyLimit === "number" + ? Math.max( + Math.min( + body.options.queue.concurrencyLimit, + environment.maximumConcurrencyLimit, + environment.organization.maximumConcurrencyLimit + ), + 0 + ) + : null; let taskQueue = await tx.taskQueue.findFirst({ where: { @@ -468,6 +475,16 @@ export class TriggerTaskService extends BaseService { }); if (typeof taskQueue.concurrencyLimit === "number") { + logger.debug("TriggerTaskService: updating concurrency limit", { + runId: taskRun.id, + friendlyId: taskRun.friendlyId, + taskQueue, + orgId: environment.organizationId, + projectId: environment.projectId, + existingConcurrencyLimit, + concurrencyLimit, + queueOptions: body.options?.queue, + }); await marqs?.updateQueueConcurrencyLimits( environment, taskQueue.name,