From bc367aae964ef17563a2afaf5b2639d744bd356a Mon Sep 17 00:00:00 2001 From: Patrik Nordwall Date: Sat, 15 Jun 2013 23:17:05 +0200 Subject: [PATCH] Count vclock stats when published, not for each received gossip --- .../src/main/scala/akka/cluster/ClusterDaemon.scala | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/akka-cluster/src/main/scala/akka/cluster/ClusterDaemon.scala b/akka-cluster/src/main/scala/akka/cluster/ClusterDaemon.scala index 99d261f012..96a52b40e0 100644 --- a/akka-cluster/src/main/scala/akka/cluster/ClusterDaemon.scala +++ b/akka-cluster/src/main/scala/akka/cluster/ClusterDaemon.scala @@ -235,7 +235,6 @@ private[cluster] final class ClusterCoreDaemon(publisher: ActorRef) extends Acto val statsEnabled = PublishStatsInterval.isFinite var gossipStats = GossipStats() - var vclockStats = VectorClockStats() var seedNodeProcess: Option[ActorRef] = None @@ -616,9 +615,6 @@ private[cluster] final class ClusterCoreDaemon(publisher: ActorRef) extends Acto case Some(x) if x < 0 ⇒ gossipStats.incrementNewerCount case _ ⇒ gossipStats.incrementOlderCount } - vclockStats = VectorClockStats( - versionSize = latestGossip.version.versions.size, - latestGossip.members.count(m ⇒ latestGossip.seenByNode(m.uniqueAddress))) } publish(latestGossip) @@ -917,7 +913,12 @@ private[cluster] final class ClusterCoreDaemon(publisher: ActorRef) extends Acto if (PublishStatsInterval == Duration.Zero) publishInternalStats() } - def publishInternalStats(): Unit = publisher ! CurrentInternalStats(gossipStats, vclockStats) + def publishInternalStats(): Unit = { + val vclockStats = VectorClockStats( + versionSize = latestGossip.version.versions.size, + seenLatest = latestGossip.members.count(m ⇒ latestGossip.seenByNode(m.uniqueAddress))) + publisher ! CurrentInternalStats(gossipStats, vclockStats) + } }