Skip to content

Commit ac9c778

Browse files
joshua-kimJonathanOppenheimer
authored andcommitted
Remove UptimeManager#IsConnected (#4333)
Signed-off-by: Joshua Kim <20001595+joshua-kim@users.noreply.github.com>
1 parent 6329c3c commit ac9c778

File tree

6 files changed

+33
-15
lines changed

6 files changed

+33
-15
lines changed

network/p2p/network.go

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -160,6 +160,13 @@ func (p *Peers) Disconnected(nodeID ids.NodeID) {
160160
p.set.Remove(nodeID)
161161
}
162162

163+
func (p *Peers) Has(nodeID ids.NodeID) bool {
164+
p.lock.RLock()
165+
defer p.lock.RUnlock()
166+
167+
return p.set.Contains(nodeID)
168+
}
169+
163170
// Sample returns a pseudo-random sample of up to limit Peers
164171
func (p *Peers) Sample(limit int) []ids.NodeID {
165172
p.lock.RLock()

network/p2p/network_test.go

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -983,3 +983,20 @@ func TestNetworkValidators_ConnectAndDisconnect(t *testing.T) {
983983
})
984984
}
985985
}
986+
987+
func TestPeers_Has(t *testing.T) {
988+
require := require.New(t)
989+
990+
peers := &Peers{}
991+
network, err := NewNetwork(
992+
logging.NoLog{},
993+
&enginetest.Sender{},
994+
prometheus.NewRegistry(),
995+
"",
996+
peers,
997+
)
998+
require.NoError(err)
999+
require.NoError(network.Connected(context.Background(), ids.EmptyNodeID, nil))
1000+
1001+
require.True(peers.Has(ids.EmptyNodeID))
1002+
}

snow/uptime/manager.go

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ type Tracker interface {
3030
StartedTracking() bool
3131

3232
Connect(nodeID ids.NodeID) error
33-
IsConnected(nodeID ids.NodeID) bool
3433
Disconnect(nodeID ids.NodeID) error
3534
}
3635

snow/uptime/manager_test.go

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -230,24 +230,15 @@ func TestConnectAndDisconnect(t *testing.T) {
230230

231231
s.AddNode(nodeID0, startTime)
232232

233-
connected := up.IsConnected(nodeID0)
234-
require.False(connected)
235-
236233
require.NoError(up.StartTracking([]ids.NodeID{nodeID0}))
237234

238-
connected = up.IsConnected(nodeID0)
239-
require.False(connected)
240-
241235
duration, lastUpdated, err := up.CalculateUptime(nodeID0)
242236
require.NoError(err)
243237
require.Equal(time.Duration(0), duration)
244238
require.Equal(clk.UnixTime(), lastUpdated)
245239

246240
require.NoError(up.Connect(nodeID0))
247241

248-
connected = up.IsConnected(nodeID0)
249-
require.True(connected)
250-
251242
currentTime = currentTime.Add(time.Second)
252243
clk.Set(currentTime)
253244

@@ -258,9 +249,6 @@ func TestConnectAndDisconnect(t *testing.T) {
258249

259250
require.NoError(up.Disconnect(nodeID0))
260251

261-
connected = up.IsConnected(nodeID0)
262-
require.False(connected)
263-
264252
currentTime = currentTime.Add(time.Second)
265253
clk.Set(currentTime)
266254

vms/platformvm/network/network.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ type Network struct {
3737
txPushGossipFrequency time.Duration
3838
txPullGossiper gossip.Gossiper
3939
txPullGossipFrequency time.Duration
40+
peers *p2p.Peers
4041
}
4142

4243
func New(
@@ -60,13 +61,14 @@ func New(
6061
vdrs,
6162
config.MaxValidatorSetStaleness,
6263
)
63-
64+
peers := &p2p.Peers{}
6465
p2pNetwork, err := p2p.NewNetwork(
6566
log,
6667
appSender,
6768
registerer,
6869
"p2p",
6970
validators,
71+
peers,
7072
)
7173
if err != nil {
7274
return nil, err
@@ -189,6 +191,7 @@ func New(
189191
txPushGossipFrequency: config.PushGossipFrequency,
190192
txPullGossiper: txPullGossiper,
191193
txPullGossipFrequency: config.PullGossipFrequency,
194+
peers: peers,
192195
}, nil
193196
}
194197

@@ -224,3 +227,7 @@ func (n *Network) IssueTxFromRPC(tx *txs.Tx) error {
224227
n.txPushGossiper.Add(tx)
225228
return nil
226229
}
230+
231+
func (n *Network) Peers() *p2p.Peers {
232+
return n.peers
233+
}

vms/platformvm/service.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -868,7 +868,7 @@ func (s *Service) getPrimaryOrSubnetValidators(subnetID ids.ID, nodeIDs set.Set[
868868
if err != nil {
869869
return nil, err
870870
}
871-
isConnected := s.vm.uptimeManager.IsConnected(currentStaker.NodeID)
871+
isConnected := s.vm.Network.Peers().Has(currentStaker.NodeID)
872872
connected = &isConnected
873873
uptime = &currentUptime
874874
}

0 commit comments

Comments
 (0)