From fa34429a2695f57bc0a96cd78f25e86700d8ee44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jano=C5=A1=20Gulja=C5=A1?= Date: Thu, 24 Jan 2019 12:02:47 +0100 Subject: [PATCH] swarm: fix a data race on startTime (#18511) --- swarm/swarm.go | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/swarm/swarm.go b/swarm/swarm.go index d17d8132036c..9ece8bb669cf 100644 --- a/swarm/swarm.go +++ b/swarm/swarm.go @@ -56,7 +56,6 @@ import ( ) var ( - startTime time.Time updateGaugesPeriod = 5 * time.Second startCounter = metrics.NewRegisteredCounter("stack,start", nil) stopCounter = metrics.NewRegisteredCounter("stack,stop", nil) @@ -80,6 +79,7 @@ type Swarm struct { swap *swap.Swap stateStore *state.DBStore accountingMetrics *protocols.AccountingMetrics + startTime time.Time tracerClose io.Closer } @@ -344,7 +344,7 @@ Start is called when the stack is started */ // implements the node.Service interface func (self *Swarm) Start(srv *p2p.Server) error { - startTime = time.Now() + self.startTime = time.Now() self.tracerClose = tracing.Closer @@ -414,7 +414,7 @@ func (self *Swarm) periodicallyUpdateGauges() { } func (self *Swarm) updateGauges() { - uptimeGauge.Update(time.Since(startTime).Nanoseconds()) + uptimeGauge.Update(time.Since(self.startTime).Nanoseconds()) requestsCacheGauge.Update(int64(self.netStore.RequestsCacheLen())) }