Send Announcement instead of ping in case blockchain info was not refreshed within a certain threshold. This helps to keep the global blockchain cache active, with no additional overhead. Close #78

This commit is contained in:
Kleissner
2021-12-12 01:06:55 +01:00
parent ea31af1f6e
commit 0cd4519688
5 changed files with 56 additions and 18 deletions

View File

@@ -180,6 +180,7 @@ func (nets *Networks) packetWorker() {
isBlockchainUpdate := peer.BlockchainHeight != announce.BlockchainHeight || peer.BlockchainVersion != announce.BlockchainVersion
peer.BlockchainHeight = announce.BlockchainHeight
peer.BlockchainVersion = announce.BlockchainVersion
peer.blockchainLastRefresh = time.Now()
Filters.MessageIn(peer, raw, announce)
@@ -215,6 +216,7 @@ func (nets *Networks) packetWorker() {
isBlockchainUpdate := peer.BlockchainHeight != response.BlockchainHeight || peer.BlockchainVersion != response.BlockchainVersion
peer.BlockchainHeight = response.BlockchainHeight
peer.BlockchainVersion = response.BlockchainVersion
peer.blockchainLastRefresh = time.Now()
Filters.MessageIn(peer, raw, response)
@@ -235,6 +237,7 @@ func (nets *Networks) packetWorker() {
isBlockchainUpdate := peer.BlockchainHeight != announce.BlockchainHeight || peer.BlockchainVersion != announce.BlockchainVersion
peer.BlockchainHeight = announce.BlockchainHeight
peer.BlockchainVersion = announce.BlockchainVersion
peer.blockchainLastRefresh = time.Now()
Filters.MessageIn(peer, raw, announce)