From 5fab2d0a30056cbade8aabf55c495275a5d76ee9 Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Wed, 24 Jun 2026 12:17:02 -0700 Subject: [PATCH] inject buffer service, implement drain --- server/src/config/services.worker.ts | 1 + server/src/shutdown.ts | 1 + server/src/worker/worker.job-scheduler.ts | 4 ++++ 3 files changed, 6 insertions(+) diff --git a/server/src/config/services.worker.ts b/server/src/config/services.worker.ts index 93233cd37..e3996d09c 100644 --- a/server/src/config/services.worker.ts +++ b/server/src/config/services.worker.ts @@ -136,6 +136,7 @@ export const buildWorker = async (shared: SharedServices, envSettings: EnvConfig monitorsRepository, checksRepository, checkService, + bufferService, checkProducer, checkEvaluator, geoCheckPipeline, diff --git a/server/src/shutdown.ts b/server/src/shutdown.ts index 625547e85..bf77a77c9 100644 --- a/server/src/shutdown.ts +++ b/server/src/shutdown.ts @@ -24,6 +24,7 @@ export const initShutdownListener = (server: Server | null, services: ShutdownTa try { server?.close(); + await services.worker.drain(); await services.worker.shutdown(); await services.db.disconnect(); logger.info({ message: "Graceful shutdown complete" }); diff --git a/server/src/worker/worker.job-scheduler.ts b/server/src/worker/worker.job-scheduler.ts index 4e05e4c38..2f3f40950 100644 --- a/server/src/worker/worker.job-scheduler.ts +++ b/server/src/worker/worker.job-scheduler.ts @@ -154,6 +154,10 @@ export class JobScheduler implements IJobScheduler { return { success: true }; }; + drain = async () => { + this.stopped = true; + }; + shutdown = async () => { this.stopped = true; // Stop all timers