diff --git a/overlay/overlay-peers.cpp b/overlay/overlay-peers.cpp index 28dac8f05..8c4f5d228 100644 --- a/overlay/overlay-peers.cpp +++ b/overlay/overlay-peers.cpp @@ -100,7 +100,7 @@ void OverlayImpl::add_peer_in(OverlayNode node) { return; } auto t = td::Clocks::system(); - if (node.version() + 600 < t || node.version() > t + 60) { + if (node.version() + Overlays::overlay_peer_ttl() < t || node.version() > t + 60) { VLOG(OVERLAY_INFO) << this << ": ignoring node of too old version " << node.version(); return; } @@ -231,7 +231,7 @@ void OverlayImpl::update_neighbours(td::uint32 nodes_to_change) { continue; } - if (X->get_version() <= td::Clocks::system() - 600) { + if (X->get_version() <= td::Clocks::system() - Overlays::overlay_peer_ttl()) { if (X->is_neighbour()) { bool found = false; for (auto &n : neighbours_) { diff --git a/overlay/overlays.h b/overlay/overlays.h index 1141efee2..cf153c3a5 100644 --- a/overlay/overlays.h +++ b/overlay/overlays.h @@ -187,6 +187,10 @@ class Overlays : public td::actor::Actor { return 1; } + static constexpr td::uint32 overlay_peer_ttl() { + return 600; + } + static td::actor::ActorOwn create(std::string db_root, td::actor::ActorId keyring, td::actor::ActorId adnl, td::actor::ActorId dht); diff --git a/validator/full-node.cpp b/validator/full-node.cpp index 669e2fd97..cfe493667 100644 --- a/validator/full-node.cpp +++ b/validator/full-node.cpp @@ -27,7 +27,7 @@ namespace validator { namespace fullnode { -static const double INACTIVE_SHARD_TTL = 120.0; +static const double INACTIVE_SHARD_TTL = (double)overlay::Overlays::overlay_peer_ttl() + 60.0; void FullNodeImpl::add_permanent_key(PublicKeyHash key, td::Promise promise) { if (local_keys_.count(key)) {