diff options
author | Felix Lange <fjl@twurst.com> | 2015-09-03 21:52:18 +0800 |
---|---|---|
committer | Felix Lange <fjl@twurst.com> | 2015-09-03 21:52:18 +0800 |
commit | e2d7c1a52303ebdd8c2956badad5e600bf93ff33 (patch) | |
tree | 160e7c4861ea071697eebf4b92a6c361f3ed17c7 | |
parent | ebbe25ee71deb50e67bd457ac2598e71b51a3bba (diff) | |
parent | 1f1d73ab747da9edc1c8f6bd39835e5653c539ee (diff) | |
download | dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.tar dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.tar.gz dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.tar.bz2 dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.tar.lz dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.tar.xz dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.tar.zst dexon-e2d7c1a52303ebdd8c2956badad5e600bf93ff33.zip |
Merge pull request #1752 from karalabe/fix-eth61-test
eth/downloader: fix race causing occasional test failure
-rw-r--r-- | eth/downloader/downloader.go | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/eth/downloader/downloader.go b/eth/downloader/downloader.go index 574f2ba15..73f95bf64 100644 --- a/eth/downloader/downloader.go +++ b/eth/downloader/downloader.go @@ -739,9 +739,11 @@ func (d *Downloader) fetchBlocks61(from uint64) error { break } // Send a download request to all idle peers, until throttled + throttled := false for _, peer := range d.peers.IdlePeers() { // Short circuit if throttling activated if d.queue.Throttle() { + throttled = true break } // Reserve a chunk of hashes for a peer. A nil can mean either that @@ -762,7 +764,7 @@ func (d *Downloader) fetchBlocks61(from uint64) error { } // Make sure that we have peers available for fetching. If all peers have been tried // and all failed throw an error - if !d.queue.Throttle() && d.queue.InFlight() == 0 { + if !throttled && d.queue.InFlight() == 0 { return errPeersUnavailable } } |