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

Do not reject future blocks on speculative nodes #1034

Merged
merged 3 commits into from
Nov 15, 2024
Merged

Conversation

heifner
Copy link
Member

@heifner heifner commented Nov 15, 2024

On speculative, non-block-producer, nodes do not reject blocks from the future. This allows a speculative node to have a clock skew without it interfering with maintaining synchronization. Before, this change a clock skew of 7 seconds would cause a speculative node to reject a block.

Note block producers still need to keep their clocks synchronized so they produce on time. Block producers will continue to reject blocks with timestamps >= 7 seconds in the future.

producer_plugin now calculates pending block time for speculative nodes to always be head.block_time().next() ignoring now.

Resolves #239

@heifner heifner requested review from linh2931 and greg7mdp November 15, 2024 15:06
@heifner heifner added the OCI Work exclusive to OCI team label Nov 15, 2024
@heifner heifner merged commit 9afe8c3 into main Nov 15, 2024
36 checks passed
@heifner heifner deleted the GH-239-future-block branch November 15, 2024 20:14
@ericpassmore
Copy link
Contributor

Note:start
category: System Stability
component: Internal
summary: Enhance robustness of speculative block mode by allowing for future blocks. Future blocks commonly from clock-skew.
Note:end

@bhazzard bhazzard added this to the Spring v1.1.0-rc1 milestone Jan 28, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCI Work exclusive to OCI team
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Block from future is ignored
5 participants