aboutsummaryrefslogtreecommitdiffstats
path: root/eth
diff options
context:
space:
mode:
authorPéter Szilágyi <peterke@gmail.com>2016-10-21 18:09:27 +0800
committerPéter Szilágyi <peterke@gmail.com>2016-10-21 18:09:27 +0800
commit53db80da89ac736614cfcfc10ea40ac5f91b2646 (patch)
treeb34fd78bcf46e5545643d0622a71a061149a5df3 /eth
parent28cc3cc96069d7911b0bd8e9f68835cc52b52140 (diff)
downloadgo-tangerine-53db80da89ac736614cfcfc10ea40ac5f91b2646.tar.gz
go-tangerine-53db80da89ac736614cfcfc10ea40ac5f91b2646.tar.zst
go-tangerine-53db80da89ac736614cfcfc10ea40ac5f91b2646.zip
eth/downloader: fix a data race in a log output
Diffstat (limited to 'eth')
-rw-r--r--eth/downloader/downloader.go3
1 files changed, 2 insertions, 1 deletions
diff --git a/eth/downloader/downloader.go b/eth/downloader/downloader.go
index e9dd05248..987be2b7a 100644
--- a/eth/downloader/downloader.go
+++ b/eth/downloader/downloader.go
@@ -948,11 +948,12 @@ func (d *Downloader) fetchNodeData() error {
}
d.syncStatsLock.Lock()
d.syncStatsStateDone += uint64(delivered)
+ syncStatsStateDone := d.syncStatsStateDone // Thread safe copy for the log below
d.syncStatsLock.Unlock()
// Log a message to the user and return
if delivered > 0 {
- glog.V(logger.Info).Infof("imported %3d state entries in %9v: processed %d, pending at least %d", delivered, common.PrettyDuration(time.Since(start)), d.syncStatsStateDone, pending)
+ glog.V(logger.Info).Infof("imported %3d state entries in %9v: processed %d, pending at least %d", delivered, common.PrettyDuration(time.Since(start)), syncStatsStateDone, pending)
}
})
}