Closed hansieodendaal closed 3 weeks ago
3 files 129 suites 38m 37s ⏱️ 1 344 tests 1 344 ✅ 0 💤 0 ❌ 4 030 runs 4 030 ✅ 0 💤 0 ❌
Results for commit d95e35c1.
:recycle: This comment has been updated with latest results.
36 tests +36 36 ✅ +36 14m 17s ⏱️ + 14m 17s 11 suites +11 0 💤 ± 0 2 files + 2 0 ❌ ± 0
Results for commit d95e35c1. ± Comparison against base commit 47b48770.
:recycle: This comment has been updated with latest results.
Description
Added check connections to the p2p services (
MonitorPeersService
). All active connections are pinged on a set (slowish) interval (10 times slower than the auto ping metadata interval). The nodes that do not respond timeously on three consecutive iterations with a corresponding pong are disconnected. This will help keep the list of active connections (lazily) up to date.Edit: Fixed an error in the liveness service where misbehaving ping peers were never disconnected. The liveness service and monitor peers service work hand in hand. Liveness selects 8 randomly connected peers to obtain metadata from and will disconnect any of those that misbehave after 1 minute (2x ping intervals). The monitor peers service assesses all connected peers at a much slower pace and disconnects non-responsive peers after 15 minutes (10 x 3 ping intervals).
Motivation and Context
See #6516
How Has This Been Tested?
Performed system-level testing. From the log below we can see that 5 of 41 active peer connections did not respond with a ping. Peer
e19e1454a1e0519866297960ad
was disconnected because it did not respond three times in a row,What process can a PR reviewer use to test or verify this change?
Breaking Changes