From 5551f990a570e8a32a297961086cbea79564acf9 Mon Sep 17 00:00:00 2001 From: davotoula Date: Sat, 13 Jun 2026 19:31:00 +0200 Subject: [PATCH] fix(quartz): remove write-only RelayStat liveness fields The RelayStat.lastConnectAt / lastIncomingAt fields added in #3186 were written on every connect and every incoming relay message (a TimeUtils.now() call plus a volatile store on the Android hot path) but never read. --- .../quartz/nip01Core/relay/client/stats/RelayStat.kt | 7 ------- .../quartz/nip01Core/relay/client/stats/RelayStats.kt | 3 --- 2 files changed, 10 deletions(-) diff --git a/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStat.kt b/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStat.kt index 5eb3d61cfc..f5b01d7016 100644 --- a/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStat.kt +++ b/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStat.kt @@ -23,7 +23,6 @@ package com.vitorpamplona.quartz.nip01Core.relay.client.stats import androidx.collection.LruCache import androidx.compose.runtime.Stable import com.vitorpamplona.quartz.utils.TimeUtils -import kotlin.concurrent.Volatile @Stable class RelayStat( @@ -36,12 +35,6 @@ class RelayStat( var connectionTentatives: Int = 0, var connectionCompleted: Int = 0, ) { - // Best-effort liveness signals (epoch seconds, 0 = never). The enclosing RelayStats LruCache - // can evict; durable per-relay history lives in commons RelayHealthStore. - @Volatile var lastConnectAt: Long = 0 - - @Volatile var lastIncomingAt: Long = 0 - val messages = LruCache(100) fun newNotice(notice: String?) { diff --git a/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStats.kt b/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStats.kt index 2b1fceb9d5..b6548e1a2c 100644 --- a/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStats.kt +++ b/quartz/src/commonMain/kotlin/com/vitorpamplona/quartz/nip01Core/relay/client/stats/RelayStats.kt @@ -32,7 +32,6 @@ import com.vitorpamplona.quartz.nip01Core.relay.commands.toClient.OkMessage import com.vitorpamplona.quartz.nip01Core.relay.commands.toRelay.Command import com.vitorpamplona.quartz.nip01Core.relay.normalizer.NormalizedRelayUrl import com.vitorpamplona.quartz.utils.Log -import com.vitorpamplona.quartz.utils.TimeUtils import com.vitorpamplona.quartz.utils.bytesUsedInMemory class RelayStats( @@ -65,7 +64,6 @@ class RelayStats( pingInMs = pingMillis compression = compressed connectionCompleted() - lastConnectAt = TimeUtils.now() } } @@ -93,7 +91,6 @@ class RelayStats( val stat = get(relay.url) stat.addBytesReceived(msgStr.bytesUsedInMemory()) - stat.lastIncomingAt = TimeUtils.now() when (msg) { is NoticeMessage -> {