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

Auto-reconnect seed node when all seed nodes crash #1198

Closed
cloud8little opened this issue Oct 29, 2019 · 2 comments
Closed

Auto-reconnect seed node when all seed nodes crash #1198

cloud8little opened this issue Oct 29, 2019 · 2 comments
Labels
Discussion Initial issue state - proposed but not yet accepted

Comments

@cloud8little
Copy link
Contributor

Summary
with NEO2.x network, all consensus nodes communicate with each other with seed nodes, in the worst case, all seed nodes crash, this would happen in a very low possibility, then all seed nodes loss connection with consensus nodes, when they are brought back online again, they can not reconnect to the consensus nodes, because consensus nodes can't build a new connection with the seed nodes.
To rebuild the connection, it will requires all consensus nodes to restart.

Reproduction steps:

  1. prepare 4 consensus nodes.
  2. prepare 2 seed nodes.
  3. start seed nodes
  4. start 4 consensus nodes.
  5. start two normal neo-cli clients.
  6. shut down all seed nodes.
  7. start seed nodes again.

屏幕快照 2019-10-29 下午7 04 12

Do you have any solution you want to propose?
We should add a policy to auto reconnect to the seed nodes when they are all down and back again, and then there is no need to restart all consensus nodes.

Where in the software does this update applies to?

  • Network Policy
  • P2P (TCP)
@cloud8little cloud8little added the Discussion Initial issue state - proposed but not yet accepted label Oct 29, 2019
@Tommo-L
Copy link
Contributor

Tommo-L commented Oct 30, 2019

How about this solution:
A node can maintain a connected peers file. When restart again, it can try to connect seed nodes, and also the peers in the file.

Then when seed nodes restart, they can join the network.

@ShawnYun
Copy link
Contributor

Maybe we can close it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Discussion Initial issue state - proposed but not yet accepted
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants