Moved cooldownPeer to KV to further reduce coupling

master
Kevin 2020-07-26 19:15:26 -05:00
parent dde10b7005
commit fad5e8547e
3 changed files with 5 additions and 5 deletions

View File

@ -70,6 +70,7 @@ class OnionrCommunicatorDaemon:
self.kv.put('newPeers', [])
self.kv.put('dbTimestamps', {})
self.kv.put('blocksToUpload', [])
self.kv.put('cooldownPeer', {})
if config.get('general.offline_mode', False):
self.isOnline = False
@ -88,7 +89,6 @@ class OnionrCommunicatorDaemon:
self.delay = 1
# lists of connected peers and peers we know we can't reach currently
self.cooldownPeer = {}
self.connectTimes = {}
# list of peer's profiles (onionrpeers.PeerProfile instances)
self.peerProfiles = []

View File

@ -76,7 +76,7 @@ def connect_new_peer_to_communicator(comm_inst, peer='', useBootstrap=False):
"""
if len(address) == 0 or address in tried \
or address in kv.get('onlinePeers') \
or address in comm_inst.cooldownPeer:
or address in kv.get('cooldownPeer'):
continue
if kv.get('shutdown'):
return

View File

@ -36,10 +36,10 @@ def cooldown_peer(comm_inst):
tempConnectTimes = dict(comm_inst.connectTimes)
# Remove peers from cooldown that have been there long enough
tempCooldown = dict(comm_inst.cooldownPeer)
tempCooldown = dict(kv.get('cooldownPeer'))
for peer in tempCooldown:
if (epoch.get_epoch() - tempCooldown[peer]) >= cooldown_time:
del comm_inst.cooldownPeer[peer]
del kv.get('cooldownPeer')[peer]
# Cool down a peer, if we have max connections alive for long enough
if online_peer_amount >= config.get('peers.max_connect', 10, save=True):
@ -56,6 +56,6 @@ def cooldown_peer(comm_inst):
break
else:
onlinepeers.remove_online_peer(comm_inst, to_cool)
comm_inst.cooldownPeer[to_cool] = epoch.get_epoch()
kv.get('cooldownPeer')[to_cool] = epoch.get_epoch()
comm_inst.decrementThreadCount('cooldown_peer')