From 17bced4fdfbdbd80bf9c8a957d3ae4f0f1d8b110 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc-Andr=C3=A9=20Bombeck?= Date: Sat, 3 Oct 2026 23:38:13 +0200 Subject: [PATCH] docs(self-hosting): an Apple Health import from a web-only container is queued, not refused --- docs/self-hosting/scaling.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/self-hosting/scaling.md b/docs/self-hosting/scaling.md index 01b1c950f..8bde98d1b 100644 --- a/docs/self-hosting/scaling.md +++ b/docs/self-hosting/scaling.md @@ -46,10 +46,12 @@ staging file. The import then fails with a staging-file-missing error ("the import staging file is not visible to the worker"). Two things to know: -- A pure `web` container has no pg-boss handle, so an import kicked off - there currently returns `503 Background worker is not running`. Run - imports from a container that also runs the worker until send-only - boss support lands. +- A pure `web` container opens a send-only pg-boss connection at boot + (`src/instrumentation.ts`, `startGlobalBossProducer`), so an import + kicked off there is accepted and queued for the worker like any other + job. It answers `503 Background worker is not running` only when that + producer connection could not be opened (the boot log then shows + `Failed to start pg-boss producer`). - If you run web and worker as separate containers, they **must share the import staging directory** — mount the same named volume at the temp path on both — or run imports in single-container (`all`) mode.