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

Theoretical Issues with Clique #7437

Closed
ckartik opened this issue Aug 9, 2024 · 2 comments
Closed

Theoretical Issues with Clique #7437

ckartik opened this issue Aug 9, 2024 · 2 comments

Comments

@ckartik
Copy link

ckartik commented Aug 9, 2024

Background

It seems like clique was crafted as a concensus network for Rinkeby testenet. However, it came across a large swath of issues around halting and deadlock states. For geth it was the longest standing issue in the project, and was closed without resolution due to deprecation of clique support by the geth team. See here

Question: Were you able to resolve the issues with clique that cause deadlocked states?

To give some context, here's a visual:
image

In a situation of 3 signer nodes, due to network instability, you can arrive in a situation where each party has a split view of the world, such that all sealers/signers are too recent in their view of the chain to sign the next block, but the difficulty in each of their views is equivalent, resulting in no reorgs. Does Besu ever encounter similar issues of halting? If not, how did you resolve these theoretical shortcomings of Clique?

For more examples, here's a simulation script that can demonstrate such stuck states: goerli/diff-simulation

@shemnon
Copy link
Contributor

shemnon commented Aug 10, 2024

See https://eips.ethereum.org/EIPS/eip-3436, implemented in #2084

@shemnon shemnon closed this as completed Aug 11, 2024
@ckartik
Copy link
Author

ckartik commented Aug 11, 2024

Thank you! @shemnon

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

No branches or pull requests

2 participants