feat: lower default time-to-build-proposal from 500ms to 200ms#2787
Closed
feat: lower default time-to-build-proposal from 500ms to 200ms#2787
Conversation
SuperFluffy
reviewed
Feb 20, 2026
| /// for the leader to enter the view, build and broadcast the proposal, and | ||
| /// have the other peers receive the proposal. | ||
| #[arg(long = "consensus.time-to-build-proposal", default_value = "500ms")] | ||
| #[arg(long = "consensus.time-to-build-proposal", default_value = "200ms")] |
Contributor
There was a problem hiding this comment.
What worries me is the effect that this might have on subblocks (see below).
We only give it 100ms. While 100ms < 200ms this probably means that subblocks would only land under optimal network conditions and with virtually no clock drift.
fbf0e8d to
47f1aa3
Compare
2a6806d to
963f963
Compare
Amp-Thread-ID: https://ampcode.com/threads/T-019c7729-c7d3-73ad-9748-d6f8cb27335a Co-authored-by: Amp <amp@ampcode.com>
963f963 to
e15aec7
Compare
github-merge-queue bot
pushed a commit
that referenced
this pull request
Feb 24, 2026
Lowers `--consensus.wait-for-proposal` from 2s to 1200ms. Right now, the default values for `--consensus.wait-for-proposal` and `--consensus.wait-for-notarizations` are the same, which makes no sense (timers for both start at the same time and notarizations always come after proposals). Related #2787
SuperFluffy
approved these changes
Feb 24, 2026
Contributor
SuperFluffy
left a comment
There was a problem hiding this comment.
Approving but would like @klkvr to leave a comment on how they expect this to interact with subblocks.
Member
|
Superseded by #2939 |
github-merge-queue bot
pushed a commit
that referenced
this pull request
Mar 9, 2026
Supersedes #2787 ## Problem Payload building is currently limited by a 500ms deadline. Builder can only enforce the time it spends on transaction execution, but there's always an additional overhead of state root calculation. ## Solution Lower the time we give payload builder to execute transactions to 200ms, but wait until 450ms before returning the built block back to consensus to ensure the ~ stable block time at 500ms. <img width="5120" height="4567" alt="image" src="https://github.com/user-attachments/assets/dd8233ec-4b78-4042-9920-7f4073f80888" /> ## Changes * Interrupt payload building at T+200ms (this gives us a budget of additional 250ms for state root calc) https://github.com/tempoxyz/tempo/blob/f7a56d6c17da92f3870a83d1fc6b8c2f8a8b05db/crates/commonware-node/src/consensus/application/actor.rs#L583-L585 * Wait until T+450ms to return the block to consensus (this + some propagation overhead determines the block time) https://github.com/tempoxyz/tempo/blob/f7a56d6c17da92f3870a83d1fc6b8c2f8a8b05db/crates/commonware-node/src/consensus/application/actor.rs#L582 https://github.com/tempoxyz/tempo/blob/f7a56d6c17da92f3870a83d1fc6b8c2f8a8b05db/crates/commonware-node/src/consensus/application/actor.rs#L600 --------- Co-authored-by: Richard Janis Goldschmidt <github@aberrat.io> Co-authored-by: Derek Cofausper <256792747+decofe@users.noreply.github.com>
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Lower the default
--consensus.time-to-build-proposalfrom 500ms to 200ms.Steady <1s block time, can fit 9-10k transactions into a block.
Prompted by: alexey