From f7fc7fef4fd1ddf1d7b9cec2d66aec1557242031 Mon Sep 17 00:00:00 2001 From: lunanting Date: Mon, 28 Sep 2026 15:40:57 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E5=AE=A2=E9=80=80?= =?UTF-8?q?=E7=9C=8B=E6=9D=BF=E7=BC=93=E5=AD=98=E5=91=BD=E4=B8=AD=E6=97=B6?= =?UTF-8?q?=E5=BC=95=E7=94=A8=E6=9C=AA=E5=AE=9A=E4=B9=89=E5=B8=B8=E9=87=8F?= =?UTF-8?q?=E5=AF=BC=E8=87=B4=20500?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 缓存 TTL 改成可配(DEFAULT_CACHE_TTL_MS / resolveCacheTtlMs)时漏改了 loadReplicaRows 里的比较表达式,仍写 CACHE_TTL_MS。缓存为空时短路不触发, 所以本地首轮没暴露;生产被预热任务写过缓存后,第二次请求命中该行即 ReferenceError 500。改为调用 resolveCacheTtlMs()。 --- backend/src/services/returnStockWarningService.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/src/services/returnStockWarningService.js b/backend/src/services/returnStockWarningService.js index 1ef2960..5b8302d 100644 --- a/backend/src/services/returnStockWarningService.js +++ b/backend/src/services/returnStockWarningService.js @@ -420,7 +420,7 @@ async function loadReplicaRows({ const basis = resolveCreatedAtBasis(createdAtBasis); const key = buildCacheKey(warehouse, basis); const cached = rowCache.get(key); - if (!refresh && cached && cached.rows && Date.now() - cached.at < CACHE_TTL_MS) { + if (!refresh && cached && cached.rows && Date.now() - cached.at < resolveCacheTtlMs()) { return cached.rows; } const running = inflightCache.get(key);