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: bootnodes healthcheck CI (& generator/aggregator?) #141

Open
2 tasks
meowsbits opened this issue Feb 8, 2020 · 2 comments · May be fixed by #149
Open
2 tasks

feat: bootnodes healthcheck CI (& generator/aggregator?) #141

meowsbits opened this issue Feb 8, 2020 · 2 comments · May be fixed by #149

Comments

@meowsbits
Copy link
Member

Bootnodes are nodes that "cold" clients (protocol providers) use to establish a connection with the peer-to-peer network. Inadequate bootnodes for a network can cause either slow or impossible network connections.

Bootnode lists are currently hardcoded for each supported network. But liveness (useability) checks are never systematically undertaken, which can cause p2p issues if the lists get invalidated. The current system for bootnode addition is essentially that a node or nodes are proposed, a developer reviews the proposed enodes by pinging them manually (over an arbitrary and variable time course), and then approves the addition. Same, but backwards, for removal.

This feature prop wants to establish a system for

  • bootnode list health checks to be undertaken systematically via a CI environment, where given parameters, inadequate bootnode lists can be flagged for review, purging of dead nodes, and addition of new ones
  • ideally, an environment which could not only provide a health check, but also provide information that could be used in the generation of healthy lists

This would remove tedious developer burden, reduce connection failures, and, in essence, move toward systematizing variables for a critical first process for all devp2p networks.

@soc1c
Copy link

soc1c commented Feb 9, 2020

what about bootnodes that are temporarily offline?

@meowsbits
Copy link
Member Author

meowsbits commented Feb 10, 2020

Bootnodes should not normally be temporarily offline ("You had 1 job..." 😹) . And if and when they are, it should be for short enough periods that the chances of coincidence with reachability tests should be very small (assuming we don't want tests that intentionally run for v long times).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants