From eab7eb03c7c3690e640e742bdd170c4c028fd3b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C4=99drzej=20Stuczy=C5=84ski?= Date: Tue, 13 Feb 2024 16:35:55 +0000 Subject: [PATCH] reduced tick rate logging --- nym-api/src/coconut/dkg/controller/mod.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/nym-api/src/coconut/dkg/controller/mod.rs b/nym-api/src/coconut/dkg/controller/mod.rs index 8ddac1e80c..fec729e466 100644 --- a/nym-api/src/coconut/dkg/controller/mod.rs +++ b/nym-api/src/coconut/dkg/controller/mod.rs @@ -248,6 +248,14 @@ impl DkgController { Ok(()) } + fn reduced_tick_rate(&self, tick_duration: time::Duration) -> bool { + // make sure to not trigger warnings if say the target rate is 10s, but our last tick took `9s999ms785µs321ns` + // check for 95% of polling rate, so in that case if its below 9s500ms + let target_nanos = self.polling_rate.as_nanos(); + let min = time::Duration::nanoseconds(((target_nanos * 95) / 100) as i64); + tick_duration < min + } + pub(crate) async fn run(mut self, mut shutdown: TaskClient) { let mut interval = interval(self.polling_rate); @@ -263,7 +271,7 @@ impl DkgController { let tick_duration = now - last_polled; last_polled = now; - if tick_duration < self.polling_rate { + if self.reduced_tick_rate(tick_duration) { warn!("it seems the process is running behind. The current tick rate is lower than the polling rate. rate: {:?}, current tick: {}, previous tick: {}", self.polling_rate, tick_duration, last_tick_duration); last_tick_duration = tick_duration; continue