From f2d63103541ee3746ff0834e7c69d188af3572d2 Mon Sep 17 00:00:00 2001 From: holisticode Date: Thu, 7 Mar 2019 02:13:11 -0500 Subject: [PATCH] p2p/protocols: fix race condition in TestAccountingSimulation (#19228) p2p/protocols: Fix race condition in TestAccountingSimulation --- p2p/protocols/accounting_simulation_test.go | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/p2p/protocols/accounting_simulation_test.go b/p2p/protocols/accounting_simulation_test.go index e90a1d81d..bd9b00f92 100644 --- a/p2p/protocols/accounting_simulation_test.go +++ b/p2p/protocols/accounting_simulation_test.go @@ -159,8 +159,9 @@ func TestAccountingSimulation(t *testing.T) { // (n entries in the array will not be filled - // the balance of a node with itself) type matrix struct { - n int //number of nodes - m []int64 //array of balances + n int //number of nodes + m []int64 //array of balances + lock sync.RWMutex } // create a new matrix @@ -177,7 +178,9 @@ func (m *matrix) add(i, j int, v int64) error { // i * number of nodes + remote node mi := i*m.n + j // register that balance + m.lock.Lock() m.m[mi] += v + m.lock.Unlock() return nil }