From 6600f6e52ebd12ff1195e8c6798ed68ee8533520 Mon Sep 17 00:00:00 2001 From: Chloe Kudryavtsev Date: Sat, 26 Nov 2022 13:28:39 +0100 Subject: [PATCH] fixup: make cluster limit into a per-mode warning rather than error --- packages/backend/src/boot/master.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/backend/src/boot/master.ts b/packages/backend/src/boot/master.ts index f59e72ab3..b4d95346f 100644 --- a/packages/backend/src/boot/master.ts +++ b/packages/backend/src/boot/master.ts @@ -141,12 +141,12 @@ async function connectDb(): Promise { async function spawnWorkers(clusterLimits: Required): Promise { const modes = ['web', 'queue']; - const total = modes.reduce((acc, mode) => acc + clusterLimits[mode], 0); - if (total > os.cpus().length) { - bootLogger.error(`configuration error: cluster limits total (${total}) must not exceed number of cores (${os.cpus().length})`); - process.exit(78); + const cpus = os.cpus().length; + for (const mode of modes.filter(mode => clusterLimits[mode] > cpus)) { + bootLogger.warn(`configuration warning: cluster limit for ${mode} exceeds number of cores (${cpus})`); } + const total = modes.reduce((acc, mode) => acc + clusterLimits[mode], 0); const workers = new Array(total); workers.fill('web', 0, clusterLimits.web); workers.fill('queue', clusterLimits.web);