From 9883d7dd8aea76858a06a2c368debb391e11a70b Mon Sep 17 00:00:00 2001 From: gmega Date: Wed, 29 Nov 2023 13:30:15 -0300 Subject: [PATCH] add zombie checks to run state too --- chronos/profiler/metrics.nim | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/chronos/profiler/metrics.nim b/chronos/profiler/metrics.nim index 58a2cb1..dac9f2a 100644 --- a/chronos/profiler/metrics.nim +++ b/chronos/profiler/metrics.nim @@ -89,7 +89,7 @@ proc isZombie(self: var ProfilerMetrics, event: Event): bool = true proc futureRunning(self: var ProfilerMetrics, event: Event): void = - assert self.partials.hasKey(event.futureId) + if self.isZombie(event): return self.partials.withValue(event.futureId, metrics): assert metrics.state == Pending or metrics.state == Paused, @@ -102,7 +102,6 @@ proc futureRunning(self: var ProfilerMetrics, event: Event): void = metrics.state = Running proc futurePaused(self: var ProfilerMetrics, event: Event): void = - # Pause events can come from zombie futures, so we need to check for that. if self.isZombie(event): return assert event.futureId == self.callStack.pop(), $event.location