-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Get rid of Peerset
compatibility layer
#14337
Conversation
This substrate branch is a rebase of paritytech/substrate#14337 over master. Signed-off-by: alindima <alin@parity.io>
@dmitry-markin I integrated this in polkadot for testing purposes. Here's the branch I used, since I needed to rebase it: https://github.com/paritytech/substrate/tree/alindima-get-rid-of-peerset-stub I tested it in Versi and ran into a weird issue, where the node would print out many errors like: and then it looks like the node restarted. Here are the full logs: https://grafana.parity-mgmt.parity.io/goto/2NEzJ7j4g?orgId=1. Are these errors expected under normal usage? |
Thanks for testing this! There are currently issues with the slot allocation and connection management mechanism that need to be addressed first, so this PR is blocked. I'll look into the errors reported once I get back to it. |
@alindima Is it possible that the node was externally restarted? These errors might happen if the node components were already shutting down, but I found no indication in the logs for why would the node shut down. |
This could be it, I started noticing random restarts in other versi nodes as well. I'll ask around to make sure that others noticed this as well |
@alindima Could you try burning in again? Here is the burn-in PR for polkadot debug docker image: paritytech/polkadot#7533. |
I've created an issue paritytech/polkadot-sdk#497 to fix this later. |
Versi burn-in showed no impact on block height, peer count, CPU usage. So, IMO, this PR is ready for merging. CC @altonen |
@altonen can we merge this? |
yes we can merge it |
bot merge |
Error: Github API says paritytech/polkadot#7355 is not mergeable |
bot merge |
Error: Github API says paritytech/cumulus#2739 is not mergeable |
bot merge |
Eliminate
Peerset
completely, giving handles toPeerStore
&ProtocolController
to the components that require them instead. Resolves #14170.This PR also fixes a bug in
Protocol
with peer counting: now it made clear thatself.peers
contains only peers on the default (sync) protocol, and the entries are not removed when peers are disconnected on non-default protocols.Added
B1-note_worthy
becausePeerset
is completely replaced byPeerStore
&ProtocolController
.polkadot companion: paritytech/polkadot#7355
cumulus companion: paritytech/cumulus#2739