Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(gossip-support) update gossip topology #4510

Open
1 task
EclesioMeloJunior opened this issue Jan 27, 2025 · 0 comments
Open
1 task

feat(gossip-support) update gossip topology #4510

EclesioMeloJunior opened this issue Jan 27, 2025 · 0 comments
Labels
C-complex Complex changes across multiple modules. Possibly will require additional research. S-subsystems-common

Comments

@EclesioMeloJunior
Copy link
Member

EclesioMeloJunior commented Jan 27, 2025

Description

When handling active leaves, Gossip Support checks if the session changes, in such case we should update the topology given that a new session means new authorities. To create the new gossip topology we need:

  • a list of authorities (expressed as Vec<AuthorityDiscoveryId>), that is retrieved from the session info
  • the randomness, retrieved from the current BABE epoch
  • use fisher_yates shuffle function to shuffle these list of authorities
  • Send the message NetworkBridgeRxMessage::NewGossipTopology to the overseer with the shuffled authorities

Links

https://github.com/paritytech/polkadot-sdk/blob/b30aa3193048d6bbdf21408bd0cc4503010fe3f8/polkadot/node/network/gossip-support/src/lib.rs#L674

Acceptance Criteria

  • 60% of code tested
@EclesioMeloJunior EclesioMeloJunior added C-complex Complex changes across multiple modules. Possibly will require additional research. S-subsystems-common labels Jan 27, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-complex Complex changes across multiple modules. Possibly will require additional research. S-subsystems-common
Projects
None yet
Development

No branches or pull requests

1 participant