-
Notifications
You must be signed in to change notification settings - Fork 58
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
consensus: accept Dusk-signed Emergency Block #3120
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
fed-franz
force-pushed
the
emergency_block_simple
branch
from
December 5, 2024 10:28
35b2818
to
b484c40
Compare
fed-franz
force-pushed
the
emergency_block_simple
branch
3 times, most recently
from
December 10, 2024 11:29
fa474f3
to
704194e
Compare
herr-seppia
reviewed
Dec 11, 2024
herr-seppia
reviewed
Dec 11, 2024
herr-seppia
reviewed
Dec 11, 2024
herr-seppia
reviewed
Dec 11, 2024
herr-seppia
reviewed
Dec 11, 2024
fed-franz
force-pushed
the
emergency_block_simple
branch
3 times, most recently
from
December 16, 2024 12:37
4df55b6
to
54b2169
Compare
fed-franz
added
module:consensus
Issues related to consensus module
module:node
Issues related to node module
labels
Dec 16, 2024
fed-franz
force-pushed
the
emergency_block_simple
branch
from
December 19, 2024 15:21
54b2169
to
7fb17cf
Compare
This PR has been successfully tested:
|
herr-seppia
previously approved these changes
Dec 20, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
fed-franz
force-pushed
the
emergency_block_simple
branch
from
December 20, 2024 10:23
7fb17cf
to
092cdd9
Compare
fed-franz
force-pushed
the
emergency_block_simple
branch
from
December 20, 2024 14:31
092cdd9
to
90f3bdf
Compare
fed-franz
force-pushed
the
emergency_block_simple
branch
from
December 20, 2024 14:35
90f3bdf
to
13e4f9e
Compare
fed-franz
force-pushed
the
emergency_block_simple
branch
from
December 20, 2024 16:53
69ff441
to
dbbad71
Compare
herr-seppia
approved these changes
Dec 20, 2024
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Partially implements #1234
New features:
It enables the acceptance of an Emergency Block (EB) with the following properties:
-
iteration = u8::MAX
-
timestamp > prev_block.timestamp + MIN_EMERGENCY_BLOCK_TIME
, whereMIN_EMERGENCY_BLOCK_TIME
is ofMAX_STEP_TIMEOUT x 3
(MAX_ITER_TIMEOUT
) times CONSENSUS_MAX_ITER + 1. This value aims at ensure enough time is given to provisioners to produce a block before an Emergency Block can be accepted.- signed by Dusk (
DUSK_CONSENSUS_KEY
)No Attestation is needed to accept an EB.
For what concerns finality, the Emergency Block is consider as being produced at iteration CONSENSUS_MAX_ITER (i.e., the one after the last consensus iteration)
The EB is repropagated upon acceptance (unlike other Block messages)
Refactors:
attach_att_if_needed
intois_block_attested
andattach_blk_att
execute_checks
: changedisable_att_check
intocheck_attestation
generate_block
: moveseed
computation and "block generation elapsed-time log" fromgenerate_candidate_message
togenerate_block
; takevoters
fromru
CONSENSUS_MAX_ITER
, instead of tieing it toMESSAGE_MAX_ITER