From 67a97c9f1a8a564dc8931e3acf337ac353a1b427 Mon Sep 17 00:00:00 2001 From: disksing Date: Wed, 11 Apr 2018 21:37:09 +0800 Subject: [PATCH] etcdserver/stats: fix stats data race. --- etcdserver/stats/server.go | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/etcdserver/stats/server.go b/etcdserver/stats/server.go index 0278e885c..5106671d8 100644 --- a/etcdserver/stats/server.go +++ b/etcdserver/stats/server.go @@ -74,10 +74,10 @@ type serverStats struct { func (ss *ServerStats) JSON() []byte { ss.Lock() stats := ss.serverStats - ss.Unlock() - stats.LeaderInfo.Uptime = time.Since(stats.LeaderInfo.StartTime).String() stats.SendingPkgRate, stats.SendingBandwidthRate = stats.sendRateQueue.Rate() stats.RecvingPkgRate, stats.RecvingBandwidthRate = stats.recvRateQueue.Rate() + ss.Unlock() + stats.LeaderInfo.Uptime = time.Since(stats.LeaderInfo.StartTime).String() b, err := json.Marshal(stats) // TODO(jonboulle): appropriate error handling? if err != nil {