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

Remove Nightshade Finality Gadget #2342

Closed
SkidanovAlex opened this issue Mar 30, 2020 · 3 comments
Closed

Remove Nightshade Finality Gadget #2342

SkidanovAlex opened this issue Mar 30, 2020 · 3 comments
Assignees
Labels
A-chain Area: Chain, client & related

Comments

@SkidanovAlex
Copy link
Collaborator

Context: there's a fundamental issue between Doomslug and NFG that we discovered recently. Specifically, it could be that a block at height h is produced, and some participants have already sent endorsements for it, and then a block at height less than h is produced but with a higher NFG score, and becomes the head. The chain stalls because no block producer can send a skip message that will bypass h.

The solution to it is to make Doomslug aware of the score, and change the conditions for endorsements and skips to accommodate it. However, since both safety and liveness proof of Doomslug rely on head height never getting lower, enduring safety and liveness remain after introducing this change is not trivial.

I instead suggest to completely remove NFG, and change Doomslug so that it
a) becomes a BFT consensus
b) loses its ability to provide some weaker sense of finality at 50%.

The full argument is here: https://docs.google.com/document/d/10uBwpEN3ADDkL9iY52K0zM1edgxmoO8hJBqxmDafFN0/

@SkidanovAlex
Copy link
Collaborator Author

Moved to near/NEPs#54

@bowenwang1996
Copy link
Collaborator

Reopen to track progress.

@bowenwang1996 bowenwang1996 added the A-chain Area: Chain, client & related label Mar 31, 2020
@bowenwang1996 bowenwang1996 reopened this Mar 31, 2020
@ilblackdragon ilblackdragon changed the title [discussion] Remove Nightshade Finality Gadget Remove Nightshade Finality Gadget Mar 31, 2020
@ilblackdragon ilblackdragon modified the milestone: MainNet Phase 1 Apr 10, 2020
@bowenwang1996
Copy link
Collaborator

Fixed in #2531

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-chain Area: Chain, client & related
Projects
None yet
Development

No branches or pull requests

3 participants