aboutsummaryrefslogtreecommitdiffstats
path: root/p2p
diff options
context:
space:
mode:
authorJanoš Guljaš <janos@users.noreply.github.com>2019-02-13 20:03:23 +0800
committerRafael Matias <rafael@skyle.net>2019-02-19 20:11:52 +0800
commit8ea3d8ad90f90e7233e829ad141acfd9d911658c (patch)
treeed6e0fcb16c90c460052a62a66d3aa253ea3498d /p2p
parenta0127019c3d516e8d8cf83839583bcf71af763e0 (diff)
downloaddexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.tar
dexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.tar.gz
dexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.tar.bz2
dexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.tar.lz
dexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.tar.xz
dexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.tar.zst
dexon-8ea3d8ad90f90e7233e829ad141acfd9d911658c.zip
swarm: fix network/stream data races (#19051)
* swarm/network/stream: newStreamerTester cleanup only if err is nil * swarm/network/stream: raise newStreamerTester waitForPeers timeout * swarm/network/stream: fix data races in GetPeerSubscriptions * swarm/storage: prevent data race on LDBStore.batchesC https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461775049 * swarm/network/stream: fix TestGetSubscriptionsRPC data race https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461768477 * swarm/network/stream: correctly use Simulation.Run callback https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-461783804 * swarm/network: protect addrCountC in Kademlia.AddrCountC function https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-462273444 * p2p/simulations: fix a deadlock calling getRandomNode with lock https://github.com/ethersphere/go-ethereum/issues/1198#issuecomment-462317407 * swarm/network/stream: terminate disconnect goruotines in tests * swarm/network/stream: reduce memory consumption when testing data races * swarm/network/stream: add watchDisconnections helper function * swarm/network/stream: add concurrent counter for tests * swarm/network/stream: rename race/norace test files and use const * swarm/network/stream: remove watchSim and its panic * swarm/network/stream: pass context in watchDisconnections * swarm/network/stream: add concurrent safe bool for watchDisconnections * swarm/storage: fix LDBStore.batchesC data race by not closing it (cherry picked from commit 3fd6db2bf63ce90232de445c7f33943406a5e634)
Diffstat (limited to 'p2p')
-rw-r--r--p2p/simulations/network.go2
1 files changed, 1 insertions, 1 deletions
diff --git a/p2p/simulations/network.go b/p2p/simulations/network.go
index 6edcefc53..a0e621b88 100644
--- a/p2p/simulations/network.go
+++ b/p2p/simulations/network.go
@@ -460,7 +460,7 @@ func (net *Network) getRandomNode(ids []enode.ID, excludeIDs []enode.ID) *Node {
if l == 0 {
return nil
}
- return net.GetNode(filtered[rand.Intn(l)])
+ return net.getNode(filtered[rand.Intn(l)])
}
func filterIDs(ids []enode.ID, excludeIDs []enode.ID) []enode.ID {