Skip to content

consensus: ensure proposal receipt waits for maxWaitingTime#7307

Merged
williambanfield merged 6 commits intowb/proposer-based-timestampsfrom
wb/validator-waits-for-proposal
Nov 30, 2021
Merged

consensus: ensure proposal receipt waits for maxWaitingTime#7307
williambanfield merged 6 commits intowb/proposer-based-timestampsfrom
wb/validator-waits-for-proposal

Conversation

@williambanfield
Copy link
Contributor

@williambanfield williambanfield commented Nov 22, 2021

This pull request implements the Propose Step Timeout changes described in ADR 71.

This code change implements this by taking the max of the recently added proposalStepWaitingTime(...) method and the configured timeout-propose value and changes the scheduled RoundStepPropose timeout to occur after this maximum waiting time.

This change also adds a small test harness for the ongoing proposer-based timestamp work. The test harness, aims to make it easier to write tests for the pbts timing logic. The first test cases that are added ensure that the consensus algorithm correctly prevotes nil when no block is delivered by the waitingTime and ensure that the consensus mechanism prevotes the block if it is delivered before waitingTime has elapsed but after timeout-propose has elapsed.

related to: #6942

Loading
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

Successfully merging this pull request may close these issues.

3 participants