From 85f906ea53c854cbf369de43fc52702617c383b2 Mon Sep 17 00:00:00 2001 From: Viktor Lofgren Date: Sat, 23 Dec 2023 13:49:24 +0100 Subject: [PATCH] (executor) Fix removal of stale process heartbeats --- .../actor/proc/ProcessLivenessMonitorActor.java | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/services-core/executor-service/src/main/java/nu/marginalia/actor/proc/ProcessLivenessMonitorActor.java b/code/services-core/executor-service/src/main/java/nu/marginalia/actor/proc/ProcessLivenessMonitorActor.java index 96f05c78..7c95e28b 100644 --- a/code/services-core/executor-service/src/main/java/nu/marginalia/actor/proc/ProcessLivenessMonitorActor.java +++ b/code/services-core/executor-service/src/main/java/nu/marginalia/actor/proc/ProcessLivenessMonitorActor.java @@ -36,11 +36,6 @@ public class ProcessLivenessMonitorActor extends RecordActorPrototype { case Monitor() -> { for (;;) { for (var heartbeat : getProcessHeartbeats()) { - if (!heartbeat.isRunning()) continue; - - var processId = heartbeat.getProcessId(); - if (null == processId) continue; - if (heartbeat.lastSeenMillis() > TimeUnit.DAYS.toMillis(1)) { // This process has been MIA for a long time // ... so we delete it from the listing altogether @@ -49,6 +44,11 @@ public class ProcessLivenessMonitorActor extends RecordActorPrototype { continue; } + if (!heartbeat.isRunning()) continue; + + var processId = heartbeat.getProcessId(); + if (null == processId) continue; + if (processService.isRunning(processId) && heartbeat.lastSeenMillis() < 10_000) continue;