Skip to content
This repository has been archived by the owner on Nov 15, 2023. It is now read-only.

Disconnect from punished validators on disputes #3751

Closed
eskimor opened this issue Aug 31, 2021 · 4 comments
Closed

Disconnect from punished validators on disputes #3751

eskimor opened this issue Aug 31, 2021 · 4 comments

Comments

@eskimor
Copy link
Member

eskimor commented Aug 31, 2021

In case of a finished dispute, we no longer want to communicate with validators which have been slashed significantly. We should make sure to remove those validators from the reserved set and also ban any connection attempts via free incoming slots.

For request/response we should probably stop using IfDisconnected::TryConnect, so disconnecting validators from peersets is enough to stop any communication with them.

@rphmeier
Copy link
Contributor

cc @andresilva

There is a notion of 'disabled' validators in the FRAME staking / session pallets. We should extend the implmentation to cover the remainder of the current era and communicate 'disabled' validators to the network bridge or other networking subsystems so they can ignore messages.

Ideally, there'd be a round-robin mechanism so if more than f validators are disabled that we start allowing communication from the remaining 2f+e which is necessary to maintain consensus. Otherwise, we risk a liveness error.

@rphmeier
Copy link
Contributor

rphmeier commented Sep 8, 2021

We should also ignore backing statements from disabled validators on-chain.

@rphmeier
Copy link
Contributor

rphmeier commented Sep 8, 2021

And potentially also ignore dispute votes of unconfirmed (<1/3 participation) disputes by disabled validators

@eskimor
Copy link
Member Author

eskimor commented Jan 10, 2023

Superseded by paritytech/polkadot-sdk#784.

@eskimor eskimor closed this as completed Jan 10, 2023
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants